Senior Software Engineer (Java) – Apple Online Store
Uxbridge, Greater London, United Kingdom
We’re a diverse collection of thinkers and doers, continually reimagining our products, systems, and practices to help people do what they love in new ways. This is a deeply collaborative place, where everything we create is the result of people in different roles and teams working together to make each other’s ideas stronger. That same passion for innovation that goes into our products also applies to our practices, strengthening our commitment to leave the world better than we found it! Today, the Apple Online Store provides one of the best multichannel commerce experiences in the world, and operates in 37 countries world-wide. The Apple Online Store Engineering team is responsible for the global eCommerce platform that serves millions of customers around the world. This is a superb opportunity for a talented Software Engineer with a proven track record of delivering complex software applications to focus on the design and development of the core services and fabric of an eCommerce system.
- A solid foundation in Computer Science fundamentals such as data structures and algorithms
- Significant years of experience in Java (preferably Java 11) and Service Oriented Architecture
- Experience with Spring, Spring MVC and Spring Data would be a significant advantage
- In-depth knowledge of architecting and designing scalable server-side web applications
- Significant years of experience with a major relational or NoSQL database
- Commitment to code quality with experience of automated testing techniques (both static and dynamic)
- Proven experience with Agile Development methodologies
- Exposure to asynchronous messaging concepts
The ideal candidate for this role will demonstrate the following characteristics and experience: • Conscientious forward thinking individual, ready to seek and define future visions, rather than simply maintaining status quo. • Understanding of SEO best practices within eCommerce a distinct advantage. • An in-depth understanding of Internet technologies and architectures and general application development. • Flexible attitude and willing to take on new challenges – someone who is dynamic, high-energy and works with a sense of urgency. • Strong understanding of the full life-cycle development process and be eager to influence the processes adopted by the team in delivering projects. • Adhere and contribute towards architectural & development techniques and standards. • Willingness to work across the entire software stack, from provisioning of infrastructure through to software design, development and support • Work timings will vary 4 to 5 days a month to support engineering activities with global teams.
Education & Experience
Bachelors or Masters in a Computer Science, Mathematics or related Engineering field.
- Travel to the United States will be required once or twice a year.