Senior Software Development Engineer
Role details
Job location
Tech stack
Job description
converting monolithic applications into microservices with automated CI/CD pipelines. Enhance Apple Music APIs, MusicKit, and related developer tools to improve the experience for external developers and partners. Support infrastructure modernization initiatives, including improved observability, system resiliency, and deployment tooling. Build performant, secure, and scalable server-side services used by millions of global customers. Reduce technical debt through refactoring and migration to microservices architecture, improving long-term maintainability. Improve developer experience by creating and maintaining internal tools, libraries, and APIs to streamline engineering workflows. 40 hours/week. At Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $169,262 - $210,100/yr and your base pay will depend on your skills
Requirements
- Master's degree or foreign equivalent in Computer Science or a related field and 3 years of experience in the job offered, large-scale distributed architecture or in a software development related occupation.
- 3 years of experience in the following:
- Developing large-scale distributed backend systems using Java or functional programming languages such as Clojure, with strong object-oriented design principles, data modeling, and algorithms to build high-performance services;
- Designing microservices architectures and implementing scalable RESTful APIs for external and internal consumers;
- Writing effective tests to ensure code quality and reliability, as well as maintaining CI/CD pipelines;
- Designing, developing, and debugging concurrent and multithreaded processes in large-scale distributed systems;
- Working in Agile development environments and collaborating with cross-functional teams, including managing external dependencies and stakeholders;
- 2 years of experience in the following:
- Working with NoSQL or distributed data stores such as Redis, Apache Solr, Memcached, and Cassandra;
- Conducting performance investigations and optimization, including profiling, load testing, and reducing system latency;
- Using cloud and infrastructure technologies including AWS, Docker, Kubernetes, Kafka, Git, Gradle, Grafana, and Splunk to deploy and manage services;
- Participating in and leading design discussions and code reviews to ensure architectural consistency and best practices, and mentoring junior engineers; and
- 1 year of experience in the following:
- Applying critical thinking skills to drive technical innovation initiatives and improving developer velocity by implementing internal tools, APIs, and infrastructure modernization efforts, including migrating systems from monolithic to microservices architectures.