Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
バクラク最古参プロダクトで重ねた技術投資を振り返る
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ypresto
March 17, 2026
Technology
300
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
バクラク最古参プロダクトで重ねた技術投資を振り返る
Retrospective Decision - LayerX Web Frontend Night
https://layerx.connpass.com/event/383492/
ypresto
March 17, 2026
More Decks by ypresto
See All by ypresto
TypeScriptはどのようにどこまで推論できるのか ─ とにかく as は禁止で
ypresto
3
1.2k
Why React!?? Next.jsそしてReactを改めてイチから選ぶ
ypresto
12
5.2k
ts-morph実践:型を利用するcodemodのテクニック
ypresto
1
1.3k
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
2.9k
Next.jsとNuxtが混在? iframeでなんとかする!
ypresto
3
4.6k
Cancel Next.js Page Navigation: Full Throttle
ypresto
1
4.9k
Next.js のページ遷移を全力で止める
ypresto
15
13k
TypeScriptの型とパフォーマンス (TSKaigi 2024)
ypresto
24
10k
アクセシビリティとE2Eテスト
ypresto
0
200
Other Decks in Technology
See All in Technology
契約書画像からの情報抽出に特化した視覚接地モデルを育てる話
sansantech
PRO
1
160
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
1.3k
The seven pitfalls of AI (revised version)
ufried
0
310
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
270
全人類(ほぼ)AWS Organizations の上でAWSを利用している、その世界を知る話
htan
1
130
SDDの運用にめげずに向き合った話
sansantech
PRO
1
140
DWH の限界突破! AI エージェント向け爆速リアルタイムデータ基盤 ClickHouse
jozono
1
340
今こそ知りたいAmplifyGen2
mkdev10
2
160
ブラウザとサーバーから考えるAI時代のフロントエンド監視
shogo4131
3
710
Getting Started with Google Antigravity
glaforge
0
110
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
320
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
250
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
Designing Powerful Visuals for Engaging Learning
tmiket
1
600
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Git: the NoSQL Database
bkeepers
PRO
433
67k
RailsConf 2023
tenderlove
30
1.6k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Done Done
chrislema
187
17k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
920
Transcript
バクラク最古参プロダクトで重ねた技術投資を振り返る 2026/03/17:Web Frontend Night — Retrospective Decision ypresto (@yuya_presto)
ypresto © LayerX Inc. LayerX バクラク事業部 (2024-01〜) プロダクト開発部 債権債務チーム Software
Engineer "フロントエンド" をよりよくしてます 2
© LayerX Inc. 3
フロントエンドVision © LayerX Inc. 4
「バクラク債務管理」= バクラクシリーズ最古参のプロダクト © LayerX Inc. 5
債務管理というプロダクトの課題 © LayerX Inc. 開発の結果としての重複 請求書、経費精算、カード明細、売掛... × 会計ソフトに合わせた仕訳のレイアウト × 仕訳の様々な条件分岐
= 多数の微妙に異なる実装 実装コストとエンバグの増大 型の不整合、テスト不足、不必要な手続き的操作 6
What we did © LayerX Inc. 7
UIテストの導入 © LayerX Inc. Why: FE起因のクリティカルなエンバグを減らしたい Decision: Playwrightによる UIテスト を導入し、"ハッピーパス"
を網羅する How QAチームの基盤の再利用 (Page Object等) チームへのPlaywrightのハンズオン QAメンバーが用意したテストケースの仕分けと実装 8
UIテストやってどうだったか 反省 © LayerX Inc. Outcome: シフトレフトの達成 テストの実装コスト (B.C.: Before
Claude) QA用repoと実装repoの独立による弊害 CIの独立、テストコードに対する要件の違い 根付かせるためには組織や文化まで巻き込む 9
仕訳ドメインの抽出 © LayerX Inc. Why: 重複実装によるコストを減らしたい 財務・会計ドメインのルールは本質的に堅い (仕訳というデータ構造、補完ロジック、UI) 請求書、経費精算、カード明細、売掛、あらゆるお金の出入りは 仕訳
という表現に落ちる Decision: リプレイスまで持ち越さず、データ構造とドメインロジックの整理から着手 How 仕訳に関わるデータ構造・ドメインロジック・UI部品の抽出と単体テスト Storybookの導入によるデザインのパターン網羅 数1000行あるコンポーネントの分解 10
https://speakerdeck.com/ypresto/living-with-state © LayerX Inc. 11
仕訳ドメインの抽出やってどうだったか 反省 © LayerX Inc. Outcome: 仕訳部分の拡張コストの削減、他チームでの開発コスト削減 抽象化は「いつ」やるのかはとても難しい 早すぎても遅すぎてもダメ 未来が完全に読めるなら先にできる
本質的に同一にしたいもの、同一の構造であるものは、 それでも見極めておいた方が良い 12
Agentic 式年遷宮 © LayerX Inc. Decision: Coding Agentを使って、Vue->Reactへのリプレイスを行う Why 1:
de facto、基盤から外れることによるコスト 社内コンポーネントライブラリ、テスト基盤、ライブラリ更新、といった基盤投資 レガシーコードのコピペ増幅による品質の低下 Why 2: プロダクトの理想にブレーキを掛けない 「投資されないことによるコスト」は、変更を続ける限り発生 13
Agentic 式年遷宮 How © LayerX Inc. 開発の停止をせず、Vue→Reactへ追加の変更も自動変換する Skill化して、チーム内外へ横展開 チームメンバーへ意思表示、 外堀を埋めて
PdMにお願いしてロードマップに載せていただいた 14
Agentic 式年遷宮やってどうだったか 反省 © LayerX Inc. Outcome: Coding Agentによるリプレイスの実証、Skill化による横展開 パイロットテスト時点で見積もった期間よりも延長
Coding Agent "完璧" よりも 80点が得意 デザインやタイミングといった、FEに関わることがらが苦手 品質保証の方法が難しい Agent-eraのテストとQAのあり方は、まだ議論中 不確実だからこそ、早めに巻き込む UI is dead? 「未知の未知」なこともある 15
道のりの振り返り © LayerX Inc. UIテストの導入 → リファクタリング対象の外側へのテスト追加 仕訳ドメインの抽出 → 移行コストの削減
Agentic 式年遷宮 → プロダクトの理想が技術負債でNo Goにならないように すべての技術的な意思決定は途中経過 React移行は見据えていたが、それも オプション の1つ 16
技術的な意思決定 #とは 未来に向けたソフトウェアのデザイン © LayerX Inc. 17
技術的な意思決定 #とは © LayerX Inc. ビジネスの不確実性 x 技術上の制約・トレードオフ の管理 例:今、木を切るか、斧を研ぐか
"Tidy First?" by Kent Beck 将来のオプション (開発の選択肢) を増やすならばTidyする 攻めるときは意志を持って説得を いつ、なぜ、攻めるか 18
要はバランス © LayerX Inc. 19
技術的な意思決定、課題解決はなくならない © LayerX Inc. 大きめのリファクタリングの判断などの意思決定は人間 Coding Agent-eraでもバランスの判断は人間 軸を持って判断していこう プロダクトの技術的な意思決定は、すべて繋がっている 20
すべての技術的な意思決定は途中経過。 判断基準を持ち、積み重ねよう。 © LayerX Inc. 21