Software Engineer Ii, Backend

Uber Uber · Consumer · Rio de Janeiro, Brazil +1 · Engineering

Software Engineer II, Backend at Uber, focusing on building and operating high-impact backend components and features for their Delivery or Mobility Orgs. Requires 4+ years of experience in full-cycle development, proficiency in backend languages, and strong CS fundamentals. Experience with distributed systems and international collaboration is preferred.

What you'd actually do

  1. Own the design and implementation of high-impact backend components and features, ensuring they are modular, scalable, and efficient.
  2. Deliver technical solutions independently across the full software development lifecycle.
  3. Tackle complex problems with multiple dependencies, making sound technical tradeoffs.
  4. Write robust, efficient, and easily maintainable code while championing best practices like rigorous testing and code health.
  5. Proactively identify, isolate, and resolve issues in production. Participate in on-call rotations and address stakeholder inquiries, following a structured approach to troubleshooting, debugging, and establishing monitoring for your components.

Skills

Required

  • Golang
  • Java
  • C++
  • Python
  • algorithms
  • data structures
  • complexity analysis
  • modular component design
  • system trade-offs
  • SQL
  • NoSQL
  • code reviews
  • design reviews
  • English proficiency

Nice to have

  • highly concurrent, distributed systems at scale
  • international stakeholders
  • distributed teams
  • resilience
  • adaptability
  • fast-paced environments
  • shifting priorities
  • ambiguity

What the JD emphasized

  • solid experience acting independently across the full software development lifecycle
  • demonstrated track record of writing comprehensive test cases and considering critical edge cases before deployment
  • Experience building and operating highly concurrent, distributed systems at scale