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
Learning to Love SOA
Search
Randall Degges
September 25, 2014
Programming
0
440
Learning to Love SOA
A story about programming big things.
Randall Degges
September 25, 2014
Tweet
Share
More Decks by Randall Degges
See All by Randall Degges
How to Lose 500k in 5 Minutes
rdegges
0
500
Useful Cryptography, An Introduction
rdegges
0
780
12 Factors of Pain and Suffering
rdegges
3
950
An Introduction to PASETO Tokens
rdegges
0
1.9k
JWTs Suck
rdegges
24
27k
Almost Everything You Ever Wanted to Know About Web Authentication in Python
rdegges
7
1.2k
Almost Everything You Ever Wanted to Know About Web Authentication in Node
rdegges
13
2.2k
WTF Are APIs?!
rdegges
4
910
Fuck It: Let's Have Fun - Building a Top Torrents API
rdegges
2
700
Other Decks in Programming
See All in Programming
Leading Effective Engineering Teams in the AI Era
addyosmani
1
270
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
150
PHPに関数型の魂を宿す〜PHP 8.5 で実現する堅牢なコードとは〜 #phpcon_hiroshima / phpcon-hiroshima-2025
shogogg
1
150
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
1k
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
180
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
250
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
310
CSC509 Lecture 03
javiergs
PRO
0
330
Cloudflare AgentsとAI SDKでAIエージェントを作ってみた
briete
0
140
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
400
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
3.3k
オープンソースソフトウェアへの解像度🔬
utam0k
13
2.6k
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
A designer walks into a library…
pauljervisheath
209
24k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Scaling GitHub
holman
463
140k
Making Projects Easy
brettharned
119
6.4k
Music & Morning Musume
bryan
46
6.8k
Side Projects
sachag
455
43k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Leading Effective Engineering Teams in the AI Era
addyosmani
1
270
Faster Mobile Websites
deanohume
310
31k
Documentation Writing (for coders)
carmenintech
75
5k
Transcript
A story about programming big things. Learning to Love SOA
@rdegges @gostormpath
I’m Randall Degges Developer Evangelist at Stormpath Python / Node
/ Go Hacker
None
CNAM? Incoming Call: 818-217-9229 DEGGES,RANDALL
The Plan OpenCNAM DEGGES,RANDALL 818-217-9229
Mike: So… Wanna build it? Me: Sure… Why not?
None
Monolithic Architecture A single codebase that is responsible for handling
all site functionality.
Service Oriented Architecture Many codebases that each do one thing
and one thing only.
opencnam Github Repos • Public facing website. • Developer API.
• Developer documentation. • Billing logic. • Email stuff. • Telephony interconnect. Monolithic App
Load Balancer Web Server Web Server Postgres Request
None
None
Problems :(
None
opencnam-www Rendering templates. Sending POST requests to my backend. Decoupling
the Front End
Load Balancer Web Server Postgres Request opencnam Load Balancer Web
Server Request opencnam-www
None
Web Server Postgres
opencnam-auth • Create users. • Edit users. • Delete users.
Decoupling the Users
Backend Request opencnam Backend Request opencnam-www Backend Request opencnam-auth
None
opencnam-api • Telephony logic. • API logs. • API cache.
Decoupling the API
Backend Request opencnam-api Backend Request opencnam-www Backend Request opencnam-auth
opencnam-billing opencnam-www opencnam-auth opencnam-api OpenCNAM Services opencnam-logs opencnam-stats
What I’ve Learned
Small codebases are easier to work with.
Small codebases are easier to scale.
Small codebases are more fun.
You can write less code.
The hardest thing about SOA is... opencnam-auth
• User account storage / encryption. • Authentication. • Authorization.
• REST API management. • Social login. End User Your Webserver Stormpath API Stormpath
You’re the best! @rdegges @gostormpath