Building resilient and reliable distributed software systems at Apple's scale
Requirements
- Hands-on software development experience with Java or Kotlin
- Development and operational experience with REST and/or gRPC services
- Experience with containerization and orchestration (e.g. Docker, Kubernetes)
- Time spent architecting, building, supporting or otherwise working on cloud-native (e.g. AWS) applications
- Familiarity with CI/CD pipelines and infrastructure as code
- Experience with observability tools (e.g. Prometheus, Grafana, OpenTelemetry, Datadog)
- Hands-on experience with SQL/NoSQL databases (e.g. Aurora, DynamoDB, CockroachDB, Oracle)
Responsibilities
- Design, build, test, deliver and maintain exceptional software
- Take full ownership of solutions
- Actively shape the architecture and design of platforms and offerings
- Operate, monitor, and provide on-call support for software
- Participate in technical discussions
- Write specifications
- Review code and produce documentation
Other
- Bachelor’s or Master’s degree in Computer Science or a related technical field, or at least 5 years of industry experience in a software engineering role
- Strong self-motivation, crisp and clear communication, and a highly collaborative approach
- Ability to work effectively across teams and disciplines
- Commitment to continuous learning and improvement, and curiosity for new technologies
- No formal degree is required, but a mindset, initiative, and ability to apply skills to real-world applications is necessary