Software Engineer - Hardware Engineering Tools and Applications

Santa Clara Valley (Cupertino), California, United States
Software and Services


Weekly Hours: 40
Role Number:200156995
Want to affect the lives of millions of Apple customers? Apple Hardware Engineering is looking for a Software Engineer to envision, design, develop and handle internal applications and software tools. You will give to a wide range of projects, each passionating about improving the engineering process, design and quality of next generation Apple products, spanning various languages and technical environments, operating at multiple levels in the stack. With an eye for clear design, you will have excellent analytical skills and problem solving abilities. You will be independently driven, willing to dive into any project or codebase headfirst to deliver a creative, scalable, efficient solution for the best hardware engineering team in the world. Join our team!

Key Qualifications

  • Design and develop enterprise-level, highly available web applications and services utilizing Java, Groovy/Grails and other Java EE technologies.
  • Work with front-end frameworks such as React.
  • Give to technology-driven team and act as resource on the latest technologies, methods and methodologies.
  • Develop critical system components and review team work for accuracy, quality, and completeness.
  • Develop prototypes and POCs to demonstrate new ideas and the use of new technologies.
  • Generate requirements, define use cases and brainstorm solutions with hardware engineering and multi-functional partners.
  • Work under aggressive schedules, independently and within a larger project context, to achieve initiatives.
  • Drive documentation of technical design and system architecture.


Experience developing multi-tier applications using modern web frameworks, Java EE technologies and RESTful web services. Experience in system design, integration and deployment in a complex, coordinated environment. Experience with microservice architectures and frameworks like Spring and Hibernate. Experience in relational databases, high-performance SQL. Experience with Python, Perl or other scripting languages. Experience working with client facing MVC web applications. Experience in data modeling and design, supporting agility and scale. Ability to learn new technologies and implement in a short time. Dedication to developing high-quality, maintainable code to meet complex, changing requirements. Strong interpersonal skills and ability to work optimally across business and technical teams. Thrives in a complex and ambiguous work environment, independently or as part of a team Get-it-done attitude!

Education & Experience

Bachelor’s / Master’s degree in CS or related field

Additional Requirements