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
CPDD
Search
JBD
October 02, 2018
Technology
0
4.1k
CPDD
JBD
October 02, 2018
Tweet
Share
More Decks by JBD
See All by JBD
eBPF in Microservices Observability at eBPF Day
rakyll
1
2.1k
eBPF in Microservices Observability
rakyll
1
1.7k
OpenTelemetry at AWS
rakyll
1
1.8k
Debugging Code Generation in Go
rakyll
5
1.5k
Are you ready for production?
rakyll
8
2.7k
Servers are doomed to fail
rakyll
3
1.5k
Serverless Containers
rakyll
1
240
Critical Path Analysis
rakyll
0
550
Monitoring and Debugging Containers
rakyll
2
1.1k
Other Decks in Technology
See All in Technology
Platform Engineeringは自由のめまい
nwiizo
4
2.1k
データの品質が低いと何が困るのか
kzykmyzw
6
1.1k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
57k
クラウドサービス事業者におけるOSS
tagomoris
2
840
白金鉱業Meetup Vol.17_あるデータサイエンティストのデータマネジメントとの向き合い方
brainpadpr
6
760
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
750
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
370
Classmethod AI Talks(CATs) #16 司会進行スライド(2025.02.12) / classmethod-ai-talks-aka-cats_moderator-slides_vol16_2025-02-12
shinyaa31
0
110
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
1
730
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
200
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
370
2025-02-21 ゆるSRE勉強会 Enhancing SRE Using AI
yoshiiryo1
1
370
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Writing Fast Ruby
sferik
628
61k
Scaling GitHub
holman
459
140k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Documentation Writing (for coders)
carmenintech
67
4.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Docker and Python
trallard
44
3.3k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Transcript
None
None
None
systems? who does that?
jaana b. dogan 6+ years at Google, touched many projects
early days (of a company)
None
growing...
what growth looks like service A service B service C
service D service E service auth email
one becomes many failure in isolation who to ping in
failure?
and it goes larger...
good guy jeff
None
None
code search
go_library( name = "logs", srcs = ["logs.go"], visibility = ["//visibility:public"],
deps = [ …. ], ) References (641 occurrences) - //source/ads/monitoring/BUILD - //source/ads/analysis/BUILD - //source/ads/mobile/BUILD ...
frontend server authentication users images memcache blobservice memcache memcache (metadata)
(disks) load balancer
frontend server authentication users images memcache blobservice memcache memcache (metadata)
(disks) load balancer critical path
cpdd (critical path driven development)
discover the critical paths make them reliable and fast make
them debuggable
how do we get there? events or tracing
why? why? why? why? why?
GET /timeline edge-lb sched api-server auth.Auth cache.Get mysql.Query user.Profile cache.Get
mysql.Query images.Filter blobstore.Get
bare metal kernel process scheduler network stack cloud stack user
process frameworks your code
GET /timeline edge-lb sched api-server auth.Auth cache.Get mysql.Query user.Profile cache.Get
mysql.Query images.Filter blobstore.Get not my fault
GET /timeline auth.Auth cache.Get mysql.Query user.Profile cache.Get mysql.Query images.Filter blobstore.Get
cache.Get mysql.Query blob.Get where is the source code?
GET /timeline auth.Auth cache.Get mysql.Query user.Profile cache.Get mysql.Query images.Filter blobstore.Get
cache.Get mysql.Query blob.Get who to call?
GET /timeline auth.Auth cache.Get mysql.Query user.Profile cache.Get mysql.Query images.Filter blobstore.Get
cache.Get mysql.Query blob.Get give me the logs, runtime events, profiles...
challenges...
this is an organizational problem CPDD CHALLENGE #1:
github.com/w3c/distributed-tracing
engineers don’t know where to start CPDD CHALLENGE #2:
infra is still a blackbox CPDD CHALLENGE #3:
instrumentation is expensive CPDD CHALLENGE #4:
dynamic capabilities are underestimated CPDD CHALLENGE #5:
None
cpdd: a tool to close knowledge gaps (which we don’t
talk about)
fin
[email protected]