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. At the Apple Online Store (AOS), its Engineering team is responsible for the global eCommerce platform that serves millions of customers around the world. We are a team highly skilled Engineering Managers, Engineers, Analysts and Project Managers based in London, Cupertino and Singapore. This is a superb opportunity for talented Software Engineers to work as part of a global Software Engineering team, and deliver ground-breaking eCommerce features to Apple’s customers, including business and education consumers.
- A strong foundation in Computer Science fundamentals such as data structures and algorithms is required
- Proven knowledge of Java, preferably Java 11
- Knowledge of designing scalable server-side web applications
- Experience of working with Spring, Spring MVC and Spring Data would be a significant advantage
- Knowledge of one major relational or NoSQL database
- Commitment to code quality with experience of automated testing techniques (both static and dynamic)
The ideal candidate for this role will demonstrate the following characteristics and experience: - Flexible attitude and willing to take on new challenges – someone who is dynamic, high-energy and works with a sense of urgency. - Must possess aptitude for grasping new technical concepts. - Strong understanding of the full life-cycle development process. Must understand both agile and traditional development techniques, and be eager to influence the processes adopted by the team in delivering projects. - Adhere and contribute towards architectural & development techniques and standards. - 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.