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
Code to Current Account
Search
mattheath
June 12, 2017
Programming
3
320
Code to Current Account
Presented with Simon Vans-Colina at Hashidays London
mattheath
June 12, 2017
Tweet
Share
More Decks by mattheath
See All by mattheath
Breaking down problems
mattheath
2
300
Contexts in Context
mattheath
0
160
A guided journey of Cloud Native
mattheath
1
120
Modelling prototypes to critical systems with Cassandra
mattheath
0
160
Building a Cloud Native Bank
mattheath
1
170
Building a Cloud Native Bank
mattheath
0
280
Building reliable APIs
mattheath
0
230
Go and Microservices - NDC London 2018
mattheath
0
210
Architecting a Bank from scratch
mattheath
1
740
Other Decks in Programming
See All in Programming
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
850
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
310
Git Rebase
bkuhlmann
11
1.6k
Go製Webアプリケーションのエラーとの向き合い方大全、あるいはやっぱりスタックトレース欲しいやん / Kyoto.go #50
utgwkk
6
1.7k
Build Apps for iOS, Android & Desktop in 100% Kotlin With Compose Multiplatform (mDevCamp 2024)
zsmb
0
420
Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting
unvalley
5
1.1k
Elm 0.19.0 Changes
bkuhlmann
0
490
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
670
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
1
330
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
2
200
Let's learn code review
riofujimon
2
560
"config" ってなんだ? / What is "config"?
okashoi
0
250
Featured
See All Featured
Thoughts on Productivity
jonyablonski
59
3.9k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
What the flash - Photography Introduction
edds
64
11k
Git: the NoSQL Database
bkeepers
PRO
423
63k
Designing on Purpose - Digital PM Summit 2013
jponch
111
6.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
11
1k
The MySQL Ecosystem @ GitHub 2015
samlambert
244
12k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
5
3.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Transcript
Code to Current Account @simonvc & @mattheath
@simonvc @mattheath
@simonvc @mattheath
None
None
None
None
None
Legacy banks
Number of banks running entirely* free* software.
Number of banks running entirely* free* software.
Rebuild everything * Go microservices * Git as Change management
* Realtime and API
Go ❤ * Emphasis on correctness * Performant * Lean
"Plan to throw your first one away." Mesos -> Kubernetes
RabbitMQ -> LinkerD Cloud Formation -> Terraform
None
Terraform
None
None
github.com/hashicorp/vault/ pull/2241 Cassandra storage backend
Builds
None
None
None
0 40 80 160 120 Feb 2015 June 2017 200
Number of services 240
None
None
None
Service Service
Service Service Service Service
Service Service Service Service HTTP HTTP
Service Discovery Load Balancing Timeouts and Expirations Retries Rate Limiting
Connection Pooling Circuit Breaking Failure Detection Metrics and Tracing Interrupts Context Propagation
Service Service Service Service HTTP HTTP ?
Service Service Service Service HTTP HTTP linkerd
Service Service Service Service HTTP HTTP linkerd service discovery
Service Discovery Load Balancing Timeouts and Expirations Retries Rate Limiting
Connection Pooling Circuit Breaking Failure Detection Metrics and Tracing Interrupts Context Propagation
Service Service Service Service HTTP HTTP linkerd service discovery
Service Service Service Service Service linkerd host A Service
Service Service Service Service linkerd host B Service Service Service
Service Service Service Service linkerd host A Service Service Service Service Service Service linkerd host C Service
Service Service Service Service linkerd host B Service Service Service
Service Service Service Service linkerd host A Service Service Service Service Service Service linkerd host C Service
Service Service Service Service linkerd host B Service Service Service
Service Service Service Service linkerd host A Service Service Service Service Service Service linkerd host C Service
Service Service Service Service linkerd host B Service Service Service
Service Service Service Service linkerd host A Service Service Service Service Service Service linkerd host C Service
Service Service Service Service linkerd host B Service Service Service
Service Service Service Service linkerd host A Service Service Service Service Service Service linkerd host C Service
None
Amazon eu-west-1
Amazon eu-west-1
None
Amazon eu-west-1 colocation dc 1 colocation dc 2
Amazon eu-west-1 colocation dc 1 colocation dc 2
Amazon eu-west-1 colocation dc 1 colocation dc 2
Amazon eu-west-1 colocation dc 1 colocation dc 2 BGP
BGP BGP BGP
Amazon eu-west-1 colocation dc 1 colocation dc 2 BGP
BGP
Amazon eu-west-1 colocation dc 1 colocation dc 2
third parties colocation AWS Hardware VPN device
third parties colocation AWS Hardware VPN device VPN client
third parties colocation AWS “connectivity” pod Quagga (BGP) services Hardware
VPN device VPN client BGP
third parties colocation AWS “connectivity” pod Quagga (BGP) services ??????
VPN client BGP
None
third parties colocation AWS “connectivity” pod Quagga (BGP) services ??????
VPN client BGP
third parties colocation “connectivity” pod Quagga (BGP) VPN client BGP
third parties colocation “connectivity” pod Quagga (BGP) VPN client BGP
third parties colocation “connectivity” pod Quagga (BGP) VPN client BGP
third parties colocation “connectivity” pod Quagga (BGP) VPN client BGP
Linux HA Linux HA
None
third parties colocation “connectivity” pod Quagga (BGP) VPN client BGP
Linux HA Linux HA
third parties colocation “connectivity” pod Quagga (BGP) VPN client BGP
None
B A
active standby
active standby
active standby
active standby
standby active
third parties colocation AWS “connectivity” pod Quagga (BGP) services ??????
VPN client BGP
third parties colocation AWS “connectivity” pod Quagga (BGP) services HA
VPN Appliance VPN client BGP
Amazon eu-west-1
Build: Terraform Secure: Vault Develop: Vagrant Provision: Packer
monzo.com/careers
monzo.com/careers