Description
We are seeking a Software Engineer to join our Deployment Platform team. Our mission is to create paved paths for developers to deploy and run their applications through one consistent, self-service experience. Deploying an application is something developers do many times a day, and we aim to make it fast, reliable, and effortless. Our platform gives developers instant, production-like environments to run, preview, and validate their changes, and a smooth path from there to production. You'll collaborate across Apple, taking projects from design through implementation and operations, with a bias toward simple, high-quality, developer-friendly solutions.
Minimum Qualifications
3+ years of relevant industry experience building production software Strong programming skills in Go, with experience delivering high-quality, concurrent, well-tested services Solid foundation in software architecture, system design, and problem solving Hands-on experience with distributed systems and cloud-native architecture, including reconciliation loops, idempotency, eventual consistency, and failure handling, and with distributed data stores and messaging systems (e.g., Cassandra, PostgreSQL, CockroachDB, Kafka, Redis) Hands-on experience extending Kubernetes, such as writing controllers or operators and CRDs with client-go or controller-runtime Solid understanding of networking fundamentals: DNS, TCP/HTTP, TLS, load balancing, ingress, egress, and network policy Experience designing and building REST, gRPC, and/or GraphQL APIs Ability to design, build, test, and run the services you own, from API design through production BS or MS in Computer Science or a related technical field
Preferred Qualifications
Experience building developer platforms, internal PaaS, or SDKs and tools used by other engineers Experience with Java and/or Python, in addition to Go Strong communication skills and the ability to work effectively with both technical and non-technical stakeholders Self-motivated and well-organized, with a demonstrated ability to take ownership and drive ambiguous projects to completion Fluency with AI-assisted software development (coding assistants and agents), and exposure to building AI-powered developer tooling Experience with data modeling, schema evolution, and tuning for both relational and NoSQL datastores, including transactions, consistency trade-offs, and capacity planning Familiarity with service identity, secrets management, and secure multi-tenant design Hands-on experience with Kubernetes and cloud networking, such as ingress and egress controllers, service mesh, CNI, or Gateway API, across multi-cluster, hybrid-cloud, or ephemeral cluster environments, and with debugging networking issues across layers (DNS, TLS, proxies, load balancers) Experience with object storage (S3-compatible), CDNs or edge routing, and static or dynamic web hosting Experience with observability: metrics, logging, tracing, and SLOs Some experience building web UIs with React or a similar modern framework (TypeScript/JavaScript, component-based design, consuming REST/GraphQL APIs) Familiarity with public cloud providers (e.g., AWS, GCP) and declarative, GitOps-style delivery Familiarity with containers and container image build and distribution Familiarity with virtualization and VM workloads alongside containers Kubernetes application developer certification (CKAD)