Sr. Software Engineer - Business Process Reengineering (BPR) and Sales Engineering - Jobs - Careers at Apple
- Design and build scalable, stateless REST APIs for web and mobile clients, spanning both reactive and non-reactive microservices, with responsibility for service orchestration, deployment, and overall architecture.
- Deliver efficient, readable, modular and high-quality Java code at pace, applying strong object-oriented design principles, data structures, and algorithms to solve everyday engineering challenges.
- Leverage deep Java expertise — including concurrency and multi-threading, the Spring ecosystem, and modern data access technologies — to build robust, maintainable services.
- Design database schemas and data access layers, applying performance tuning and caching strategies, including distributed caching services, to meet latency and scalability requirements.
- Own security and reliability across the stack, applying secure coding practices, building resilient distributed applications, and working across HTTP/HTTPS proxy and network layers.
- Drive CI/CD pipelines and build automation (Git, Maven), managing the deployment of enterprise-grade systems, including production AI/ML systems operating at scale.
- Take end-to-end ownership of complex, ambiguous problems, applying engineering best practices and sound judgment rather than relying on prescribed playbooks.
- Act as a key technical contributor within project teams, guiding architectural decisions, leading design and code reviews, and mentoring junior and mid-level engineers.
- Broaden technical depth across adjacent disciplines — including data, platform, security, and ML infrastructure — and contribute to cross-organizational initiatives.
- Communicate complex technical trade-offs clearly to both engineering and cross-functional stakeholders, building alignment across multi-disciplinary teams.
- Exercise sound independent judgment in determining how to achieve objectives, often extending beyond established practices, with oversight focused on major milestones rather than day-to-day execution.
- B.S. in Computer Science, Computer Engineering, or a related technical field, or equivalent work experience.
- 8+ years experience in designing and developing scalable enterprise level back end solutions.
- 4+ years 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.
- Java Ecosystem - Experience building production applications with the Spring ecosystem (e.g. Spring Boot, Spring MVC,
- Spring Security, Spring Data, Spring Cloud, etc.), including proficiency in dependency injection, auto-configuration, reactive programming with WebFlux, and designing microservices using Spring-based patterns.
- Java Ecosystem - Solid understanding of advanced JVM internals (e.g. garbage collection, memory allocation, JIT, JNI, etc.).
- Distributed Systems & Architecture - 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.
- Distributed Systems & Architecture - Experience with message-driven and event-driven architectures, including proficiency in messaging systems (e.g. Kafka, RabbitMQ, ActiveMQ, etc.), event sourcing, CQRS patterns, and designing reliable asynchronous communication between distributed services.
- Track record of leading software projects within a team as a tech lead (TL), while mentoring software engineers.
- Hands-on experience leveraging GenAI coding tools (e.g., Claude, Copilot, Codex) to accelerate the software development lifecycle, enhance code quality, and streamline debugging and testing processes.
- Security - Experience implementing authentication and authorization systems, including proficiency in identity protocols (e.g. OAuth2, OIDC, SAML, JWT, etc.), single sign-on (SSO) architectures, role-based and attribute-based access control (RBAC/ABAC), and integration with identity providers and directory services.
- AI/ML - Experience with Natural Language Processing and Generative AI systems, including Large Language Models (LLMs), Retrieval Augmented Generation (RAG) architectures, embedding pipelines, vector databases (e.g. Pinecone, Weaviate, pgvector, etc.), fine-tuning, and prompt engineering for production applications.
- Distributed Systems & Architecture - Experience with caching strategies and in-memory data technologies (e.g. Redis, Memcached, Hazelcast, Ehcache, etc.), including proficiency in cache invalidation patterns, distributed caching architectures, and session management for high-throughput applications.
- Databases - 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).
Apple is an equal opportunity employer that is committed to inclusion and diversity. We seek to promote equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant
At Apple, we believe accessibility is a fundamental human right. You’ll find that idea reflected in everything here — in our culture, our benefits and our digital tools. By welcoming as many perspectives as possible, we help you build a career where you feel like you belong.
Learn about accessibility in Apple’s workplace
Learn about reasonable accommodations for job applicants
Apple accepts applications to this posting on an ongoing basis.
Required Skills
Required Languages
🇬🇧 English