Sr Software Engineer II - Machine Learning

Sr Software Engineer II - Machine Learning

About the role:

Partners with stakeholders to design, develop, optimize, and productionize machine learning (ML) or ML-based solutions and systems that are used within a team to solve complex problems with multiple dependencies. This role also leads team efforts to leverage and improve ML infrastructure for model development, training, deployment needs and scaling ML systems.

About the Team:

The Trusted Identity team plays a crucial role in our mission to thoroughly verify the identity of our customers (riders) and partners (drivers, restaurants, freight companies) while ensuring powerful, intuitive and frictionless user experiences. Our continued obsession with innovation in the space is essential to ensure safety as people interact on Uber's platform.

Core competencies:

Technical Competency: Maintains and applies thorough and up-to-date knowledge of ML and experimentation methods (e.g., A/B testing) to design, develop, optimize, and productionize ML or ML-based solutions and systems by developing and testing hypotheses, analyzing large quantities of data, prototyping and validating ideas and systems, and adapting and creating optimized algorithms, models, and other solutions. Serves as a domain resource inside and outside their own team to adopt Uber and industry standards to leverage and improve ML infrastructure for model development, training, deployment needs and scaling ML systems. Improves Uber technical standards and leads the adoption of Uber and industry standards and best practices within the team or project.

Coding: Writes high-quality code (i.e., reliable, readable, efficient, testable), provides quality code reviews, and creates comprehensive tests and quality documentation to solve complex problems that are not well-defined and span multiple areas or projects. This includes knowledge of data structures, algorithms, programming and associated programming languages and frameworks, and major phases/activities of the software research and development life cycle (e.g., requirements, design, build, experiment, test, debug, deploy, monitor). Monitors, reports, and ensures resolution of complex technical problems according to standards and best practices.

Design & Architecture: Partners with stakeholders to understand customer and/or business requirements. Translates requirements into effective design documents to address clearly defined business or technical problems. Provides expertise to make trade-off decisions between short-term results and long-term goals.

Efficiency & Being a Force Multiplier: Creates and promotes efficiency and speed within team by leveraging and improving existing solutions, developing extensible solutions, and reconciling gaps and redundancy within team. Identifies opportunities and advocates for better performance and efficiency of the team's software and systems.

Operational Execution: Manages and executes ambiguous technical projects and solutions with drive and appropriate sense of urgency to deliver technical and business impact within the team. Plans, organizes, and manages tasks, resources, and timelines within a team to accomplish work accurately and on time. Defines and diagnoses ambiguous problems and determines an appropriate solution, recommendation, or decision while logically evaluating alternatives and factors (e.g., resources, costs, tradeoffs). Anticipates roadblocks and develops strategies to mitigate risk.

Collaboration: Listens to and supports ideas/opinions of others from diverse backgrounds and experiences. Proactively builds and maintains collaborative and trusting relationships with multiple stakeholders within the team. Recognizes conflict or disputes among people and situations; mediates open communication of different points of view to resolve conflicts and meet shared goals. Provides constructive and actionable feedback to others to help improve the entire team.

Citizenship: Enhances the effective functioning of Uber by participating in and promoting activities and efforts that contribute to the engineering and/or people culture in the team such as mentoring junior engineers. Represents the team to the broader community through participation in internally- and/or externally-focused engagements (e.g., tech talks, open source, conferences, team building).

Minimum qualifications:

  • PhD or equivalent in Computer Science, Engineering, Mathematics or related field OR 3-years full-time Software Engineering work experience, WHICH INCLUDES 2-years total technical software engineering experience in one or more of the following areas:
    • Programming language (e.g. C, C++, Java, Python, or Go)
    • Training using data structures and algorithms
    • Modern machine learning algorithms (e.g., tree-based techniques, supervised, deep, or probabilistic learning)
    • Machine Learning Software such as Tensorflow/Pytorch, Caffe, Scikit-Learn, or Spark MLLib
  • Note the 2-years total of specialized software engineering experience may have been gained through education and full-time work experience, additional training, coursework, research, or similar (OR some combination of these). The years of specialized experience are not necessarily in addition to the years of Education & full-time work experience indicated.

Technical skills:

Required:

  • Scalable ML architecture
  • Feature management

"For Colorado-based applicants: Please refer to this role in our careers page for more details on your total compensation and benefits package. You can get there by clicking 'apply' if you're not already on our careers site. #LI-Remote

For Colorado-based roles: The salary/hourly rate range for this role is $172,125 per year - $191,250 per year. You will be eligible to participate in Uber's bonus program, and may be offered an equity award, commissions, & other types of comp. You will also be eligible for various benefits. More details about our company benefits can be found at the following link: https://www.uber.com/careers/benefits.

At Uber, we reimagine the way the world moves for the better. The idea was born on a snowy night in Paris in 2008, and ever since then, our DNA of reimagination and reinvention carries on. We've grown into a global platform moving people and things in ever-expanding ways, taking on big problems to help drivers, riders, delivery partners, and eaters make movement happen at the push of a button for everyone, everywhere.

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/Affirmative Action employer. All qualified applicants will receive consideration for employment without regard to sex, gender identity, sexual orientation, race, color, religion, national origin, disability, protected Veteran status, age, or any other characteristic protected by law. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you have a disability or special need that requires accommodation, please let us know by completing this form.

Logos/outerjoin logo full

Outer Join is the premier job board for remote jobs in data science, analytics, and engineering.