@jnb42 [email protected] john billings the human side of … · the human side of microservices...
TRANSCRIPT
![Page 2: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/2.jpg)
Introduction
![Page 3: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/3.jpg)
About me
• PhD in compiling and verifying routing protocols
• Joined Yelp in February 2011• Initially:
• Joined <10 person search team• 70 - 80 engineers
• Now 300+ engineers
![Page 4: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/4.jpg)
Yelp’s MissionConnecting people with great
local businesses.
![Page 5: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/5.jpg)
Yelp StatsAs of Q1 2016
90M 3270%102M
![Page 6: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/6.jpg)
![Page 7: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/7.jpg)
3 million
1 million
LoC in monolith
2005 20162011
![Page 8: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/8.jpg)
Number of microservices
117
2012 2016
![Page 9: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/9.jpg)
LoC in microservices
891k
2012 2016
![Page 10: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/10.jpg)
Microservice adoption
![Page 11: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/11.jpg)
https://www.flickr.com/photos/24736216@N07/4433492189
![Page 12: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/12.jpg)
http://www.soc.iastate.edu/extension/pub/comm/SP18.pdf
“The Diffusion Process”
George M. Beal and Joe M. Bohlen, 1957
![Page 13: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/13.jpg)
![Page 14: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/14.jpg)
![Page 15: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/15.jpg)
Technology adoption curve for a population
![Page 16: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/16.jpg)
The chasm
Early adopters Early majority
![Page 17: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/17.jpg)
Innovators
![Page 18: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/18.jpg)
Innovators
![Page 19: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/19.jpg)
![Page 20: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/20.jpg)
The Geocoder Service
![Page 21: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/21.jpg)
![Page 22: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/22.jpg)
Early adopters
![Page 23: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/23.jpg)
The majority
![Page 24: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/24.jpg)
Education
![Page 25: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/25.jpg)
https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing
![Page 26: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/26.jpg)
https://github.com/Yelp/service-principles
![Page 27: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/27.jpg)
● Service type (PaaSTA vs legacy SOA)
● Technology type (Python / Java / daemon)
● Caching
● Downtime scenarios
● Databases
● External services
● Hardware requirements
● Load balancing
● Performance and uptime
● Monitoring
● Security
![Page 28: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/28.jpg)
![Page 29: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/29.jpg)
Summits and unconferences
![Page 30: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/30.jpg)
Talks
![Page 31: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/31.jpg)
Deputy programs
![Page 32: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/32.jpg)
Office hours
![Page 33: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/33.jpg)
Postmortems
![Page 34: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/34.jpg)
Standards
Boo! Boring!
Tell me something interesting!
Zzzz………….!
![Page 35: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/35.jpg)
Interfaces
![Page 36: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/36.jpg)
Perform a real query
![Page 37: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/37.jpg)
Tracing
![Page 38: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/38.jpg)
Metrics
![Page 39: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/39.jpg)
Datastores
![Page 40: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/40.jpg)
Timeouts and retries
https://en.wikipedia.org/wiki/Abort,_Retry,_Fail%3F#/media/File:Abort_Retry_Fail.PNG
![Page 41: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/41.jpg)
Ownership
![Page 42: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/42.jpg)
![Page 43: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/43.jpg)
![Page 44: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/44.jpg)
Organizationalobjectives
![Page 45: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/45.jpg)
Lots of (potentially) conflicting objectives:• Performance• Reliability• Cost• Security• Iteration speed
![Page 46: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/46.jpg)
“What gets measured gets improved” Peter Drucker
![Page 47: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/47.jpg)
Conclusions
![Page 48: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/48.jpg)
Microservices have forced us to build a more robust, decentralized organization
![Page 49: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/49.jpg)
This change has taken a long time
![Page 50: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/50.jpg)
I believe (but cannot prove) that we are shipping code as quickly as ever
![Page 51: @jnb42 billings@yelp.com John Billings The Human Side of … · The Human Side of Microservices John Billings @jnb42 billings@yelp.com. Introduction. About me ... Microservices have](https://reader035.vdocuments.site/reader035/viewer/2022062303/5fb4f7ce15defc19f104152f/html5/thumbnails/51.jpg)
Any questions?