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
Smart Software Design (SOA Edition)
Search
Jon Daniel
April 20, 2016
Programming
0
140
Smart Software Design (SOA Edition)
Jon Daniel
April 20, 2016
Tweet
Share
More Decks by Jon Daniel
See All by Jon Daniel
Growth and Mentorship: Working with Junior Developers
binarycleric
0
60
Ethical and Sustainable On-Call
binarycleric
6
2.5k
Liquid Markup
binarycleric
1
190
Other Decks in Programming
See All in Programming
知識0からカンファレンスやってみたらこうなった!
syossan27
5
250
generative-ai-use-cases(GenU)の推しポイント ~2025年4月版~
hideg
1
390
CursorとDevinが仲間!?AI駆動で新規プロダクト開発に挑んだ3ヶ月を振り返る / A Story of New Product Development with Cursor and Devin
rkaga
2
720
GitHub Copilot for Azureを使い倒したい
ymd65536
1
330
大LLM時代にこの先生きのこるには-ITエンジニア編
fumiyakume
8
3.4k
VibeCoding時代のエンジニアリング
daisuketakeda
0
180
API for docs
soutaro
4
1.7k
2025年のz-index設計を考える
tak_dcxi
11
4.3k
はじめてのPDFKit.pdf
shomakato
0
100
AIコーディングの理想と現実
tomohisa
37
40k
Serving TUIs over SSH with Go
caarlos0
0
660
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
130
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
How GitHub (no longer) Works
holman
314
140k
4 Signs Your Business is Dying
shpigford
183
22k
GraphQLとの向き合い方2022年版
quramy
46
14k
Speed Design
sergeychernyshev
29
940
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Agile that works and the tools we love
rasmusluckow
329
21k
KATA
mclloyd
29
14k
The Pragmatic Product Professional
lauravandoore
33
6.6k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
Fireside Chat
paigeccino
37
3.4k
Transcript
Smart Software Design (SOA Edition)
Jon Daniel @binarycleric
chronicbuildfailure.co chronic build failure
None
None
I’m FUNEMPLOYED (hire me)
WARNING
This talk is still in BETA
Service Oriented Architecture
Building Software is Pretty Hard
SOA is Really Hard (but sometimes easier*)
Change Your Thought Process
Think Distributed
Stop Thinking About Commands
Start Thinking About Events
Publish Subscribe
None
Idempotency is Important
Universal Uniqueness
None
Single Responsibility Principle
Don’t Turn Your Services Into Mini-Monoliths
Monitor All The Things!
Mean Response Time is Useless
Median is a Little Better
95th, 99th and 99.9th percentile
Real Life Example
What Could Go Wrong?
What is Mission Critical?
Let’s Give it a Shot!
None
Cascading Failure
What breaks when other things break?
Defend Against Cascading Failure
Assume Every Integration Can and Will Fail
How Can We Fail Gracefully?
Can We Serve Stale Data?
Can We Report Events Instead of Commanding Services?
Your Failures Are Your Own
None
Plan For Failure and You’ll Achieve Success
¯\_(ϑ)_/¯ (because computers)
Thanks!