About the role
AI summarisedThe Software Engineer, Edge Services role at Apple involves supporting and developing software for Apple's Edge Infrastructure, which enables content distribution and DNS services for over a billion devices. The position requires strong systems, networking, and software development skills, with a focus on Go, Python, Kubernetes, and observability tools. The engineer will work in a distributed, fast-paced environment to maintain and improve global infrastructure supporting Apple's services.
TechnologyOnsiteSoftware and Services
Key Responsibilities
- Support Apple’s Edge Infrastructure for content distribution and DNS services
- Develop and maintain software for global infrastructure used by over a billion devices
- Work as part of a forward-thinking and dynamic team in a distributed environment
- Provide operational support across complex, global infrastructure
- Collaborate with cross-functional groups and mentor others
- Adopt a product-focused mindset to understand and predict user needs
- Deliver valuable product features through software development
- Work independently and collaborate effectively in a fast-paced, dynamic environment
- Contribute to the reliability and performance of Apple’s services within and outside the company
Requirements
- More than 5 years of proven ability in application development and Internet infrastructure
- Excellent organizational and communication skills
- Ability to work well as part of a distributed team
- Ability to excel in a fast-paced and dynamic environment with multi-tasking capability
- Ability to provide operational support across complex, global infrastructure
- Being a collaborative team player with willingness to mentor others
- Sound business approach for supporting global deployment
- Proficiency in Go, Python, shell scripts, and other tools as required
- Product-focused mindset to understand and predict user needs
- Ability to work independently and collaborate well in a distributed team environment
- Creative problem-solving skills
- Knowledge of networking (TCP/IP and HTTP) and security
- Knowledge of Front-end development (HTML5, TypeScript, JavaScript, React)
- Experience deploying and managing applications on Kubernetes (Helm, Pulumi, Flux)
- Experience with telemetry tools (Prometheus, Tracing, AlertManager, Splunk, Grafana)
- Strong experience with configuration management tools (Salt, Ansible)
- Experience with CI/CD tools (Spinnaker, Argo, Jenkins)
- Experience with Enterprise Linux and Linux-based server virtualization