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
460
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
540
Useful Cryptography, An Introduction
rdegges
0
800
12 Factors of Pain and Suffering
rdegges
3
980
An Introduction to PASETO Tokens
rdegges
0
2k
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.3k
WTF Are APIs?!
rdegges
4
930
Fuck It: Let's Have Fun - Building a Top Torrents API
rdegges
2
720
Other Decks in Programming
See All in Programming
AIエージェントの設計で注意するべきポイント6選
har1101
6
3.2k
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
130
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.6k
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
220
Architectural Extensions
denyspoltorak
0
180
CSC307 Lecture 01
javiergs
PRO
0
670
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
210
Implementation Patterns
denyspoltorak
0
220
高速開発のためのコード整理術
sutetotanuki
1
180
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
1.8k
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
210
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
180
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
410
The Limits of Empathy - UXLibs8
cassininazir
1
200
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Making Projects Easy
brettharned
120
6.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Optimizing for Happiness
mojombo
379
71k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
What the history of the web can teach us about the future of AI
inesmontani
PRO
0
400
It's Worth the Effort
3n
188
29k
What does AI have to do with Human Rights?
axbom
PRO
0
1.9k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
57
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.2k
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