Software Engineer, Commerce Segments and Platform, ASE

AppleApplyPublished 1 days agoFirst seen 1 days ago
Apply

Summary

The Apple Services Engineering (ASE) Commerce group is looking for an extraordinary back-end Java software engineer to join our Segments and Platform software engineering team. The Commerce team provides the transactional engine for App Store, Apple Music, Apple TV+ and more. Our platform is the highest volume digital content store in the world, serving billions of transactions daily in more than 130 countries. We strive to provide a flawless purchase and subscription experience for our millions of customers all over the world!

Description

On the Commerce team, you’ll build back-end services and capabilities, shared across iPhone, Mac and Web, that support extremely high levels of transactional integrity, scalability, availability, fault tolerance, and security that both allow our customers to purchase and subscribe to Apple media products all over the world and envision platform capabilities handling extremely high QPS.
You will contribute to the architecture, design and implementation of user facing features, with an emphasis on identifying components that can be used across different scenarios, domains and regions of the world.
You will be responsible for developing scalable services and rapidly resolving customer issues. This position demands someone who can operate in ambiguity, make sound technical decisions under pressure, and translate complex requirements into scalable, maintainable systems.

Responsibilities

  • Design, build, and maintain secure, scalable systems end-to-end - including building RESTful APIs, microservices, databases, automated tests, tooling, monitoring and alerting dashboards, etc.
  • Partner with engineering and cross-functional teams to architect solutions and coordinate complex programs. Take ownership of a broad domain and operate as the subject-matter expert others rely on for clarity and direction.
  • Triage and debug customer impacting issues, diving into unfamiliar areas as needed, and turning ambiguous problems into clear, actionable fixes.
  • Mentor and support other teammates to help build a cohesive, high-performing engineering team.
  • Add new integrations, scale current data flows, and re-imagine existing processes to accommodate developing features and architectures.
  • Work independently and drive a project from inception to production deployment with a strong focus on performance and the customer and developer experience.

Minimum Qualifications

  • 3+ years of software engineering experience implementing and maintaining critical systems at scale.
  • Outstanding analytical problem-solving, debugging, and diagnostic skills.
  • Willing to take ownership and set direction, and thrive navigating any ambiguity in your projects.
  • BS degree, preferably in Computer Science or related experience.

Preferred Qualifications

  • Experience with Java
  • Experience working on highly scalable applications, event-driven systems and RESTful web services.
  • Experience with SQL and noSQL databases and entity relationship modeling.
  • Experience with load balancing, autoscaling, traffic shaping, distributed systems debugging, and incident response.
  • Proficiency with observability tooling - metrics, logs, and performance troubleshooting.
  • Strong commitment to automated testing, including integration, load, and end-to-end testing.