Software Engineer, Early Career
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 Retail Engineering, the team is responsible for the global eCommerce platform that serves millions of customers around the world. We are a team of highly skilled Engineering Managers, Engineers, Analysts and Project Managers based in Singapore, London, & Cupertino.
There is a great opportunity for talented Software Engineer with a proven track record of delivering complex software applications to work as part of a global Software Engineering team developing solutions for the online platform.
You will have the opportunity to work as part of our global strategic initiatives program, delivering real value to Apple and our partners. You will work closely with cross functional teams, understand business requirements, build high performing, scalable and robust platforms from the ground up in close collaboration with various teams around you.
Engineers at Apple work on both high level and lower-level implementation details. The successful candidate will be amenable to working in a dynamic, collaborative environment. The person filling this position must be a hands-on, enthusiastic, self-motivated developer with strong initiative and desire to succeed in a challenging environment.
You will have a real passion for extraordinary user experiences, an eye for details, possess keen judgement in selecting appropriate solutions and curious mind that stays updated with new technologies and best practices in software development.
- Bachelors or Masters degree in Computer Science, Mathematics, or relevant industry experience or equivalent is required.
- Strong object-oriented design skills, coupled with a deep knowledge of data structures and algorithms
- Proficiency in any mainstream programming language preferably Java/Python.
- Basic understanding of databases (e.g., SQL, NoSQL) and Linux/Unix commands.
- Enthusiastic about high quality software engineering, with an aptitude, willingness, and drive to learn
- Excellent written and verbal communication skills.
- Experience in building distributed systems which have been deployed to production.
- Familiarity in one or more areas like microservice architecture, distributed data processing systems, JEE frameworks etc.
- Experience with containers and container orchestration platforms such as Docker, Kubernetes or equivalent and configuration management or Infrastructure as Code (IaC) tools such as Ansible, Terraform, and Crossplane is desired.
- Familiarity with professional software development practices/tools for code reviews, source control systems, build process, testing.