Software Engineer II, PhD (Programming Systems Team)

A global technology company providing ride-sharing, food delivery, and transportation services.
$167,000 - $185,500
Backend
Mid-Level Software Engineer
Hybrid
5,000+ Employees
3+ years of experience
AI · Enterprise SaaS

Description For Software Engineer II, PhD (Programming Systems Team)

Uber's Programming Systems Group is seeking a Software Engineer II with a PhD to join their Developer platform organization. This role focuses on Java static program analysis and requires expertise in Java compiler, runtime, and bytecode. The position involves working on innovative program analysis techniques, developing static analyses, and compiler optimizations. The team works on various programming languages including Go, Java, Swift, Kotlin, and TypeScript, creating tools for performance, reliability, and developer productivity. The role offers the opportunity to work on cutting-edge projects, publish research papers, and contribute to open-source tools. The position requires a blend of academic expertise and practical software development skills, with opportunities to work on previously unsolved technical challenges. The role combines research and practical implementation, with a focus on improving Uber's development infrastructure and tools. The position offers competitive compensation and benefits, with flexible work arrangements in multiple prestigious tech hub locations.

Last updated 10 hours ago

Responsibilities For Software Engineer II, PhD (Programming Systems Team)

  • Drive exciting, ambitious, previously unsolved projects from end-to-end
  • Iterate fast to explore possible solutions
  • Make data-driven decisions with exceptional execution
  • Collaborate closely with product managers and data scientists
  • Own projects and push them forward with independence
  • Publish work at top computer science conferences

Requirements For Software Engineer II, PhD (Programming Systems Team)

Java
Go
Kubernetes
Linux
  • Ph.D. in Computer Science, Computer Engineering, or related field
  • 3+ years of professional software development experience
  • Experience with compiler design/optimization, static or dynamic analysis
  • Proficiency in Java and experience developing Java analysis tools
  • Knowledge of different compilation steps in languages like Go, C, C++, or Java
  • Strong publication record in relevant conferences
  • Deep knowledge of JVM, LLVM, GraalVM, or JIT compilation
  • Experience integrating program analysis tools into CI/CD pipelines

Benefits For Software Engineer II, PhD (Programming Systems Team)

Medical Insurance
Equity
Vision Insurance
Dental Insurance
  • Bonus program
  • Equity awards
  • Medical benefits
  • Comprehensive benefits package

Interested in this job?

Jobs Related To Uber Software Engineer II, PhD (Programming Systems Team)

Software Engineer II, Backend - Mobility & Delivery

Backend Software Engineer II position at Uber's Tech Center in São Paulo, focusing on delivery systems and logistics, requiring 3+ years of experience and expertise in Go/Java.

Partner Engineer II

Partner Engineer II position at Uber, combining technical expertise with partnership management to drive API integrations and solutions for strategic partners.

Software Dev Engineer II, AWS Clean Rooms

AWS Clean Rooms is hiring a Software Engineer II to build secure, scalable analytics solutions using AWS services in Seattle, focusing on data privacy and security features.

Software Dev Engineer II, AWS Clean Rooms

AWS Clean Rooms Software Engineer position building scalable analytics solutions with focus on privacy and security features.

Software Development Engineer II, Amazon Linux

Software Development Engineer II position at Amazon working on Amazon Linux distribution, focusing on system security, automation, and package updates for AWS infrastructure.