from python to java
TRANSCRIPT
![Page 1: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/1.jpg)
From Python to Java@stoitsev
![Page 2: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/2.jpg)
![Page 3: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/3.jpg)
June 1st, 2010 - Uber is founded
Dec 24th, 2015 - 1bn trips
June 18th, 2016 - 2bn trips
![Page 4: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/4.jpg)
every time you think you are here
![Page 5: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/5.jpg)
turns out you are still here
![Page 6: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/6.jpg)
Тradeoffs
![Page 7: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/7.jpg)
Microservices
![Page 8: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/8.jpg)
Users
Products
Trips
Cities
Payments
Receipts
![Page 9: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/9.jpg)
Best tool for the job
![Page 10: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/10.jpg)
Velocity
![Page 11: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/11.jpg)
Training / Best practices / Documentation / Experts
Project template / Bootstrapping
Configuration
Debuggers
Profilers
Building, Packaging, Deploying
![Page 12: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/12.jpg)
Solving the same problems multiple times
![Page 13: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/13.jpg)
TChannel clients
Auth
Schemaless client
Logging, configuration, monitoring...
![Page 14: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/14.jpg)
Development Cost
![Page 15: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/15.jpg)
Operational Cost
![Page 16: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/16.jpg)
Code Sharing
![Page 17: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/17.jpg)
![Page 18: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/18.jpg)
Broad Applicability
![Page 19: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/19.jpg)
High Performance
![Page 20: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/20.jpg)
Static Typing
![Page 21: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/21.jpg)
![Page 22: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/22.jpg)
Organizational Scale
![Page 23: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/23.jpg)
Runtime Performance
![Page 24: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/24.jpg)
Lack of concurrency
![Page 25: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/25.jpg)
![Page 26: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/26.jpg)
Community
![Page 27: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/27.jpg)
Powerful toolchains
![Page 28: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/28.jpg)
Ecosystem of high-quality libraries
![Page 29: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/29.jpg)
http://benchmarksgame.alioth.debian.org/u64q/python.html
![Page 30: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/30.jpg)
![Page 31: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/31.jpg)
![Page 32: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/32.jpg)
eng.uber.com/euclid
![Page 33: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/33.jpg)
![Page 34: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/34.jpg)
![Page 35: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/35.jpg)
uReplicator
https://github.com/uber/uReplicator
![Page 36: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/36.jpg)
![Page 37: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/37.jpg)
Proven
![Page 38: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/38.jpg)
Momentum
![Page 39: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/39.jpg)
Performance
![Page 40: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/40.jpg)
Geofence
![Page 41: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/41.jpg)
![Page 42: From Python to Java](https://reader031.vdocuments.site/reader031/viewer/2022030305/5871d6461a28ab423c8b6a45/html5/thumbnails/42.jpg)
Thanks!
eng.uber.com
uber.github.io