Apple is looking to solve the problem of providing Calendar services to iCloud customers by maintaining the existing technology stack and crafting new functionality. The goal is to build high-performance, scalable, and extensible systems, deliver creative features on time, and fix system bugs.
Requirements
- Develop and maintain distributed services using programming languages like Java and frameworks like Spring, Netty.
- Implement inter service communication mechanism using REST APIs, and gRPC, etc.
- Understand and utilize NoSQL databases like Cassandra, FDB based on the use case.
- Integrate with caching solutions like Redis for performance optimization.
- Utilizing object-oriented languages such as Java, Golang or C++, and backend frameworks to work on backend service codebases
- Writing unit tests, integration tests & load tests for software quality control
- Designing and implementing large-scale distributed backend service architecture in a cloud-native environment to support high-throughput traffic
Responsibilities
- Write software that provides Calendar services to iCloud customers.
- Maintain technology stack and craft new functionality.
- Build high-performance, scalable and extensible systems.
- Deliver creative features on time and fix system bugs.
- Craft efficient, testable, easy-to-maintain code, write functional specifications and design documents.
- Build comprehensive unit and end-to-end tests, not only for features built but also for existing features that need more testing.
- Design and implement scalable, fault-tolerant and high availability distributed system architecture.
Other
- Bachelor’s degree or foreign equivalent in Computer Science, Computer Engineering or related field and 4 years of experience in the job offered or related occupation.
- 4 years of experience with the following skills is required:
- Utilizing inter-service communication mechanism such as REST APIs or RPC to communicate between backend services
- Utilizing relational SQL databases like OracleDB or Spanner for backend data storage
- Utilizing containerization technologies such as Kubernetes and Docker for backend service hosting