What You’ll Do
- Provide technical leadership in designing, implementing, testing and rolling out the next generations of our payments systems.
- Collaborate with others, from talented team members within your group, through smart technologists in other functions like machine learning, AI or data science, to responsible leaders across Uber. Build up strong relationships with people in the organization, meaningfully collaborating and building trust.
- Be a role model on acting with good judgement and responsibility. Engineers across the organization will look to you on how best to plan and execute on projects.
- See the big picture and identify strategically important problems, inefficiencies or opportunities for meaningful improvements. Drive alignment on how to tackle these and deliver high leverage solutions on these at the group and organization level.
- Up the bar on sustainable engineering by improving best practices, producing best in class of code, documentation, testing and monitoring.
- Be a humble mentor and trusted advisor for both our talented team members and passionate leaders alike. Deal with a difference in opinions in a mature and fair way, helping teams to commit and move forward.
What You’ll Need
- Bachelor's degree or higher in an engineering field (e.g. Computer Science, Computer Engineering, etc.).
- 10+ years of relevant engineering experience.
- Track record of building large-scale, highly-available systems.
- Experience with multiple programming languages and data stores. We use programming languages like Go, Java, Python and data stores like Cassandra, DynamoDB, Redis and others.
- Passion for driving continual improvement initiatives on engineering best practices like coding, testing or monitoring.
- Excellent written and verbal communication skills, including the ability to write detailed technical documents.
- Passionate about helping teams grow by inspiring and mentoring engineers.
Bonus Points If
- Contributed to the broader technical community through tech talks, publications, open source projects or other ways.
- Deep, industry leading expertise in one or more technology domains.
- Built large scale projects with stream processing and batch processing.
- Experience working in Fintech industry.
- Implemented complex regulatory compliance projects successfully.
About the Team
Uber's payments team is based in Amsterdam, at the heart of our international engineering efforts. We are a diverse group, with talented people from over 30 countries working together. As a member of our team, you will dig into the complex and rewarding world of money and build payment integration systems that seamlessly connect the world of finance.
The one constant at Uber is growth, and all of our systems are constantly evolving to meet the needs of our high growth environment. We are proactive about addressing both operational and scalability challenges as we grow. We champion great monitoring, alerting, and test coverage and invest in the right tools to help us do so. The services we build on Uber’s payments team are highly scalable, robust, and fault-tolerant. We are conscious about the trade-offs we make in building highly scalable architectures. We balance code and architecture quality with good execution speed, supporting the continous growth of Uber.
Engineers on the payments team work closely with groups like Data Science, Machine Learning, Accounting, Finance and Mobile Engineering to address new challenges, co-produce requirements, and improve our operational efficiency. We also work closely with our Risk team to identify bad actors in our payment systems and mitigate financial risks. Supporting and collaborating with these and other groups within Uber is a key part of scaling our business.