Migrating our Schemaless sharding layer from Python to Go while in production demonstrated that it was possible for us to rewrite the frontend of a massive datastore with zero downtime.
How does Uber keep New Year's Eve and other high traffic events...well, uneventful? By keeping our networks extensible and our services reliable year-round.
Get to know Uber's Developer Experience team, a group of writers, educators, and technologists dedicated to setting our engineers up for success.
Seemingly small inefficiencies are greatly magnified as Uber's business scales. In this article we’ll explore design considerations and unique implementation characteristics of Pyflame, Uber Engineering's high-performance Python profiler implemented in C++.
Take a look into uReplicator, Uber’s open source solution for replicating Apache Kafka data in a robust and reliable manner.
Uber Engineering explains the technical reasoning behind its switch in database technologies, from Postgres to MySQL.
Uber’s mission is transportation as reliable as running water, everywhere, for everyone. Here's the first of a two-part series on the tech stack that Uber Engineering uses to make this happen.
Uber Engineering's Micro Deploy (μDeploy), our in-house deployment system that builds, upgrades, and rolls back services at Uber.
To show how a microservice is implemented in Uber Engineering's ecosystem, we look at the development of Tincup, our currency and exchange rate service.
How the Go programming language helped Uber Engineering build and scale our highest queries per second microservice, for geofence lookups.
Imagine you have to store data whose massive influx increases by the hour. Your first priority, after making sure you can easily add storage capacity, is to try and reduce the data’s footprint to save space. But how? This is the story of Uber Engineering’s comprehensive encoding protocol and compression algorithm test and how this discipline saved space in our Schemaless datastores.
How to develop with Uber Engineering's Ringpop, an open source library developed to make our applications cooperative and scalable.
The details and examples of Schemaless triggers, a key feature of the datastore that’s kept Uber Engineering scaling since October 2014. This is the third installment of a three-part series on Schemaless; the first part is a design overview and the second part is a discussion of architecture.
How Uber’s infrastructure works with Schemaless, the datastore using MySQL that’s kept Uber Engineering scaling since October 2014. This is part two of a three-part series on Schemaless; part one is on designing Schemaless.
The making of Schemaless, Uber Engineering’s custom designed datastore using MySQL, which has allowed us to scale from 2014 to beyond. This is part one of a three-part series on Schemaless.
Moving away from a monolithic codebase to a service-oriented architecture (SOA) has not been an easy task. Here's a brief glimpse of the scalability problems we've faced and the steps we've taken to solve them.
One of our new graduate hires from 2014, Cory, recounts a lesson learned from deploying code with a bug for our payment systems on a Friday.