At Uber, we ignite opportunity by setting the world in motion. We take on big problems to help drivers, riders, delivery partners, and eaters get moving in more than 600 cities around the world.
We welcome people from all backgrounds who seek the opportunity to help build a future where everyone and everything can move independently. If you have the curiosity, passion, and collaborative spirit, work with us, and let’s move the world forward, together.
About the Role
In the Amsterdam Android/Java Developer Experience team our goal is to provide a best-in-class development experience for Uber engineers. We achieve this by developing novel tools, improving our build system setup and working on the CI/CD pipelines. Our target audience consists of Uber’s thousands of engineers who are in need of tools that are reliable, fast while also delightful to use.
We use a wide variety of languages and tools to deliver on this mission including Java, Kotlin, Bash, and Python. We work on enabling and supporting the usage of state of the art build systems for Uber’s ever-growing codebase such as Buck and Bazel for Android and Java-backend development purposes.
Should you choose to join this team, you will have a material impact on the day to day workflows and overall efficiency of the thousands of engineers building the existing and future products of Uber. You will have a chance to work on complex developer experience challenges that are unique to the scale that we operate on.
You may want to watch this Android-specific recording in order to have a more detailed glimpse of the problems that we’re working on.
What You’ll Do
Tweak the performance of our Continuous Integration pipelines related to Android development
Optimize our Android build performance by working with Buck & Bazel
Improve the observability of above systems by instrumenting them and authoring dashboards
Keep up to date with the latest Android frameworks, tools and technologies - such as Dynamic App Bundles - and make sure that our stack can support them
Participate in the development of new tools, services and CI pipelines that help Uber engineers day to day
Provide support related to mobile development tooling for product engineers based in Amsterdam
What you’ll need
Expertise in at least 1 build system such as: Maven, Gradle, Buck, Bazel
Expert in at least 1 programming language such as Python, Java, Kotlin and willingness to pick up any other language as necessary
Experience in automated testing
Being a team player
Having a growth mindset
Passion for helping other engineers
Effective written and verbal communication in English
Background in Android development
Java backend development experience
Experience in Developer Platform / Developer Experience
At Uber we don’t just accept difference—we celebrate it, we support it, and we thrive on it for the benefit of our employees, our products and our community. Uber is proud to be an equal opportunity workplace. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status.