Sr. Software Engineer, Information Systems & Technology
Core
Design, develop, test, document, improve, and maintain high-scale, high-performance, highly available, fault-tolerant, and secure cloud-based distributed systems primarily in Java for Apple's internal operations and customer-facing platforms.
Role type
Senior IC Java Software Engineer
Builds
Cloud-based distributed systems, frameworks, and apps for Apple-wide identity, operations, recruiting, people management, data centers, and data processing/AI/ML
Domain
Enterprise software, Cloud infrastructure, Distributed systems
Required skills
Java, Concurrency, Memory management, Performance optimization, OOP principles, Data structures, Algorithms, Software design patterns, Relational databases, NoSQL databases, API implementation, Schema design, Query optimization
Preferred skills
Tech lead experience, Mentoring, CI/CD tools, Kubernetes, Java web frameworks, Unit testing frameworks, Tooling languages, Distributed orchestration systems, JVM internals, Networking concepts
Technologies
Java, Postgres, MySQL, Cassandra, MongoDB, REST, RPC, GraphQL, AWS EKS, GCP GKE, Azure AKS, ServiceTalk, Spring, Dropwizard, Quarkus, Micronaut, JUnit, Mockito, Go, Python, Ruby, Airflow, Spark, Flink
Responsibilities
Design and manage systems, frameworks, and apps; Implement high-scale cloud-based distributed systems; Optimize database schemas and queries; Develop testable, maintainable, and extensible backend code; Collaborate with cross-functional teams to deliver projects on time
Seniority
Senior, hands-on IC