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
Centralising the right things
Search
Tom Booth
June 09, 2017
Technology
1.3k
1
Share
Centralising the right things
Tom Booth
June 09, 2017
More Decks by Tom Booth
See All by Tom Booth
Painting in Clojure
tombooth
0
130
Using data and visualisation to improve government
tombooth
0
270
Other Decks in Technology
See All in Technology
TypeScriptとAngular Signal で実現する保守性の高いアプリケーション設計 - 3層アーキテクチャによる責務分離の実践(たつかわ) https://2026.tskaigi.org/talks/10
nealle
1
350
Amazon CloudFrontにおけるAIボットアクセス制御のポイント
kizawa2020
4
270
A Harness for Behaviour: how to get AI to generate code that does what we intend, or "TDD in the age of AI"
xpmatteo
0
420
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
120
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
0
170
自作エディターをOSSにして分かった、一人に刺さる開発が世界を動かす理由
shinyasaita
1
380
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
200
ソフトウェアサプライチェーン攻撃対策として今からサクッとできること
flatt_security
2
140
データ分析基盤の信頼を支える視点と設計
yuki_saito
1
660
情シスがMCP環境導入時に打ちのめされる認可の崖
oidfj
0
450
LLM時代のリファクタリング戦略_AIエージェントによる段階的・安全なTS移行方法
play_inc
0
180
TypeScriptはどのようにどこまで推論できるのか ─ とにかく as は禁止で
ypresto
3
420
Featured
See All Featured
Skip the Path - Find Your Career Trail
mkilby
1
130
Designing for Performance
lara
611
70k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
380
Building Adaptive Systems
keathley
44
3k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Optimizing for Happiness
mojombo
378
71k
Docker and Python
trallard
47
3.8k
The Cost Of JavaScript in 2023
addyosmani
55
9.9k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
180
New Earth Scene 8
popppiees
3
2.3k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1.1k
Transcript
@tombooth Centralising the right things Tom Booth
@tombooth
@tombooth tl;dr
@tombooth Build a central team to empower and support others
@tombooth Centralised Decentralised Re-centralised
@tombooth Centralised Decentralised Re-centralised
@tombooth
@tombooth We weren’t one business, we were compe>ng func>ons
@tombooth Protec>onism built through compe>>on
@tombooth
@tombooth Every 3 weeks, …
@tombooth
@tombooth Every 3 weeks, we had a wild ride of
forgoHen changes
@tombooth Opera>ons would get the blame for developer problems
@tombooth
@tombooth Why did their change break my code?
@tombooth Centrally provided tools were very poor
@tombooth GeLng features to our users was slow When we
were centralised,
@tombooth Change was complex because of poor design When we
were centralised,
@tombooth Func>onal ownership caused serious fric>on When we were centralised,
@tombooth Centralised Decentralised Re-centralised
@tombooth One team needs to own the whole service
@tombooth
@tombooth You have to embrace change
@tombooth Deploying con>nuously is beHer for users
@tombooth A team should own its own architecture and infrastructure
@tombooth
@tombooth Every team with their own direc>on, liHle shared
@tombooth Solving the same problems, in the same way with
different implementa>ons
@tombooth Opera>ng at larger scale requires deeper knowledge
@tombooth GeLng features to our users was slow When we
were centralised,
@tombooth Change is complex because of poor architecture When we
were centralised,
@tombooth Func>onal ownership caused serious fric>on When we were centralised,
@tombooth The same problems were being solved repeatedly When we
were decentralised,
@tombooth No-one has the complete picture When we were decentralised,
@tombooth We weren’t focusing on our users as much as
we should When we were decentralised,
@tombooth Centralised Decentralised Re-centralised
@tombooth Retain ownership in the service teams
@tombooth Iden>fy common paHerns in our infrastructure
@tombooth Support common paHerns with great tooling
@tombooth Always ask, how can we help each other?
@tombooth Give teams room to experiment, do what’s best for
them
@tombooth Outside impressions maHer
@tombooth
@tombooth Help our owners, investors and auditors understand our services
@tombooth Work together not apart
@tombooth Work together on architecture
@tombooth Work together on issues
@tombooth Work together on bugs in produc>on at 3am
@tombooth GeLng features to our users was slow When we
were centralised,
@tombooth Change is complex because of poor architecture When we
were centralised,
@tombooth Func>onal ownership caused serious fric>on When we were centralised,
@tombooth The same problems were being solved repeatedly When we
were decentralised,
@tombooth No-one has the complete picture When we were decentralised,
@tombooth We weren’t focusing on our users as much as
we should When we were decentralised,
@tombooth Build a central team to empower and support others