Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
技術負債とソフトウェアアーキテクチャ
Search
naQamura
November 20, 2023
Technology
0
170
技術負債とソフトウェアアーキテクチャ
naQamura
November 20, 2023
Tweet
Share
More Decks by naQamura
See All by naQamura
技術負債とデータ構造
na9amura
1
1.7k
想像力の隙間を埋める
na9amura
0
110
開発組織が情報発信の打席に立てる土台を作った一年を振り返る
na9amura
0
1.8k
アンラーニングを体験しよう
na9amura
2
380
MPA+CSRでMVPを作って継続的に拡張しよう BARフロントえんどう#1
na9amura
0
110
Other Decks in Technology
See All in Technology
なぜThrottleではなくDebounceだったのか? 700並列リクエストと戦うサーバーサイド実装のすべて
yoshiori
13
4.9k
AIエージェントによるエンタープライズ向けスライド検索!
shibuiwilliam
4
620
JAWS-UG SRE支部 #14 LT
okaru
0
110
生成AI時代に若手エンジニアが最初に覚えるべき内容と、その学習法
starfish719
2
550
米軍Platform One / Black Pearlに学ぶ極限環境DevSecOps
jyoshise
2
510
AI駆動開発を実現するためのアーキテクチャと取り組み
baseballyama
13
7.2k
なぜインフラコードのモジュール化は難しいのか - アプリケーションコードとの本質的な違いから考える
mizzy
60
21k
ローカルLLM基礎知識 / local LLM basics 2025
kishida
13
4.2k
Bedrock のコスト監視設計
fohte
2
200
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
10
3.8k
膨大なデータをどうさばく? Java × MQで作るPub/Subアーキテクチャ
zenta
0
120
入社したばかりでもできる、 アクセシビリティ改善の第一歩
unachang113
2
330
Featured
See All Featured
Speed Design
sergeychernyshev
32
1.2k
4 Signs Your Business is Dying
shpigford
186
22k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Designing for humans not robots
tammielis
254
26k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Transcript
技術負債とソフトウェア アーキテクチャ 技術的負債に向き合う Online Conference ハコベル株式会社 シニアアーキテクト 中村隆宏
中村隆宏 (na9amura) 所属:ハコベル株式会社 (ex ラクスル株式 会社ハコベル事業部) シニアアーキテクト 職歴:SI 系、決済、転職サービスなど 経歴:熊本出身、文化人類学専攻
趣味:旅行、音楽、MMA 自己紹介
ハコベルのプロダクト 取引・業務の 構造的な非効率を改善 物流に関わる人たちを会社を跨いだ コミュニケーションを円滑化 AI 系の技術を活用して 配送効率と業務効率を向上
今回の対象 取引・業務の 構造的な非効率を改善 物流に関わる人たちを会社を跨いだ コミュニケーションを円滑化 AI 系の技術を活用して 配送効率と業務効率を向上
技術負債を 「コミュニケーションの課題」である という切り口で考えてみる
課題1 課題はチーム内で、開発を進める際に発生するもの 例 API スキーマ、データ構造について相互に確認 設計方針についてディスカッション 技術的な共時的コミュニケーション
課題2 現在の自分と過去の自分・チーム間で発生 例 機能追加・拡張時の影響範囲 フレームワークによるJoin, Lazy Load により意図せずパフォーマンス劣化 技術的な通時的コミュニケーション
課題3 ユーザーの課題感・温度感 ↔️ 開発メンバーの理解、開発面の課題 対話をした結果をプロダクトに反映するサイクルが長い 例 操作履歴へのニーズと実装・運用の難易度 ユーザーとの対話
つまり アジャイルソフトウェア開発宣言: https://agilemanifesto.org/iso/ja/manifesto.html このサイクルを回すためのコミ ュニケーションを阻害するもの =技術負債
ハコベルでの取組み 阻害要因を取り除くためにソフトウェアアーキテクチャを重視、設計パターンを いくつか取り入れています
取組み1 :DDD ユーザーと同じ目線で対話しやすい状態 ドメインロジックが副作用から独立 コード自体が理解しやすく変更も加えやすい DDD を通して目指すこと
取組み2 :Event Sourcing 操作履歴、変更履歴をコード上でも重要な要素とする ユーザーが重要と考えるものをコードでも同様に重要なものと捉える Event Sourcing を利用して目指すこと
最後に ユーザーと対話する上で何が重要かを考える 将来の自分達にメッセージを込めたコードを書く ソフトウェアアーキテクチャはその強力な武器になります
THANK YOU 技術的負債に向き合う Online Conference ハコベル株式会社 シニアアーキテクト 中村隆宏