App Store Engineering - Senior Software Engineer

With Apple in Cupertino CA US

More jobs from Apple

Posted on June 23, 2020

About this job

Job type: Full-time
Industry: Consumer Electronics
Company size: 10k+ people
Company type: Public

Technologies

java, sql, hadoop

Job description

When this team introduced the App Store, it launched a cultural and economic phenomenon that changed the way people live, work, and play. These engineers continue to innovate the platform, now home to over 1.5 million apps — each created using the team’s own software development kit and related services. All those apps mean the store takes billions of requests from more than 500 million visitors every week, across iOS, macOS, tvOS, iPadOS, and watchOS. To deliver such a rich experience at this scale, the engineers build high- performance systems backed up by persistent systemwide A/B testing. And to help people discover apps they love, the team uses machine learning techniques that include natural language processing to develop new algorithms for personalization, search, and recommender systems. In a world where apps have become essential in people’s daily lives, the App Store team has become essential to Apple’s business. Areas of work include macOS/iOS Engineering, Full-Stack Engineering, Front-End Engineering, Back-End Engineering, Quality Engineering, Machine Learning Engineering, Data Science, Data Engineering, Site Reliability Engineering, Commerce Engineering, and Engineering Project Management.

The App Store Engineering R&D team is looking for talented software engineers to build and update App platform. At Apple, great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. We are looking for a self-motivated, high-energy individual with excellent communication skills who is willing to question assumptions, take end to end ownership of features and drive them to completion. You should have experience developing large-scale server-side systems using object-oriented languages. Some successful attributes include: Ability to work in a fast-paced dynamic environment. Analyze, design, code, inspect, debug, and test features for the data platform. Maintain and improve existing applications in response to new feature requests. Collaborate closely with members of other teams throughout the release cycle. We're a team of consummate tech geeks who love figuring out how things work and trying to make them better. Sometimes it's a little tweak, sometimes it's a fundamental shift - usually it's somewhere in between. We brainstorm on whiteboards, share ideas at team lunches and pot-lucks, build prototypes, present proposals to teams, embed for a while to help them get started, check the metrics, and repeat!

Skills & requirements

  • At least 5+ years experience in crafting, implementing and supporting highly scalable backend systems and web services.
  • Demonstrate proficiency in data management and automation on Spark, Hadoop, and HDFS environments.
  • In-depth Java programming experience.
  • Deep understanding, and strong hands on experience - Multithreading, Networking (including non-blocking IO), HTTP and REST APIs.
  • Confidence with SQL databases like Oracle and NoSQL databases like Cassandra.
  • Passion and prior experience designing and implementing outstanding large distributed systems.
  • Be an advocate and driver for performance optimization, automation, and unit tests.
  • Ability to pick up new technologies quickly.
  • Excellent debugging, critical thinking, and communication skills.
  • Tireless attention to detail.

BS or MS in Computer Science or equivalent work experience.

Apply here