About the Role
Staff Engineers at Uber have a deep impact across a wide variety of business and technology decisions spanning multiple projects and locations. They are passionate technologists, able to design scalable systems while delivering efficient code. They are not only collaborative role models, but also approachable leaders within a larger group. They are humble teachers, technically mentoring a team of talented engineers while also executing on delivering uniquely ambitious projects. We are looking for someone with a passion for architecting, building and scaling highly-available, critical systems that support millions of users every day.
This is a unique opportunity for an experienced engineer who is collaborative, has a healthy sense of curiosity and acts with responsibility to join Uber, work with talented people across the board and help improve our next generation infrastructure systems, scaling it to the next level. You will dig into the complex but rewarding world of money systems, real-time tax calculation, invoicing and reporting, all at extensive scale. Our work helps our partners be globally compliant and Uber be competitive in highly regulated and complex industries such as transportation, logistics, and food.
What you'll do
- Build vision - Take ownership of a vaguely defined business problem, see the big picture, and identify strategically important problems, inefficiencies, or opportunities for meaningful improvements. Drive alignment on how to seek and deliver highly leverage-able solutions at the group and organization levels.
- Demonstrate tech expertise - Demonstrate the ability to go very deep in solving classes of problems or crafting solutions.
- Execute large scale projects - Provide technical leadership in architecting and building distributed systems. Subdivide the work into monthly/quarterly sprints and compartmentalize across functions or teams and ensure everyone knows how they fit in.
- Collaborate across teams - Collaborate with others to deliver a result, from hardworking team members within your group, through smart technologists across product lines, to responsible leaders across Uber.
- Coach engineers - Be a role model on acting with good judgment and responsibility. Be a humble mentor and trusted advisor for both your team members and the broader set of passionate leaders alike. Deal with a difference in opinions in a mature and fair way, helping teams to commit and move forward
- Raise the bar - Up the bar on sustainable engineering by improving standard methodologies, producing best-in-class code, documentation, testing, and monitoring
What's in it for you
- Join one of the most exciting companies in the world and directly impact the way people experience their cities
- Work with a best-in-class engineering team, with plenty of opportunities for growth
- Competitive compensation including stock options
- Activity-based workspaces, with a variety of spaces to cultivate creativity, increase productivity and improve health and wellness.
- Parental leave and multiple additional parenting benefits
- Private Medical & Dental Insurance
- Daily meals in the office
- Wellness Benefits and gym allowance
- Monthly phone allowance
- Flexible working arrangements
Visit our Sofia Engineering website here.
Be sure to check out the Uber Engineering Blog to learn more about our team.
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 10,000 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.
What You'll Need
- Bachelor's degree or higher in an engineering field (e.g. Computer Science, Computer Engineering, etc.)
- 15+ years experience designing, implementing large scale distributed systems (serving 5K+ QPS, participating in 100M+ in transactions)
- Advanced knowledge of multiple programming languages, data store systems and message queues. We use programming languages like Go, Java, data stores like Cassandra, DynamoDB, Redis, and MQs like Kafka - any programming language is fine.
- Deep, industry leading expertise in one or more technology domains and are the "go-to" person for the areas of their business.
- A track record of building large-scale systems that tackle complex business problems.
- Experienced and hands-on understanding of fault-tolerant systems and multi-datacenter/cloud architectures.
- 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.
- mentoring engineers.