Inside Apple: What you need to learn to work at Apple as a Developer

Minimal and curated choices for each team at Apple — 2020


Apple has a dozen if not hundreds of various development teams.
In the main development “groups” we have picked up different roles from hundreds of open positions for each team to let you discover some technologies or methods used inside Apple.

Apps and Frameworks

Apps and Frameworks people create every Apple application, including built-in apps such as Calendar and Maps, productivity apps such as Keynote and Pages, and media apps like Final Cut Pro and Logic Pro. And because they want every app to work smoothly, this team also creates frameworks, such as UIKit and Metal, with third-party developers in mind.

  • iOS Applications Engineer: proficiency in a systems programming language, such as C/C++, Objective-C, Swift, etc and experience using iOS frameworks like UIKit, AVFoundation, Core Motion, Core ML, CloudKit, SiriKit, StoreKit, etc;
  • Software Engineer Maps POI: experience working with: Cassandra, SOLR, Spark, Hadoop, Kafka and similar technologies in production contexts at scale and experience with geospatial, location based services;
  • Keynote Graphics Software Engineer: ability to visualize and implement high-level animation and graphical concepts, demonstrated experience with Metal, OpenGL, or similar GPU API and finally experience with shaders (GLSL, HLSL, Metal shading language, etc.)

Machine Learning and AI

The people working in machine learning and AI are building amazing experiences into every Apple product, allowing millions to do what they never imagined. Machine Learning technologies will let you work as part of Maps, Siri, News, and many other applications, including those yet to come. Areas of work include Artificial Intelligence, Computer Vision, Data Science, and Deep Learning.

  • Machine Learning Engineer — IoT: strong software development skills with proficiency in Python and R. Experienced user of libraries such as scikit-learn, scipy, R, NetworkX, Spacy, and NLTK. Experience with Hadoop, Spark, Hive, Cassandra, Kafka and NoSQL databases a plus;
  • AI/ML — Software Engineer, ADPT(Adaptive Devices and Personalization Technologies): excellent algorithm and data structure skills (time and space complexity analysis, optimization, etc) and expertise in Objective C, C/C++ at both the systems level and application level;
  • Software Engineer, ML Platform, FEAR: experience in Scala or Java preferred, superior knowledge with at least two of the following: Spark, MapReduce, HDFS, Cassandra/NoSQL/RDBMS, Kafka, web services;
  • Machine Learning Engineer — iPhone Product Operations: strong software development skills with proficiency in Python and R. Experienced user of libraries such as scikit-learn, scipy, R, NetworkX, Spacy, and NLTK and knowledge or familiarity of ML algorithms (deep learning, classification, clustering, Torch, Caffe, MXNet, TensorFlow);

Cloud and Infrastructure

Be prepared to jump right in when you join the team that designs, develops, and deploys high-performance systems that handle billions of queries every day. You’ll be part of the invisible but indispensable thinking behind the next generation of iOS and macOS applications and services, such as Siri, iCloud, Maps, the iTunes Store, and Apple Music.

  • Apple Cloud Systems Software Engineer: advanced programming language proficiency in C, C++ or Go, hands-on experience with some or all of the following topics : Linux containerization, Linux filesystems, Image distribution, Content storage, Kernel and container security. Finally development experience in combination of virtualization and container technologies to build a cloud native hypervisor (KubeVirt, Kata, Firecracker, etc) and Linux system virtualization based on Libvirt, QEMU, KVM Understanding of various shared networked storage solutions (iSCSI, NFS, cluster file systems) area are a plus;
  • Apple Cloud Software Engineer in Test: experience in Software QA/black box testing and knowledge of WebDriver protocol, Selenium or Appium and Continuous Integration;

Core Operating Systems

The operating system is what makes an Apple product an Apple product.
As part of this group, you’ll develop technologies like iOS, macOS, watchOS, and tvOS and work with other teams to build the world’s most collaborative products.

  • general: exceptional development experience at the application level with Objective-C or Swift
  • macOS: experience with distributed systems and multi-threading.
  • watchOS: knowledge of fundamental Apple’s development APIs including UIKit, Grand Central Dispatch, Foundation, XCTest, etc.
  • core OS (input output thunderbolt): experience with writing and debugging complex firmware or drivers, firmware development and/or device driver development, development with C and C++.

DevOps and Site Reliability

Designing and building a continuous integration and delivery system, you’ll ensure the high availability, scalability, and security of a huge infrastructure every day for the App Store, Apple Music, iTunes, Siri, Maps, and iCloud.

  • Site Reliability Software Engineer: experience in a DevOps role in an environment running production systems and using source code repositories (Git/Gerrit) and CI/CD tools (Jenkins).
  • Software Engineer — DevOps: experience working with web servers such as Tomcat, Spring Boot, Jetty, Nginx (preferably all), experience of relational and nosql datastores (e.g. Oracle, Couchbase, Cassandra), streaming solutions (e.g. Kafka, RabbitMQ)

Information Systems and Technology

How do over 130,000 employees stay connected to each other, to suppliers, and to over a billion customers around the world? They depend on Apple’s nerve center — Information Systems and Technology.

Manages: Apple Pay and the Apple website, as well as manufacturing, logistics, retail operations, and all our corporate facilities.

  • Senior UI Front End Engineer: proficient in at least one JavaScript framework like Angular, React, VueJS, or equivalent. Experience with CSS3 and Less/Sass and front-end design and JavaScript libraries such as AngularJS, ReactJS, jQuery, and VueJS;
  • Sr UI Engineer/Ecommerce: build pixel-perfect Web UI in: HTML, CSS, and JavaScript, develop code and build unit tests for open source, Flux-based frameworks such as ReactJS and experience in various templating languages, such as Mustache and JSX;

Engineering Project Management

Every team at Apple is collaborative, but as part of this group, you’re the hub of cross-functional partnering. Take ownership of projects by overseeing every aspect, from start to finish. You’ll guide the work as it’s refined by colleagues in engineering, marketing, and other teams.

  • Sr Engineering Project Manager: must exude confidence around Product and IS&T executives (Directors, Sr. Directors, VPs and SVPs) and demonstrated ability Software Development Lifecycle experience (i.e. Waterfall, Agile);
  • Apple Pay, Product Manager: experience leading design, feature breakdown and projects/products from inception to shipped software and passionate problem solver, designing and building the best solutions for the most meaningful problems;

XR Developer and Photogrammetry Artist

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store