H-1B Job Board

Finding companies that sponsor visas is a lot of work.
We've made your life easier by compiling top companies and startups that hire foreign nationals.

Sr. Software Engineer - Traffic, JVM Frameworks (ASE)



Software Engineering
Seattle, WA, USA
Posted on Wednesday, May 29, 2024


Weekly Hours: 40
Role Number:200553004
Apple services make extensive use of Java Virtual Machine (JVM) and Java Development Kit (JDK) technology. Apple services therefore need world class libraries in order to operate in a distributed, performant, and reliant fashion. A few examples of libraries in the JVM space that are lead by our team are Netty (https://netty.io/) and ServiceTalk (https://servicetalk.io/). Team members are passionate about working across a large organization to understand where library changes are justified, configuration changes, or if application tuning would be sufficient. If you are interested in digging into networking protocols all the way up to exposing these capabilities in a user friendly fashion then we’d love to hear from you!


As an experienced software engineer you will contribute to and build JVM based libraries that enable services at Apple’s scale. This is an opportunity to demonstrate your leadership skills, influencing and improving the networking stack for Apple services. You will have the opportunity to work with a team which has set its sights on improving impact across Apple. Senior engineers will be expected to excel at making informed technology choices within complex architectures, whether it's deciding to build or buy specific components and selecting the right frameworks. Your deep understanding of the organization's business, products, customers, and strategy will empower us to pinpoint opportunities aligning with our team's mission. We expect senior engineers to make decisive choices even amid conflicting perspectives, demonstrating our commitment by disagreeing when necessary and then committing to the chosen path. Navigating ambiguity is our strength - you will concentrate on the broader objectives, goals, and desired impact, taking deliberate steps forward. Our dedication extends to coaching and mentoring teammates, considering their unique skills, backgrounds, and working styles. You will actively seek and provide constructive feedback to foster growth within our team. Here you will find that we: • Have a peaceful work environment where you can choose when to socialize and when to focus. • Provide technical guidance and mentorship as needed. • Have an encouraging and growth-focused workplace culture. • Encourage you to use accrued vacation time and maintain a healthy work-life balance. • Offer excellent benefits!

Minimum Qualifications

  • Expert knowledge of Java
  • Java API design and evolution through the lifetime of a library
  • Understanding of concurrency and multi-threaded concepts
  • Proficient with networking and inter-process communication. Understanding of popular networking protocols such as HTTP/1.x and HTTP/2 is desirable.
  • Deep knowledge of Java Memory Model
  • Understanding of how to do JVM performance analysis and make corresponding improvements
  • Professional experience partnering with application and library developers to write more friendly code for the JVM/JDK
  • Understanding of Java Development Kit (e.g. Java APIs and library implementations)
  • General knowledge about Garbage Collection and its impacts on library/application development
  • General knowledge about JIT technologies and its impacts on library/application development

Key Qualifications

Preferred Qualifications

  • C++/JNI knowledge

Education & Experience

Additional Requirements

Pay & Benefits

  • Apple is an equal opportunity employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.