Software Engineer - II FinTech
About the Role
We are looking for someone passionate about using technology to solve big business problems and is hungry to make a difference. You have created software that can scale and handle complex interchange of data and compute between multiple geographical locations. You are excellent at fundamentals, have a phenomenal willingness to learn, and have a steadfast desire to follow through with the job. Someone with a passion for architecting, building and scaling highly-available, mission-critical systems that support millions of users every day basis.
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 like minded people across the board and help improve our next generation FinTech platforms and scaling it to the next level.
What You'll Do
- Designing and developing backend systems to automate Finance business processes leveraging Uber internal infrastructure platforms.
- Work closely with a fun and highly collaborative cross-functional team of Engineers, Product Managers and Data Analysts.
- Set the best engineering practices and mentor junior team members
What You'll Need
- MS/BS in Computer science and at least 3+ years of individual contributor experience as a software engineer
- Coding chops, clean, elegant, bug-free code in any of the following languages - Java, C++, GO
- Prior experience as a tech lead who has mentored/led small teams in building product features at scale
- The ability to go deep, but also appreciate the challenge of going broad. Uber has a huge stack, and we're all over it: backend services, real-time dispatch, machine learning, mobile, web development, data and analytics, infrastructure, marketing systems.
- Solid understanding of distributed systems architecture - consensus, convergence, load balancing, data consistency and performance/efficiency constructs
- Identify and resolve performance and scalability issues
- Intelligence. High adaptability. Ability to learn quickly.
- Strong desire to learn and grow, while building the best in class systems
- Strong flair for effective communication and collaboration - you know when to push on and when to step back
- An ability to have fun while working on the hardest problems
- Experience with Java, Go, C, or C++ (bonus points for more than one).
- Detailed problem-solving approach and knowledge of algorithms, data structures, and complexity analysis.
- Solid experience building reliable, fault-tolerant distributed systems and fundamentals - consensus, convergence, load balancing, data consistency and performance/efficiency constructs
- Strong desire to learn and grow, while building the best in class systems and a strong feeling of ownership coupled with collaboration
- Excellent written and verbal communication skills, including the ability to write detailed technical documents.
- An ability to have fun while working on the hardest problems.
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.
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, Veteran Status, or any other characteristic protected by law.
Europe, Middle East & Africa
United States & Canada
Life at Uber