Apple Media Products (AMP) - Java Software Engineer, Delivery Engineering
London, Greater London, United Kingdom
Software and Services
Are you interested in shaping next generation Application and Infrastructure architecture at a scale that everyone dreams of? AMP Delivery Engineering; mission is to improve every Engineer’s life at Apple Media Products through building innovative and state of the art tools that span wide spectrum in Software Development Life Cycle (SDLC). If you are a smart software engineer who loves working on the underlying infrastructure and is passionate about innovating ways of working across a whole team, AMP Delivery Engineering would love to hear from you. Apple is looking for a highly motivated individual contributor / Architect to join the Delivery Engineering team. You will be a key part in crafting the future architecture of Apple Media Products services and how they are developed as well as deployed that delight Apple customers.
- A strong foundation in Computer Science fundamentals such as data structures and algorithms is required.
- Several years of experience of programming in Java
- Experience of Scala, Ruby, Python or Perl are beneficial
- Practical experience building and testing RESTful services.
- Proven experience architecting, developing and deploying internet-scale, distributed and mission critical services is required.
- Strong software and system design skills are required.
- Strong experience with improving Software Development Lifecycle and CI/CD pipelines.
- Deep expertise in software testing frameworks, Canary Analysis, Chaos Engineering efforts
- Some experience with large-scale datacenter application deployments including monitoring and capacity planning.
- Hands on experience with Build & Deploy technologies such as Maven, Gradle, Jenkins, Artifactory/Nexus, GIT, Puppet/Chef and exposure to UNIX based system administration experience
- Ability to communicate effectively, both written and verbal, with technical and non-technical cross-functional teams.
- A desire to work in a fast-paced and challenging work environment.
We are looking for a self-starting, ambitious individual with very strong software development experience placing emphasis on quality, productivity and taking responsibility for the whole build and deploy lifecycle. You should have at least 5 years of experience in working on internet-scale services. As part of the iTunes engineering team, your responsibilities include working closely with other engineering team members, Build team, QA engineers, and site reliability engineers. You should not be afraid to question assumptions and should possess excellent verbal, written and communication skills. You will need to have both the technical chops and the interpersonal skills to articulate your ideas as well as influence others. AMP Delivery Engineers are team members of an agile development process. We are responsible for the design and implementation of applications’ build, release, deployment, configuration activities as well as tools and framework development. Other responsibilities include working with internal business partners to gather requirements, prototyping, architecting, implementing/updating solutions, building and executing test plans, performing quality reviews, managing operations, and triaging and fixing operational issues. AMP Delivery Engineers should be able to adjust to constant business change; common types of changes include new requirements, evolving goals and strategies, and emerging technologies. AMP Engineers require the ability to interact, develop, engineer, and communicate collaboratively at the highest technical levels with clients, vendors, partners, and all levels of staff.
Education & Experience
Bachelors or Masters degree in Computer Science, Mathematics, or meaningful industry experience preferred