Sr. Software Engineer, Enterprise Technology Services
Senior software engineer on Apple's IS&T Enterprise Technology Services team, designing and building the control plane of Apple's global security platform (identity, device security, anti-abuse). Day to day is hands-on backend engineering with Java/JVM, API design, relational/NoSQL datastores, and cloud-based distributed systems using Terraform, Docker, and Kubernetes.
- Compensation
- Not disclosed
- Location
- Sunnyvale
- Work setup
- Not specified
- Seniority
- Senior
- Employment
- Contract
- Experience
- 2+ years
- Category
- Software engineering
- Posted
Skills
Must have
- B.S. in Computer Science, Computer Engineering, or related technical field, or equivalent professional work experience
- 5+ years of proven professional software development experience
- 2+ years of proven experience with Java, including concurrency, memory management, and performance optimization
- Proficiency in OOP principles, data structures, algorithms, and software design patterns (e.g. GoF), building testable, maintainable, extensible backend code
- Solid understanding of advanced JVM internals (garbage collection, memory allocation, JIT, JNI)
- Experience in API design and implementation: RESTful principles, gRPC, GraphQL, contract-first design (OpenAPI/Swagger, Protobuf), versioning, gateway patterns, rate limiting, backward compatibility
- Experience with relational (Oracle, Postgres, MySQL) and NoSQL (Cassandra, MongoDB) databases, including schema design, query optimization, and performance tuning
- Experience with cloud platforms (AWS, GCP, Azure), including IaC, containerization, and orchestration (Terraform, Docker, Kubernetes)
Nice to have
- Track record of leading software projects as a tech lead while mentoring software engineers
- Hands-on experience leveraging GenAI coding tools (e.g. Claude, Copilot, Codex) in the software development lifecycle
- Solid knowledge of networking concepts, protocols, and infrastructure (HTTP/HTTPS, TCP/IP, CDN, load balancing, edge computing, DNS, Zero Trust architecture)
- Experience designing, implementing, and shipping high-scale, high-performance, highly available, fault-tolerant, and secure cloud-based distributed systems
- Experience with message-driven and event-driven architectures (Kafka, RabbitMQ, ActiveMQ, event sourcing, CQRS, reliable asynchronous communication)
- Experience with caching strategies and in-memory data technologies (Redis, Memcached, Hazelcast, Ehcache), including cache invalidation and distributed caching architectures
Full description
Do you want to help build some of the largest and most consequential enterprise and customer technology systems in the world? Join Apple’s Information Systems and Technology (IS&T) organization.
IS&T is the engine behind everything Apple does for customers and for the people who build for them. It’s Apple’s central nervous system. Supporting 2.5 billion active Apple devices, processing billions of secure transactions, and keeping the technology that defines modern life running flawlessly, IS&T makes the impossible feel effortless.
Enterprise Technology Services (ETS) is part of IS&T and delivers global-scale platforms and services that keep Apple's operations secure and running. The team manages identity, device security, and anti-abuse platforms — covering everything from manufacturing and repairs to software updates and activations. ETS also oversees supply chain, manufacturing, and partner integration platforms, protecting data on more than 2.5 billion devices worldwide. And when Apple prepares for a global product launch, ETS owns the systems that ramp factory production — managing serial numbers, network credentials, and verified software.
We are looking for a self-directed, talented Software Engineer to design and develop the control plane of our security platform. In this role, you will collaborate closely with the Data Plane and other cross-functional teams to build novel features for the platform. The ideal candidate will be hands-on with coding and have expertise in building and tuning high-performance services and in creating robust, scalable distributed systems.
Minimum Qualifications
- B.S. in Computer Science, Computer Engineering, or a related technical field, or equivalent professional work experience.
- 5+ years proven experience developing software in a professional capacity. Longer experience preferred.
- 2+ years proven experience with Java, including proficiency in concurrency, memory management, and performance optimization techniques.
- Proficiency in OOP principles, data structures, algorithms, and software design patterns (e.g. GoF), with a proven focus on implementing testable, maintainable, and extensible backend code.
- Solid understanding of advanced JVM internals (e.g. garbage collection, memory allocation, JIT, JNI, etc.).
- Experience in API design and implementation, including proficiency in RESTful API principles, gRPC, GraphQL, contract-first design (e.g. OpenAPI/Swagger, Protobuf, etc.), API versioning strategies, gateway patterns, rate limiting, and designing APIs for backward compatibility and long-term evolution.
- Experience using relational (e.g. Oracle, Postgres, MySQL, etc.) and NoSQL (e.g. Cassandra, MongoDB, etc.) databases, including proficiency in schema design, query optimization, performance tuning (e.g. execution plan analysis, indexing strategy, and query rewriting).