Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Findyの開発生産性を上げるためにやったこと
Search
puku0x
October 06, 2023
Technology
1
630
Findyの開発生産性を上げるためにやったこと
開発生産性LT Night in 福岡
puku0x
October 06, 2023
Tweet
Share
More Decks by puku0x
See All by puku0x
生成AIではじめるテスト駆動開発
puku0x
0
740
実践!カスタムインストラクション&スラッシュコマンド
puku0x
2
2.4k
Nx × AI によるモノレポ活用 〜コードジェネレーター編〜
puku0x
0
1.4k
ファインディにおけるフロントエンド技術選定の歴史
puku0x
2
250
ファインディでのGitHub Actions活用事例
puku0x
9
3.6k
Findyの開発生産性向上への取り組み ~Findyフロントエンドの場合~
puku0x
0
450
Angularコーディングスタイルガイドはいいぞ
puku0x
1
400
Nx CloudでCIを爆速にした話
puku0x
0
920
Findyのフロントエンド設計刷新を通して得られた技術的負債との向き合い方
puku0x
1
1.8k
Other Decks in Technology
See All in Technology
まだ間に合う! Agentic AI on AWSの現在地をやさしく一挙おさらい
minorun365
17
2.5k
フィッシュボウルのやり方 / How to do a fishbowl
pauli
2
370
Bedrock AgentCore Memoryの新機能 (Episode) を試してみた / try Bedrock AgentCore Memory Episodic functionarity
hoshi7_n
2
1.7k
NIKKEI Tech Talk #41: セキュア・バイ・デザインからクラウド管理を考える
sekido
PRO
0
200
TED_modeki_共創ラボ_20251203.pdf
iotcomjpadmin
0
140
AIBuildersDay_track_A_iidaxs
iidaxs
4
1.1k
[Neurogica] 採用ポジション/ Recruitment Position
neurogica
1
110
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
320
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
190
202512_AIoT.pdf
iotcomjpadmin
0
140
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
4
820
アプリにAIを正しく組み込むための アーキテクチャ── 国産LLMの現実と実践
kohju
0
210
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
515
110k
It's Worth the Effort
3n
187
29k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.2k
Being A Developer After 40
akosma
91
590k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
210
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Designing Powerful Visuals for Engaging Learning
tmiket
0
190
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
0
31
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.3k
Amusing Abliteration
ianozsvald
0
69
The untapped power of vector embeddings
frankvandijk
1
1.5k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.8k
Transcript
Findyの開発生産性を 上げるためにやったこと 開発生産性LT Night in 福岡 @puku0x Noriyuki Shinpuku
@puku0x 2
@puku0x バッジ機能リニューアル! 3 https://findy-code.io/badges
@puku0x 4
@puku0x 5 Findyの開発生産性は?
@puku0x 6 直近1年間の転職サービス「 Findy」フロントエンドのリードタイムおよびプルリクエスト数
@puku0x 7 PRはだいたい10件/日 PRオープン後、即レビュー その日の内に改修完了 直近1年間の転職サービス「 Findy」フロントエンドのリードタイムおよびプルリクエスト数
@puku0x 8 最初から上手くいっている わけではなかった
@puku0x 以前の環境(〜2021) 9 • Ruby on Rails + Next.js/React 16
※当時はモノリス解体→Next.js化プロジェクトの後期 • バージョンの古いツール・ライブラリ多数 • 型(Flow)はある、テストは無い • 見通しの悪い設計 やばい
@puku0x やったこと: 技術的負債の返済 10
@puku0x 開発基盤の刷新 11 • 依存ライブラリのバージョンアップ ◦ Dependabot導入 • モダンな環境に移行 ◦
TypeScript、React v16.8+ ◦ Nx、Jest、ESLint、Prettier
@puku0x • 依存の方向を揃える(大事!) • Container/Presentational Componentベースの三層構造 設計刷新 12 Page Component
Container Component Presentational Component URLパラメータの解釈 APIとの通信 描画・フォーム制御 Custom Hook Custom Hook Custom Hook
@puku0x • 書けそうなところから着手 ◦ ロジックのユニットテスト ◦ コンポーネントのスナップショットテスト など • テストを書く→テストを書きやすい設計
の好循環 ◦ Wallaby.jsなどの可視化ツールも有用 テストの拡充 13
@puku0x やったか...!? 14
@puku0x 新たな課題 15 • CIが遅い ◦ コード量が増えればCI時間も増える • CIが遅いとどうなる? ◦
レビューが放置される ▪ ブランチ生存期間が延びる • コンフリクト多発 20分後でいいや
@puku0x やったこと: CIの高速化 16
@puku0x CIの高速化 17 • 変更検知+キャッシュ活用 毎月300時間以上を削減 平均5分でCI完了 https://nx.app/ はいいぞ その他:
ジョブ並列化、仮想マシンのアップグレード等
@puku0x 18 2022年 2021年 2023年 一人あたりの開発生産性が約3倍に ※2021年〜2023年までの転職サービス「Findy」フロントエンドの4月のデータ
@puku0x まとめ 19 • 開発生産性を上げるためにやったこと ◦ 技術的負債の返済 ◦ CIの高速化 Findy
Team+も よろしくお願いします
@puku0x ご清聴ありがとうございました @puku0x Noriyuki Shinpuku