Apple Information Systems and Technology group is looking to solve various technical problems to improve how Apple operates and craft magical experiences for customers
Requirements
- Exposure to using CI/CD tools to build, test, deploy, and release containerized software applications on cloud-based Kubernetes (e.g. AWS EKS, GCP GKE, Azure AKS, etc)
- Familiarity with Java web (e.g. ServiceTalk, Spring, Dropwizard, Quarkus, Micronaut, etc.) and unit testing frameworks (e.g. JUnit, Mockito, etc)
- Familiarity with tooling languages (e.g. Go, Python, Ruby, etc) and distributed orchestration & computing systems (e.g. Airflow, Spark, Flink, etc)
- Basic understanding of JVM internals (e.g. garbage collection, memory allocation, JIT, JNI, etc)
- Basic knowledge of networking concepts & protocols (e.g. HTTP/HTTPS, CDN, edge computing, load balancing, OSI model, etc)
- Familiarity with OOP principles, data structures, algorithms, and software design patterns (e.g. GoF)
- 1+ years proven experience using relational (e.g. Postgres, MySQL, etc) and NoSQL (e.g. Cassandra, MongoDB, etc) databases
Responsibilities
- Develop, test, document, improve, and maintain code mostly in Java (and other languages as needed)
- Partake in every aspect of projects, from planning to design to implementation and future iterations
- Design and manage systems, frameworks, and apps that countless Apple customers and employees rely on every day
- Improve how Apple operates, freeing employees to do what they do best, and crafting magical experiences for customers
- Work on apple.com to software for digital & physical Apple Stores
- Work on software for Apple Care to Apple-wide systems for identity, operations, recruiting, and people management
- Work on software for Apple data centers to Apple-wide data processing & AI/ML systems
Other
- B.S. in Computer Science, Computer Engineering, or a related technical field, or equivalent professional work experience
- 2+ years proven experience developing software in a professional capacity
- 1+ years proven experience implementing cloud-based distributed systems
- Excellent communication and collaboration skills to work with various members of their immediate and extended team
- Self-motivated, pro-active and results-driven