タグ

troterのブックマーク (1,220)

  • レビューの仕方

    Open8 勉強会で発表したレビューの仕方と心理的安全性の話しです。

    レビューの仕方
    troter
    troter 2024/05/25
  • エンジニア従業員エンゲージメント向上への道 - Uzabase for Engineers

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

    エンジニア従業員エンゲージメント向上への道 - Uzabase for Engineers
    troter
    troter 2024/05/09
  • SQL滅ぶべし | ドクセル

    SQL • リレーショナルデータベースシステムと会話するための言語 • 1970年 Codd が RDB モデルと同時に提案 (Alpha言語) • 1974年 Chamberlin と Boyce が改良 • 元々は SEQUEL (Structured English Query Language) だったが、商標登録されていた • 読み方は エスキューエル とそのまま読む (Glliespie 2012)

    SQL滅ぶべし | ドクセル
    troter
    troter 2024/05/07
    ORMでFROM句、WHERE句、SELECT句の順番(ActiveRecordならUser.active.pluck(:id)のような書き方)に親しんでいるので、順番がわかりにくいというのは同意できる。
  • AWS Security HubとSlackを利用して、セキュリティ状況の監視運用を効率化したお話 - Uzabase for Engineers

    はじめに 初めまして!ソーシャル経済メディア「NewsPicks」SREチーム・新卒エンジニアの樋渡です。今回は「AWS Security Hub」と「Slack」を用いて、弊社で利用しているAWSリソースの監視運用を効率化したお話です。 お話の内容 年々増加するサイバー攻撃に対抗するため、セキュリティ対策は日々重要度が増してきています。 そこで弊社で利用しているAWSのリソースに対して、各種セキュリティイベントの収集ができるAWS Security Hubを利用することで、セキュリティ状態の可視化と迅速な対応がしやすい運用を行い、セキュリティ状態の現状把握から始めることにしました。特にNIST CSFの「検知」部分の運用について整備した内容となっています。 NIST Cyber Security Frameworkについて 皆さん、「NIST Cyber Security Framewo

    AWS Security HubとSlackを利用して、セキュリティ状況の監視運用を効率化したお話 - Uzabase for Engineers
    troter
    troter 2024/05/01
  • Playwrightを使ったE2Eテストを導入した話 - Uzabase for Engineers

    はじめに こんにちは。ソーシャル経済メディア「NewsPicks」の QA/SET チームの海老澤です。 先日 弊社で E2E テスト実行するために Playwright を導入したため紹介させてください。 E2Eテストとは E2Eテスト(エンドツーエンドテスト)とは、ソフトウェア開発におけるテスト手法の一つで、アプリケーションが実際の運用環境と同様の条件下で正しく動作することを確認するためのテストです。 システムの開始点から終了点までを通じて、ユーザーの視点でアプリケーションのフローを追い、機能全体が連携して期待通りに動くかを検証します。具体的には、ユーザーが行うであろう一連の操作をシミュレートして、データがシステムを通じて適切に流れるかや、最終的なアウトプットが正しいかどうかを確認します。E2Eテストにより、部分的な単体テストや統合テストでは見逃されがちな問題を発見することができます。

    Playwrightを使ったE2Eテストを導入した話 - Uzabase for Engineers
    troter
    troter 2024/04/26
  • 体制を考えるときに意識していること - id:onk のはてなブログ

    1on1 で伝えたので外にも書いておく。 プロダクトやチーム、メンバーのフェーズ まず現状分析。 自プロダクトは PPM で言う花形、金のなる木、問題児、負け犬のいずれに当たるのか 勢い MAX でめっちゃ盛り上げるのか、地味に役割を達成するのか。自チーム全集中なのか他チームのフォローに回るのかみたいな方針が変わる 自チームは エラスティックリーダーシップ で言うサバイバルモード、学習モード、自己組織化モードのいずれに当たるのか チームを改善しなければいけないのか、プロダクトだけを見ていて良いのか。チームで改善できるのか、リーダーや外部の強い意志が必要なのか 各メンバーは、期待される役割において SL理論 で言うとどのフェーズなのか 指示的行動が必要だとマイクロマネジメントすることになり、マネージャ/メンター的な人/行動を増やす必要がある 役割を網羅しているか こういう軸で考えていることが

    体制を考えるときに意識していること - id:onk のはてなブログ
    troter
    troter 2024/04/25
  • なぜCDKを使う「べき」なのだろう? - Uzabase for Engineers

    はじめに 皆様こんにちは、ソーシャル経済メディア「NewsPicks」(Media Infrastructureチーム)エンジニアの北見です。 現在、私は弊社サービスの一部のインフラ刷新を行なっている最中で、ここ数ヶ月 AWS CDKを触っておりました。 前職では Infrastructure as Code として Terraform を使ったことがあるのですが、少なくともAWS を使うという条件においては CDKを使うべき という結論に辿り着きました。 今回はそのように考えるようになった理由について説明していこうと思います。 前提 Terraform はパブリッククラウドにおける Infrastructure as Code の走りとして様々な現場に導入実績があり、それに対するリスペクトは持つべきです。 しかしよくある「AvsB」というメリデメの構図で「どっちでもいいよ、好みだよ」と投

    なぜCDKを使う「べき」なのだろう? - Uzabase for Engineers
    troter
    troter 2024/03/29
    CDKはコンパイル時、シンセサイズ時に色々チェックが入るので安心感もある。/NewsPicksでは月一くらいで上げてます。7月にnode16のlambdaが作成できなくなるのでCDKが作るlambdaのnode18対応が大体終わったcdk-v2.95.0以上にはしたい
  • ソフトウェアエンジニアのライブラリアップデートの向き合い方 - Uzabase for Engineers

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

    ソフトウェアエンジニアのライブラリアップデートの向き合い方 - Uzabase for Engineers
    troter
    troter 2024/03/22
    書いてある通り誰かがやらなきゃ上がらないし、上げるための調査が能力の向上につながると思う。
  • New RelicのルックアップテーブルとNRQLを駆使して使われていないAPIを探し出す - Uzabase for Engineers

    ソーシャル経済メディア「NewsPicks」のSREをしている飯野です。 サービスの開発は試行錯誤の連続です。サービスの成長とともに機能はどんどん増えていきます。追加される機能はサービスに不可欠な重要な機能だけではなく、サービスの方向性や前提が変わり不要になってしまったり、思ったように価値が提供できずに使われない機能もたくさん登場します。 このような機能が登場してしまうことは仕方のないことですが、ずっとメンテナンスしていくコストは払えません。定期的にお掃除したいものです。 というわけで、使われなくなってしまった機能(APIサーバーのREST API)をNew Relicを使って探し出してみましょう。 使われていないAPIを探す ルックアップテーブルに登録するAPI一覧の作成 ルックアップテーブルを登録する NRQLでTransactionルックアップテーブルを検索する 利用頻度が低いAPI

    New RelicのルックアップテーブルとNRQLを駆使して使われていないAPIを探し出す - Uzabase for Engineers
    troter
    troter 2024/02/29
    ブログ書きました。ルックアップテーブルとNRQLを使いこなしていきましょう!
  • 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
    troter
    troter 2024/02/05
  • 毎日始業直後25分の技術キャッチアップがよくワークしている話|helloyuki

    子どもが生まれたのでそちらに時間をとられて、なかなか技術のキャッチアップが難しいことが増えた。こう書くと、隙間時間を使えばよいではないかと思われるかもしれない。実際うちの子はかなり昼も夜も寝る(寝た)し、お世話がかなり楽な方で隙間時間はある。しかし子育てしている方はわかると思うが、子が寝ている間は親も寝ないと体力が持たない。加えて、子はいつまで機嫌良くいるかわからない。いつ中断されるかそわそわしている状態で、まとまった論考を腰を据えて読む気力などない。というわけで、隙間時間を使っている気力はない。 数ヶ月前に仕事に復帰して以降、どうも最新技術の動向やトレンドを追えなくなっているのが悩みだった。ちなみに、「最新の話題を常日頃から追うべきか」という議論は時折見かけるが、私は今より高い給与得たい、かつ(たとえば組織全体を見るような)難しい仕事をしたいのであれば追い続けるべきという立場だ。というわ

    毎日始業直後25分の技術キャッチアップがよくワークしている話|helloyuki
    troter
    troter 2023/12/27
    習慣の力ってすごい。習慣化できてるのがすごい。
  • ジュニアエンジニアを脱却するための「コンテナ流儀」 - Uzabase for Engineers

    こんにちは。ソーシャル経済メディア「NewsPicks」で検索システムを開発しております崔(ちぇ)です。 この記事は、 NewsPicks Advent Calendar 2023 の23日目の記事になります。 qiita.com 昨日ははぐっさんによる「SwiftUIのKeyframeAnimatorでちょっとしたカードアニメーション 〜の手を添えて〜」でした! はじめに コンテナ流儀: 必要最低限のものだけで運用する Point1)レイヤーは少ないほどいい TIP:ベースイメージを作る Point2)不要なパッケージをインストールしない Point3)いつ再起動してもいいコンテナを作る Point4)独立したアプリケーションにする TIP:複数のプロセスを実行したい場合もある TIP:環境変数を積極的に使う Point5)フォアグラウンドで実行する 終わりに まとめ 感想 告知 はじ

    ジュニアエンジニアを脱却するための「コンテナ流儀」 - Uzabase for Engineers
    troter
    troter 2023/12/25
    流儀を外れる場合の補足があるの良い。supervisordよく使ってた。
  • EC2とcronで動いていたバッチ基盤をマネージド化した - Uzabase for Engineers

    概要 ソーシャル経済メディア「NewsPicks」SREチームの中川です。 皆さんはバッチ処理基盤はどうされていますでしょうか。 NewsPicks では少し前まではそれらをEC2、cronの組み合わせで動作させていました。 何年も前からこの仕組みだったのですがSREとしてはEC2の面倒見るのも手間ですし、それ以上にcronを変更する際のオペレーションミスが目立ったのが懸念点でした。 その為、まずはAWSマネージド化するための基盤を整備し、その後バッチアプリを載せ替えていくようにしました。 対応前の基盤構成 同じSREチームの安藤さんが CloudNative Days Tokyo 2023 で登壇されたときの資料をお借りします。 ご覧の通り、大体のサービスはマネージド化していましたがバッチ基盤だけは旧来のままEC2インスタンスを利用していました。 10年モノのサービスのインフラを漸進的

    EC2とcronで動いていたバッチ基盤をマネージド化した - Uzabase for Engineers
    troter
    troter 2023/12/21
    Step Functions で実行履歴が簡単に確認できるのも良い
  • LambdaレスポンスストリーミングとAWS-SDKを使ってSlackに進捗バーを表示させる - Qiita

    挨拶 こんにちは、ソーシャル経済メディア「NewsPicks」のSREチームの中川です。 この記事は NewsPicks アドベントカレンダー 2023 の2日目の記事です。 概要 記事の内容としては以下の通りです。 今年発表されたばかりのLambdaレスポンスストリーミングを試した。 上記機能とAWS-SDK for Javascript V3、 Lambda (Node.js) を使ってリアルタイムに情報取得できた。 その情報をSlackに投稿して進捗バーを表示させた。 システム構成は以下の通りです。 そして成果物としてはこちら。 Lambdaレスポンスストリーミングを使ってサーバ起動台数をリアルタイムでSlackに投稿(メッセージ書き換え)してます。 経緯 NewsPicks ではニュース速報としてプッシュ通知を1日に何回か打ちます。 当然その直後はアクセス数が増加しますので事前に

    LambdaレスポンスストリーミングとAWS-SDKを使ってSlackに進捗バーを表示させる - Qiita
    troter
    troter 2023/12/04
    サーバーが増えていくのがslack上で確認できるのメチャクチャ体験が良い。
  • プログラミングの原則:enumの比較はすべてバグ - Uzabase for Engineers

    こんにちは、ソーシャル経済メディア「NewsPicks」のむとうです。 この記事は NewsPicks アドベントカレンダー 2023 の3日目の記事です。 昨日は@J_Nakagawa(隼佑 中川)さんによる『LambdaレスポンスストリーミングとAWS-SDKを使ってSlackに進捗バーを表示させる』でした! 世の中には再現が難しく一見してバグがありそうに思えないコードもありますが、一方でプロダクションコードの中にはひと目見てバグが有りそうなコードもまた多いものです。いくつかの特定のパターンをとる文字列(環境名など)やenum(以下どちらもenumと表現します)に関する条件分岐もその一つです。プルリクを見てこのようなパターンがあれば、バグの疑いが強くなります。周囲を見渡すと、大抵すでにバグっているか潜在バグを含むコードが見つかります。すべてバグというのは言い過ぎにせよ、わかりやすさと変

    プログラミングの原則:enumの比較はすべてバグ - Uzabase for Engineers
    troter
    troter 2023/12/03
    ストラテジーパターンにも発展できる重要な考え方だ。Rails.envのif文書きまくった後にconfig.xに書き換えるとかたくさんやったなぁ。kotlinだとenumに簡単にメソッドを定義できるのも良いよね。(tsだと工夫が必要そう)
  • VPC Flow LogsをAthena + QuickSightで
