Constructing a Seamless Flow: Meet Uber Engineering’s Developer Experience Team
June 15, 2017 / Global
Behind the scenes, Uber’s Developer Experience (Dev Exp) team empowers our engineers to seamlessly conceptualize, create, and deploy technologies at scale. Located in our San Francisco, Seattle, and Vilnius offices, Dev Exp falls under the larger umbrella of Uber’s Infrastructure group and includes members of Uber’s Information Platform, Engineering Training & Development, and Service & Language Framework teams. This hardworking group of technical writers, educators, and developers supports our engineers through documentation, training courses, build systems, and development frameworks, among other tools.
We sat down with Nikolay Sokratov, head of Dev Exp at Uber, to learn more about his team.

What are the core responsibilities of Developer Experience at Uber?
Our team’s responsibilities range from educating our engineers and managers on development best practices to providing technical documentation and standardizing development flows with programming language support.
Take, for example, our Dev Exp engineers. These developers create various tools to increase engineering productivity at Uber such as build systems, integration tests, test systems, scaffolding, and language frameworks. They also work on large-scale infrastructure projects that deal with managing services using serverless platforms and distributed workflow systems.
There’s never a dull moment on Dev Exp.
What are some of the biggest challenges your team faces when building these tools?
There are many, from simple organizational pain points all the way to larger hurdles that deal with distributed system design. At a high level, we have to convince people that we need these tools to simplify the developer experience.
Fortunately, most engineers we work with understand because they use our systems on a daily basis to create very sophisticated services. In a lot of ways, the work we do breaks new ground by pioneering approaches to simplify how builders at Uber set up, code, and test these services.
Can you provide specific examples of Dev Exp tools that were built in response to developer feedback?
One of our most recent projects is our new developer lifecycle automation system. It orchestrates 40+ infrastructure tools by combining all of them into a single, configurable flow that fully automates code checkins, all the way from setting up a service to going live in production. The only thing the developer has to do throughout this entire process is write and commit the code.
Another project that we’re really excited about is a serverless platform (which has similarities to AWS Lambda) that we just launched that frees developers from worrying about servers, scalability, and system capacity on high traffic days like Halloween and New Year’s Eve.

What would you say is the most rewarding part about being on the Dev Exp team?