The Java Virtual Machine Runtime Team is responsible for the development and maintenance of the virtual execution environment running the Java platform. The team excels in areas ranging from Java Virtual Machine specification adherence, memory allocation, signals, synchronization & locking, JNI, JFR, threading to support and/or use the latest Java features from projects Amber, Loom, Panama, & Valhalla.
The team is looking for a Java/C++ Developer to work closely with the JFR team, located in Stockholm. In this creative role, you will help innovate and implement the next generation of Java monitoring and profiling.
You will be working closely with the JFR team, located in Stockholm. In a creative role, you will help innovate and implement the next generation of Java monitoring and profiling. Additional job responsibilities include working with external developers on OpenJDK, customers, and partners on defects and feature improvement requests for future releases.
Responsibilities
- Deliver stable and secure features and bug fixes in a timely fashion
- Design and deliver new features in high-profile projects
- Take initiatives to debug and solve difficult issues
- Take responsibility for the Runtime code base through active participation in design discussions and code reviews
- Work with external developers on OpenJDK, customers, and partners on defects and feature improvement requests for future releases
- Communicate and collaborate within a distributed JVM team and Java development organization
- Lead through example and mentor junior developers
Skills & Experience
- B.S. or above, Computer Science, Engineering or equivalent degree
- 10+ years proven experience
- Strong on data structures, algorithms, performance tuning, threading and concurrency
- Strong Java programming skills and experience with API design
- Strong C/C++ programming background and experience with assembly
- Experience with bytecode engineering and JVMTI is a plus
- Experience with debugging in multi-platform environments (Windows, Linux, Mac) is a plus
- Experience with implementing Java Virtual Machine features is a plus
- Familiarity with performance engineering, such as benchmarking, optimization work
- Familiarity with test automation tools and practices (unit and system level automation)
- Familiarity with profiling and monitoring such as designing and implementing APM systems.
- Excellent communication skills