タグ

ブックマーク / tech.uzabase.com (11)

  • エンジニア従業員エンゲージメント向上への道 - Uzabase for Engineers

    はじめに こんにちは!NewsPicksのVP Of Mobile Engineeringの石井です。 約1年前にPharmaXさん主催の「事例で学ぶ!エンジニア組織文化を作る採用・評価の仕組み」というイベントでPharmaX 取締役・エンジニアリング責任者の上野さん、カオナビCTOの松下さんと私の3人で事例発表やパネルディスカッションをしました。(そのときの記事は、PharmaXさんのこちらの記事にあります) このときに私が話したエンゲージメントに関することは、「採用とオンボーディングを頑張った結果、エンゲージメントもよくなりました」的な話もしました。 ただ、それ以外にも多くのことをしています。今回はそこを深掘りしたいと思います。 以前の状態との比較 当時、発表した時のモバイルチームのエンゲージメントは次の通りでした。(NewsPicksでは半期に一度、サーベイをしています) で、202

    エンジニア従業員エンゲージメント向上への道 - Uzabase for Engineers
  • ソフトウェアエンジニアのライブラリアップデートの向き合い方 - Uzabase for Engineers

    こんにちは。ソーシャル経済メディア「NewsPicksNewsPicks Stage.事業のエンジニアをしています、林です。 業務では Next.js / Rust / Go などを用いて、経済・ビジネス情報に特化した動画配信サービスであるNewsPicks Stage.の開発・運用を行っています。 はじめに 突然ですが、皆さんは自身のソフトウェアのライブラリアップデートは行えていますか? 皆さんはどのようにライブラリアップデートを行なっていますか? 新機能を試したくて? npm iで失敗してから頑張る? Renovate / dependabot が自動Mergeされる環境? もしくは対応担当が特定の日にまとめてMergeする運用? しかし多くの開発者は、アップデートに対して「うまくいっている」と言えないのではないでしょうか?自身も様々なプロダクトを開発してきた経験上、日々の中ではどう

    ソフトウェアエンジニアのライブラリアップデートの向き合い方 - Uzabase for Engineers
  • エンジニアが今日から始める英語学習の継続方法 - Uzabase for Engineers

    1. はじめに こんにちは。ソーシャル経済メディア「NewsPicks」でエンジニアをしております小林です! 皆さんは英語学習に取り組んでいらっしゃいますか?エンジニアとして技術ドキュメントや国際カンファレンスの動画等で英語に触れる機会があると思います。また、技術的なスキルはあるが、英語を話すことが苦手な場合、将来的に市場でどう評価されているかの動向も気になるところです。 最新の2023年度の報告によると、世界的にITエンジニアの給与が上昇している一方、日では前年比USドルベースで5.9%減少、現地通貨(円)ベースでもわずか0.4%増加に留まっています。残念ながら、世界と比較した時に日の給与の優位性がなかった一年となりました。今後もこの差が開く一方であれば、個人や企業が国際市場で競争力を保つために、英語能力の向上も必要になる機会が高まっていくことを示唆しています。 しかし、「英語力を伸

    エンジニアが今日から始める英語学習の継続方法 - Uzabase for Engineers
  • 2024年のPythonプログラミング - Uzabase for Engineers

    ソーシャル経済メディア「NewsPicks」で推薦や検索などのアルゴリズム開発をしている北内です。Pythonは頻繁に新機能や便利なライブラリが登場し、ベストプラクティスの変化が激しい言語です。そこで、2024年2月時点で利用頻度の高そうな新機能、ライブラリ、ツールなどを紹介したいと思います。 この記事では広く浅く紹介することに重点を置き、各トピックについては概要のみを紹介します。詳細な使用方法に関しては各公式サイト等での確認をおすすめします。なお、記事ではOSとしてmacOSを前提としています。 環境構築 Pythonの環境構築はpyenvとPoetryの組み合わせがもっとも標準的でしょう。 以下の手順でpyenvとPythonをインストールできます。 brew install pyenv # Bashの場合 echo 'eval "$(pyenv init -)"' >> ~/.ba

    2024年のPythonプログラミング - Uzabase for Engineers
    tasukuchan
    tasukuchan 2024/02/06
    もうrye/ruffに移行してしまった
  • プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers

    こんにちは、ソーシャル経済メディア「NewsPicks」のむとうです。 先日から『Ghost of Tsushima』の開発者が書いた『ルールズ・オブ・プログラミング』というをちょっとずつ読み進めていて、プログラミング熱が高まっています。このは大きな指針を示すだけで具体の話をするものではないのですが、読み物として面白いので私も似たようなことをやってみたくなりました。 何年もこういう仕事をしているとバグが入るパターンというのが見えてきます。そしてだいたいどこに行っても何の仕事でも似たようなことをすることになるのですが、今回の話もその一つです。 構造化テキストを文字列結合で作らない、置換でいじらないというのはこれだけみると何のことか分かりづらいかも知れませんがSaaS Product Team セキュアコーディングの啓蒙 第2回 (SQL インジェクション編)の内容とある面では同じ話です。

    プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers
  • 3 年半でまるで別企業?大幅に改善した NewsPicks の DX Criteria を大公開! - Uzabase for Engineers

    こんにちは。NewsPicks CPO/CTO の文字です。先週、仕事が少し落ち着いたタイミングで久しぶりに DX Criteria を測定したので、今回はその結果を大公開しようと思います。 はじめに:NewsPicks は開発者体験に注力しています NewsPicks は、まもなくサービス開始から 10 周年を迎える息の長いサービスです。およそ 10 年前に Uzabase の新規事業として立ち上がり、以降は比較的少人数のエンジニア体制で長らく開発が続けられていました。4 年ほど前からビジネスの多角化に伴いエンジニアを大幅に増員していますが、高成長の裏でシステム面では様々な箇所が老朽化しており、エンジニアを増員してもスケールできない状態に陥っていました(きっと多くの方が想像できる状況だと思います)。 そこで 2020 年に私と高山(現 VP of Data Engineering)が執行

    3 年半でまるで別企業?大幅に改善した NewsPicks の DX Criteria を大公開! - Uzabase for Engineers
  • MySQLのutf8mb4と戦った話 - Uzabase for Engineers

    皆様こんにちは、NewsPicksエンジニアの米澤です。 先日 2023/03/30は、こちらでアナウンスしていた通り、サービスの停止を伴うシステムメンテナンスを実施させて頂きました。 NewsPicksをご利用頂いている皆様には、ご迷惑おかけいたしました。 今回はこのメンテナンスの中で行われたDBテーブルのmigrationについてお話ししたいと思います。 ことの始まり やったこと 方針決め utf8mb4に対応していないテーブルを調べる migrationを作成する 影響範囲を調べる 開発環境でリハーサルを行う メンテナンスの日 最後に ことの始まり NewsPicksではバグの検知にBugSnagを利用しています。 ある時、BugSnagにこんなエラーが通知されてきました。 org.springframework.orm.hibernate4.HibernateJdbcExcepti

    MySQLのutf8mb4と戦った話 - Uzabase for Engineers
  • TypeScriptではじめるChatGPT API:入門から一歩進んだテクニックまで - Uzabase for Engineers

    NewsPicks エンジニアの中村です。普段はデータ基盤や機械学習システムの開発、運用をやっています。 さて皆さん、すでにChatGPTは使っていらっしゃるでしょうか。エンジニア、非エンジニアを問わず世の中を席巻している感のある ChatGPT ですが、今月初めにいよいよ API も公開されて、アプリケーションやサービスに組み込みたいと考えている方も多いのではないでしょうか1。 というわけで、弊社でもこの新しい技術をより多くのエンジニアに使いこなせるようになってもらいたいと考え、ChatGPT API に関する社内勉強会を先日開催しました。記事ではこの勉強会の内容を再構成してお届けします。 とりあえず使うだけなら簡単な ChatGPT ですが、記事では、長文を扱ったり、ChatGPT と外部のシステムを連携させたりするテクニックなど、知っている人はすでに知っているが、まだそれほど広く

    TypeScriptではじめるChatGPT API:入門から一歩進んだテクニックまで - Uzabase for Engineers
  • AWSの開発環境の利用時間をGoogleカレンダー連動させたら開発チームが自由に使えてコスト70%削減!! - Uzabase for Engineers

    こんにちはNewsPicks SREチームの美濃部です。 NewsPicksのSREのミッションの1つに「コストを適正化する」というものがあります。サービスの規模拡大に比例してインフラコストが増えないようにし、売上に対するコストの割合を低く維持していくのがミッションになります。 今回はこのミッションに対するアクションとして開発環境のインフラコストを適正化した話をします。 NewsPicksの開発環境について 開発環境のコストをどうやって適正化したか 稼働時間対応を実現する仕組みについて 実際どれくらい削減できたのか まとめ NewsPicksの開発環境について まず、NewsPicksの開発環境について概要を説明します。 インフラ基盤は番環境と同様にAWSを利用しており開発チームは現在10以上のチームが存在し、それぞれのチーム専用に用意された開発環境を利用しています。 2年程前までは開発

    AWSの開発環境の利用時間をGoogleカレンダー連動させたら開発チームが自由に使えてコスト70%削減!! - Uzabase for Engineers
  • 入社したらAWSコンソールにCloudWatchアラームが1000個以上あったので整理してる話 - Uzabase for Engineers

    こんにちはNewsPicks SREチームの飯野です。 今年の1月入社の新入社員です。そろそろお仕事に慣れてきました。今回は研修と研修の合間に地道に行っていたCloudWatchアラームの整理について話していきたいと思います。ちょっと長くなりますがお付き合いください。 よくわからないしアラームを整理しよう まずはスプレッドシートで一覧してみよう 整理の方針を決めよう さまざまな問題をかかえたアラームたち Case#1 AlarmActionが未設定のアラーム(5個) Case#2 ActionのSNSトピックが存在しないアラーム(16個) Actionを差し替えるのはちょっと手間 Case#3 ActionのSNSトピックの通知先が退職した社員のメールアドレス(97個) Case#4 監視先のDynamoDBのテーブルがすでに存在しないアラーム(97個中の85個) Case#5 監視先のE

    入社したらAWSコンソールにCloudWatchアラームが1000個以上あったので整理してる話 - Uzabase for Engineers
  • システムの複雑さはどこから来るのか – Out of the tar pitを読む - Uzabase for Engineers

    Uzabase Saas Product Divisionフェローの矢野です。 この記事は、Rich Hickey(プログラミング言語Clojure作者)のプレゼンテーションSimple Made Easyへと繋がっていく、Ben MoseleyとPeter Marksによる「Out of the tar pit」というシステム設計について論じた論文の内容について説明したもので、ユーザベースのSaas Productでのテック発表の一つとしてプレゼンしたものを、ブログとして再度まとめたものです。プレゼン自体は25分くらいでしたので、おそらくこの記事の方がプレゼンよりも詳しいと思います。 ソフトウェア危機 ソフトウェアは質的に複雑 ソフトウェアの複雑さはどこから来るのか? 複雑さは、別の複雑さを産む 複雑さを分類する 当に必要な複雑さと、そうでないものがある どうやって複雑さを扱うのか

    システムの複雑さはどこから来るのか – Out of the tar pitを読む - Uzabase for Engineers
  • 1