分析してデータ転送料金の内訳を調査する 〜 実践的なコスト最適化の洞察 〜 - Uzabase for Engineers

    こんにちは。ソーシャル経済メディア NewsPicksのSREチームで仕事をしている安藤です。 NewsPicks Advent Calendar 2023 の1日目ということで、日常の業務風景から軽いコスト最適化TIPSをご紹介します。 qiita.com AWSコストを最適化したいよぉ〜 NewsPicksはおかげさまでサービス10周年を迎え、ユーザー数も事業も伸びておりますが、 事業の成長やエンジニア組織の拡大に比例してAWSコストが増え、円安でさらに日円での負担が増え、となると事業の利益率にも少なからず影響がでます。 私が所属するSREチームでは、「売上に対するAWSコストの割合は、規模が拡大するほど減っていくべき」という考えを持っており、 積極的にAWSサービスの使い方を見直して毎年コストを削っていくつもりで仕事をしています。 AWSが提唱するCloud Financial M

    VPC Flow LogsをAthena + QuickSightで
分析してデータ転送料金の内訳を調査する 〜 実践的なコスト最適化の洞察 〜 - Uzabase for Engineers
    troter
    troter 2023/12/02
    Nat Gatewayの通信量の可視化方法めっちゃ勉強になる
  • プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers

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

    プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers
    troter
    troter 2023/11/30
    何度も文字列結合でURL作ってその度にバグって痛い目見て覚えていったなー
  • コミュニケーション手段としてのモデリング

    troter
    troter 2023/11/20
  • AWS Configコスト上昇の原因を調査:QuickSight + Athenaの分析ツールを活用 - Uzabase for Engineers

    ソーシャル経済メディア「NewsPicks」でSREをしている美濃部です。 NewsPicksのSREのミッションの1つに「コストを適正化する」というものがあります。サービスの規模拡大に比例してインフラコストが増えないようにし、売上に対するコストの割合を低く維持していくのがミッションになります。 今回はAWSコスト削減の中でもConfigの料金に注目して紹介したいと思います。 コストモニタリング定例について Configのコスト分析をどうやって行なったか ConfigのレポートをQuickSightで可視化 構成 手順 QuickSightで可視化する事でわかった事 コスト増加の要因となったリソースタイプがわかったので対応する まとめ まず、SREでは週次でコストモニタリング定例を実施しているのでその内容について簡単に触れさせて頂きます。 コストモニタリング定例について 週次で主に以下のよ

    AWS Configコスト上昇の原因を調査:QuickSight + Athenaの分析ツールを活用 - Uzabase for Engineers
    troter
    troter 2023/10/26
  • 推薦システムを独学で勉強していた非情報系の博士学生が長期インターンをしてよかったことと苦戦したこと - Uzabase for Engineers

    皆さんこんにちは! 株式会社ユーザベース NewsPicks機械学習エンジニアとして長期インターンをしている森田です:) 現在はData/Algorithm チームで、NewsPicksの推薦システム・データ基盤まわりの開発に取り組んでいます。 記事は、私が2022年8月から同組織に入社して現在までの約1年間の長期インターン活動を経て、参加して良かったことと苦戦したことをまとめたものです。特に企業での長期インターンに興味がある方に向けて、記事の内容を共有できればと想定しています。 はじめに タイトルの通り、私は非情報系なのに推薦システムを独学で勉強していた博士学生です(実は記事の執筆期間中に博士学生ではなくなりました…!)。ちょうど博士課程への入学時期に偶然Kaggleをきっかけに推薦システムという分野と出会い、興味を持って論文読んで実装してブログに上げて...みたいな活動を趣味

    推薦システムを独学で勉強していた非情報系の博士学生が長期インターンをしてよかったことと苦戦したこと - Uzabase for Engineers
    troter
    troter 2023/10/08