About the Role
If you are interested in developing the future architecture of Uber's Rider stack by building its core building blocks, join the Rider Backend Platform team. We build backend architectural components and frameworks comprising of services, libraries, state storage and other building blocks that aim to optimise the core Rider flow and foundational features that are shared among all rider products, including but not limited to, Uber Rider app, UberLite, m.uber.com, etc.
What You'll Do
- Work with Rider product engineering teams to identify, design and build solutions that help scale Rider services and platforms.
- Drive adoption of best practices in code health, testing, and maintainability
- Analyze and decompose complex software systems and collaborate with cross-functional teams to influence design for scalability and testability
- Work with smart and motivated teammates in a fast-paced, collaborative environment.
- Build elegant backend platform components for high throughput and low latency distributed systems.
- Solve challenging problems with cutting edge design and algorithms.
What You'll Need
- 4+ years Strong meaningful Individual contributor experience as a software engineer
- Design: Knowledge of data structures and an eye for design. You can discuss the tradeoff between design choices, both on a theoretical level and on an applied level.
- Strong coding/debugging abilities: You have advanced knowledge of at least one programming language, and are happy to learn more. Our core languages are Go and Java.
- Fast learner: We're looking for software engineers who thrive on learning new technologies and don't believe in one-size-fits-all solutions. You should be able to adapt easily to meet the needs of our massive growth and rapidly evolving business environment.
- A team player: You believe that you can achieve more on a team -- that the whole is greater than the sum of its parts. You rely on others' candid feedback for continuous improvement.
-
Business acumen: You understand requirements beyond the written word. Whether you're working on an API used by other developers, an internal tool consumed by our operation teams, or a feature used by millions of customers, your attention to details leads to a delightful user experience.
About the Team: **Rider Backend Platform**
Builds the core building blocks needed to power the rider experiences on the different Rider facing apps including the core Uber app, Uber Lite, Web as we move on to become the preferred transportation platform for millions of riders all over the world.
Uber
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 Uber
About
Uber Technologies, Inc. functions as a technology platform for the transportation of both people and things. This firm offers multi-modal delivery services for restaurant meals, transportation services for individuals, and connection services for freight carriers and shippers. Eats, Rides, Freight, ATG, Other Bets, and Other Technology Programs are the five components that make it function well. Rides Drivers provide customers with rides in a variety of vehicles including auto-rickshaws, automobiles, minibusses, motorbikes, and taxis. Users may connect with Rides Drivers via Rides Goods.
Customers can search for and locate local restaurants, place an order for a meal, and choose to either pick it up or have it delivered via the Eats category. The Freight division is responsible for connecting carriers and shippers on the platform by utilizing its brand recognition, one-of-a-kind technology, and expertise in disrupting industries. The company was founded in 2009 by Travis Kalanick, Oscar Salazar Gaitan, and Garrett Camp, and it has its headquarters in San Francisco, California.
Company video


