Slide 1

Slide 1 text

最高の開発者体験の追求が
 開発生産性を改善し続ける文化を
 生み出した話
 2023.11.7@CHIYODA Tech #2
 NewsPicks / 高山 温


Slide 2

Slide 2 text

©NewsPicks Inc. All Rights Reserved.
 01
 はじめに


Slide 3

Slide 3 text

01
 NewsPicksとユーザベースについて
 ©NewsPicks Inc. All Rights Reserved.


Slide 4

Slide 4 text

\オフィスは東京駅から徒歩3分、Apple Storeの隣で好立地です/
    テックイベントの共催などもぜひ!お待ちしております。
 (Server-Side Kotlin Meetupの様子) 50名~80名規模の
 イベントスペース有
 2022年7月からの 
 新オフィス


Slide 5

Slide 5 text

01
 自己紹介
 ©NewsPicks Inc. All Rights Reserved.
 高山 温
 NewsPicks VP of Data Engineering
 2020年にNewsPicks入社、当初はCTOとして入社したが、グループ内で 役割を変更し、現在はVP of Data Engineeringに。データ基盤を中心とし て基盤開発チーム4つのマネージャー。
 同時にユーザベースではUB Researchという企業研究所の所長も兼任。


Slide 6

Slide 6 text

01
 今日のあらすじ
 ©NewsPicks Inc. All Rights Reserved.
 2020年に1人から始まった「最高の開発者体験」へ の取り組みが、3年かけて組織文化として完全に定 着するまでのお話をします。 


Slide 7

Slide 7 text

©NewsPicks Inc. All Rights Reserved.
 02
 もし明日から知らない会社の
 基盤改善責任者になったら?


Slide 8

Slide 8 text

02
 という発表を2021年のデブサミでしました
 ©NewsPicks Inc. All Rights Reserved.


Slide 9

Slide 9 text

02
 結論:この本をベースにやれば良い
 ©NewsPicks Inc. All Rights Reserved.
 2023年の今であれば、この本に沿ってやればまず間違い無 い。
 良い内容というだけでなく、業界標準の一冊になっているた め、受け入れられやすい。 
 
 デブサミの発表:
 2020年にこの本を社内で布教して、取り上げられている指標 のうち「デプロイ頻度」だけにフォーカスして、 CI/CDを整備して 高速化していったら開発者体験が劇的に改善した。( DX Criteriaで計測)


Slide 10

Slide 10 text

©NewsPicks Inc. All Rights Reserved.
 03
 その後どうなったの?


Slide 11

Slide 11 text

03
 2年ほどでデプロイ頻度は頭打ちに
 ©NewsPicks Inc. All Rights Reserved.
 SREチームと共に進めた CI/CDの改善活動は2年ぐら い続き、その間に1人あたりのデプロイ頻度は倍々で 増加し、頭打ちに。
 
 SREの力だけで開発者体験を改善できることはだい たいやり尽くした感もあった。 
 
 そんな頃…


Slide 12

Slide 12 text

03
 トップダウンの取り組みも積極的に推進
 ©NewsPicks Inc. All Rights Reserved.
 開発者体験
 可視化ツール導入
 Findy Team+というツールを導入し、開 発者体験の可視化を民主化。 
 これにより各チームがスプリントミーティ ングなどでチェックしてくれるようになっ た。
 挑戦を後押しする
 チームビジョン
 リーダーで議論し、「ワクワクしながら不 確実性に飛び込む」などをチームビジョ ンとして発信。
 レガシーな基盤を置き換えていくことを後 押しできた。
 JavaからKotlinへの
 移行を決定
 チームビジョンを作るだけじゃなく率先し て実践していくために Kotlin化を推進。
 今では新しく書くコードのほぼ全部が Kotlinに。


Slide 13

Slide 13 text

03
 各開発チームによる自発的な取り組み①
 ©NewsPicks Inc. All Rights Reserved.
 モバイルアプリ開発チームの場合 
 アーキテクチャ刷新、リファクタリング、古いライブラリ の差し替えを主導。
 毎日の朝会で計測ツールを確認。書いたコードが mainブランチに最速でマージできるための改善活動 をひたすら実施。
 ● PRは自動でレビュワーが割り当てられ、滞って るレビューは毎朝通知 
 ● 自動テストを充実し、自信を持ってマージでき るように
 ● Feature Toggleでサーバーサイドを待たなくて もマージできる


Slide 14

Slide 14 text

03
 各開発チームによる自発的な取り組み②
 ©NewsPicks Inc. All Rights Reserved.
 フロントエンド基盤刷新チームの場合 
 jQuery+CoffeeScriptからNext.js+GraphQLに刷 新。
 色んなチームが新フロントエンド基盤で開発しやすい ように、全チームの生産性指標をモニタリングして改 善。開発者の背中を押すテストと仕組み。 
 ● 各コンポーネントの責務を徹底的にテスト 
 ● Unitテスト, E2Eテスト, Visual Regression Test, etc.
 ● 開発環境のエラーを調査しやすいように New Relicを整備


Slide 15

Slide 15 text

03
 DX Criteriaも大幅改善
 ©NewsPicks Inc. All Rights Reserved.


Slide 16

Slide 16 text

©NewsPicks Inc. All Rights Reserved.
 04
 まとめ


Slide 17

Slide 17 text

04
 自発的に「開発者体験」の改善が進む組織文化を作りました
 ©NewsPicks Inc. All Rights Reserved.
 SREチームによる小さな取り組みから始め、 
 「最高の開発者体験」をキーワードに、 
 トップダウンとボトムアップを合わせて 
 一貫した取り組みをたくさん行ってきました。 
 
 その結果、自発的な挑戦が生まれ、開発者体験(開 発生産性)が向上し、技術的発信も増え、採用にも良 い効果をもたらしました。