Apple

Software Engineer, Edge Services

Apple
TechnologySingaporeOnsitePosted 5 months ago

About the role

AI summarised

The 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