Connect with the team
Similar jobs
JOB DESCRIPTION:
Location: Pune, Mumbai
Mode of Work : 3 days from Office
DSA(Collections, Hash maps, trees, Linkedlist and Arrays, etc), Core Oops concepts(Multithreading, Multi Processing, Polymorphism, Inheritance etc) Annotations in Spring and Spring boot, Java 8 Vital features, database Optimization, Microsevices and Rest API
- Design, develop, and maintain low-latency, high-performance enterprise applications using Core Java (Java 5.0 and above).
- Implement and integrate APIs using Spring Framework and Apache CXF.
- Build microservices-based architecture for scalable and distributed systems.
- Collaborate with cross-functional teams for high/low-level design, development, and deployment of software solutions.
- Optimize performance through efficient multithreading, memory management, and algorithm design.
- Ensure best coding practices, conduct code reviews, and perform unit/integration testing.
- Work with RDBMS (preferably Sybase) for backend data integration.
- Analyze complex business problems and deliver innovative technology solutions in the financial/trading domain.
- Work in Unix/Linux environments for deployment and troubleshooting.
Responsibilities
- Software Engineering
- Design and develop highly scalable, available, reliable, secure and fault tolerant systems with minimal
guidance for a market leader in the logistics industry
- Partner with team members on functional and nonfunctional requirements and spread design
philosophy, goals and improve the code quality across the team
- Research new technologies and tools that enable building the next generation of our services
- Provide technology leadership to the team and foster engineering excellence
- Product Delivery
- Partner with product managers to define and execute on the feature roadmap
- Translate business requirements into scalable and extensible design
- Coordinate with various cross functional teams on planning and execution
- Maintaining automated build / test / deployment environments
Qualifications
- Software Engineering
- Should have at least 4 years of hands on experience in designing, developing, testing and deploying
applications on Java, Ruby, Kotlin, Python, Node or Go for large scale applications
- Deep knowledge of one of the programming language they have experience in
- Proficient in OOP and Design Patterns, experience with functional programming would be a plus
- Data modelling experience in Relational Databases
- Ability to design and implement low latency RESTful services
- Product Delivery
- Ability to scope, review and refine user stories for technical completeness and to alleviate dependency
risks.
- Well versed in working with agile methodologies which includes phases such as design, development,
code review, testing and release management
- Ability to have worked in a CI/CD environment, with hands on experience with Git or any similar source
code management tools
- Product Maintenance
- Experience troubleshooting server performance issues such as memory tuning, GC tuning, resource leaks
etc
- Continuously refactor applications to ensure high quality design.

- Design, construct, test and maintain robust and scalable data pipelines.
- Research, prototype and apply different methods to improve data reliability, fault tolerance and system performance.
- Instrument, monitor and troubleshoot these systems in a Production environment.
- Contribute to design reviews, code reviews, integration and automated testing.
- Adopt and improve our Agile development process.
- Writing effective and scalable Python codes
- Designing and implementing robust applications
- Debugging applications to ensure low-latency and high-availability
- Integrating user-facing elements with server-side logic
- Implementing security and data protection
- Accommodating various data storage solutions
Key Requirements
- Degree in Computer Science, Engineering or a related field
- You have prior experience as a Python Developer
- Good knowledge Django, Flask or similar Python frameworks
- Familiarity with front-end technologies, such as JavaScript, HTML5, and CSS3
- Knowledge of ORM (Object Relational Mapper)
- Familiarity with various testing tools.
- You will design, build and own APIs and Services, which will be the core of the product.
- You will participate in continuing education and training to remain current on best practices, learn new programming languages, and better assist other team members.
- You will part of developing ideas for new programs, products, or features by monitoring industry developments and trends.
- You will have to take lead on projects, compile and analyze data, processes, and codes to troubleshoot problems and identify areas of improvement.
REQUIREMENTS
- 3-5 years of experience in building highly scalable backend systems.
- Fluency or understanding of specific languages, such as JAVA, Operating System may be required, and Experience in Databases such as MySQL or Postgre SQL
- Strong understanding of Computer Science Fundamentals, Data Structures and Algorithms, SOLID Design Principles, and REST Patterns.
- Focus on efficiency, user experience, and process improvement.
- Excellent project and time management skills.
- Strong problem-solving and communication skills.
- Ability to work independently or with a group
Designing and developing high-volume, low-latency applications for
critical systems and delivering high-availability and performance
• Contributing in all phases of the development lifecycle
• Writing well designed, testable, efficient code
• Test cases should be upto the mark
• Performance tuning knowledge is a must. Experience is an added advantage.
• In Backend – fundamentals of all languages is a must• Good hands-on software development experience with proven working experience
in Python development
• Expert in Python, with knowledge of at least one Python web framework (such
as Django, Flask)
• Familiarity with some ORM (Object Relational Mapper) libraries
• Able to integrate multiple data sources and databases into one system
• Understanding of the threading limitations of Python, and multi-process
architecture
• Strong unit test and debugging skills
• Basic understanding of front-end technologies, such as JavaScript, HTML5, and
CSS3
• Understanding of memory model/GC from performance point of view.







