Senior Software Engineer
Santa Clara Valley (Cupertino), California, United States
Software and Services
Apple Media Products (AMP) has been leading the digital media industry by constantly developing innovative features since its launch in April 2003. This includes the incredibly successful App Store, Apple Music, and more. We are looking for a self starting, energetic individual who is not afraid to question assumptions and with excellent written and oral communication skills. The candidate should have experience developing large-scale systems. The ability to be a good team player under tight deadline constraints in addition to ability to tackle problems with imaginative solutions is key to success in this position.
- 5+ years crafting, implementing and supporting highly scalable backend applications.
- Deep understanding of HTTP and REST APIs.
- Ability to craft and establish coding patterns/standards across multiple code repositories.
- Mentor team members on writing code that is efficient, maintainable and testable.
- Ability to transition seamlessly to new technologies/frameworks.
- Experience crafting and building distributed systems with strong latency and SLA requirements.
- Strong experience with Java and the Java ecosystem.
- Deep understanding of multi-threaded programming concepts and the ability to thrive on highly collaborative, multi-functional projects that are high profile and critical to the Apple Media Products services (App Store, Apple Music, etc).
- Experience with NoSQL & technologies like Cassandra preferred.
As an Engineer in the Infrastructure team, you will: - Be designing, developing and deploying large scale services and platforms. - Be a product owner with a vision for what you are building for our internal customers. - Be a team mate, a leader, a student, and a mentor. - Be eager to learn new technologies and solutions. - Be curious about how systems work and how they fail, design them to be sustainable in the face of failures. - Have some cool war stories to tell from your past experience. - Believe in automation and tooling as a critical part of the software lifecycle. - Love measuring all things so we can make the right decisions.
Education & Experience
Bachelors degree in Computer Science or equivalent