Software Engineer II

Uber Uber · Consumer · Sunnyvale, CA · Engineering

Software Engineer II role at Uber focused on designing, developing, and testing software applications. Responsibilities include applying technical knowledge to evaluate complex data and projects, supporting business operations, improving engineering productivity, building software components, solving production issues, collaborating with cross-functional teams, and driving best practices in code quality and maintainability. Requires experience with C++, Python, Java, GIT, SQL, data structures, algorithms, distributed systems, and various web development technologies.

What you'd actually do

  1. Design, develop, and test software applications.
  2. Apply technical knowledge to evaluate complex data, developments, and projects in order to provide recommendations to resolve technical issues.
  3. Support the company's business operations and improve engineering productivity.
  4. Build software components that can be integrated into a fully functional software system.
  5. Solve production issues in product and system reliability.

Skills

Required

  • C++
  • Python
  • Java
  • GIT
  • SVN
  • SQL
  • MySQL
  • Data structures
  • Algorithms
  • Distributed systems
  • Software Development Lifecycle
  • Frontend web development
  • Javascript
  • TypeScript
  • React
  • Redux
  • Node.js
  • GraphQL
  • Figma
  • Testing frameworks
  • Mockito
  • React-testing
  • Jest