Software Development Engineer, Amazon Java Runtime
Core
Design, implement, and benchmark improvements to the Java Virtual Machine (JVM), specifically focusing on the JIT compiler, garbage collection, and systems-level software optimization to enhance performance and efficiency for Amazon's production services.
Role type
Senior IC Runtime Engineer (JVM)
Builds
Optimized Java runtime (JVM) and associated tooling for x86 and Graviton (AArch64) fleets
Domain
Systems programming, JVM internals, compiler optimization, high-performance computing
Deliverable
production ML models | product features | infrastructure
Required skills
JIT compiler design, garbage collection algorithms, systems-level optimization, profiling and observability, OpenJDK contribution, architecture and design patterns, benchmarking, x86 and AArch64 architecture knowledge
Preferred skills
Full software development lifecycle experience, ARM CPU knowledge, upstream open-source contributions, published performance work, deep knowledge of specific GC algorithms (G1, ZGC, Shenandoah)
Technologies
OpenJDK, Corretto JDK, HotSpot JVM, x86, Graviton (AArch64)
Responsibilities
Analyze production JVM workloads to identify compiler, GC, and runtime bottlenecks; Design, implement, and benchmark improvements to JIT compilation, garbage collection, and core runtime subsystems; Contribute changes upstream to OpenJDK and Amazon Corretto; Tune runtime behavior for performance and efficiency across x86 and Graviton architectures; Build and improve profiling, observability, and auto-tuning tooling; Validate performance and reliability of changes against real workloads; Partner with service teams to drive adoption of runtime improvements
Seniority
Senior, hands-on IC with mentorship/tech lead experience