Senior Software Engineer, Apple Services Engineering

Cupertino, California, United States
Software and Services

Summary

Posted:
Role Number:200549231
Imagine what we could do together. At Apple, new ideas have a way of becoming phenomenal products, services, and customer experiences very quickly. Bring passion and dedication to your job, and there’s no telling what we could accomplish. The Apple Cloud Platform - Developer Experience Team is responsible for building cloud-focused tooling to help make developers more effective on the iCloud Platform. We integrate mobile, desktop and cloud systems into a single experience that brings powerful features to our developers. Our team is looking for a Server Side Software Engineer with a passion for developing extraordinary, highly scalable, and resilient systems with knowledge and hands-on experience in developer tools and server engineering. You can help make a difference by working on products that are public-facing and affect thousands of developers and hundreds of millions of end users.

Key Qualifications

  • Java engineer with production-level experience
  • Java JDK Concurrency, multithreaded programming APIs
  • Experience with relational and non-relational data stores and concepts
  • Experience with public cloud providers like AWS, Azure or Google Cloud

Description

We are a small team in the Apple Services Engineering organization, focused on building developer experiences to improve the efficiency of both internal and external teams. In addition to helping developers focus on their application work, we are also introducing technologies that better position developers to take advantage of the Apple Ecosystem, both now and in the future. We also maintain a telemetry and logging platform to ingest, process and visualize application data real time. In this role, you would be responsible for helping build out server side applications and infrastructure to help manage developer workflows. Job Responsibilities • Build server infrastructure which powers Apple Cloud Platform developer tools • Design and implement thoughtful and concise private and public REST APIs using the OpenAPI Specification • Design public client libraries for internal and external consumers • Develop distributed systems at an Internet scale and deploy them as microservices • Build tooling and infrastructure that enable software development standard methodologies in terms of automation, testing, and delivery

Education & Experience

Bachelor's Degree, or above, in an engineering related field, or equivalent related experience

Additional Requirements

  • While the following are not necessary, these skills would be advantageous:
  • • Experience with big data technologies like Spark, HDFS, Iceberg or any distributed data storage.
  • • Knowledge of Continuous Integration and Continuous Delivery, along with the tools which support these
  • • Interest in server-side Swift programming
  • • Experience with Netty, Jetty, Spring Boot or similar frameworks
  • • Experience with tools such as Gradle, Maven, etc.
  • • Dependency Management
  • • Serverless/FAAS experience
  • • Swift, Objective C, or C++ experience

Pay & Benefits