Algorithms Software Engineer

Cupertino, CA 95014
  • Job Code
  • Jobs Rated


Posted: Mar 4, 2021

Role Number:200228760

Apple's Human Interface Devices (HID) group is responsible for developing innovative ways to interact with Apple products. We work ...Summary


Posted: Mar 4, 2021

Role Number:200228760

Apple's Human Interface Devices (HID) group is responsible for developing innovative ways to interact with Apple products. We work across product lines, delivering technologies like Multitouch Sensing, Pencil, Watch Digital Crown, and other future Apple sensing and interaction technologies.

The HID Algorithms team is an eclectic group with backgrounds in computer science, signal processing, machine learning, control theory, human factors, and more.

We're looking for a skilled software engineer to help build the infrastructure and solution patterns for implementing our sensor data processing algorithms - the algorithms that underlie the interactive technologies our customers rely on everyday. In this role, you'll design and build scalable, high-quality shared libraries for the future of Apple's human interface devices!

Key Qualifications

  • Solid experience developing in object-oriented C++ and Python as part of a software development lifecycle, and employing common OO design patterns
  • Understands and advocates principles of scalable API design, documentation, and support for shared code libraries, API's, SDK's, and/or packages
  • Familiar with compilation flows and compile flags for building static and dynamic libraries with tools like Make, xcodebuild, or similar
  • Experience developing for real-time and/or resource-constrained environments (e.g., embedded systems)
  • Knows what it takes to efficiently implement math routines in low-level C/C++ such as signal / image processing algorithms or numerical solvers. You will be comfortable guiding colleagues to implement such routines while balancing speed, memory efficiency, and readability
  • Able to communicate clearly and collaborate with cross-functional teams
  • Excellent problem-solving and root cause analysis skills


This is a key position at a focal point for HW/SW/UI integration. You will learn and work across multiple layers of the stack, from firmware to distributed data processing, and design innovative infrastructure for scalable, testable, production-quality algorithms. You will help our team build algorithm pipelines to translate sensor data into user intent, design new interactions, and validate their effectiveness for a large population.

The ideal engineer is comfortable working in a dynamic and creative team charged with crafting the way we will interact with next-generation Apple products. You are self-motivated, an excellent problem solver, and a fast learner. You are quick to forge relationships and comfortable with change and ambiguity. You have strong technical leadership skills and enjoy collaborating with others toward the creation of commercial-grade software. You will bring software expertise to a highly interdisciplinary team, working with engineers of many talents to tackle challenging problems.

Education & Experience

BS/MS in Computer Science, Computer Engineering, or related field;

3+ years of experience in a related role.

Additional Requirements

  • While not required, any of the following will make you more effective in this role:
  • - In addition to C/C++ and Python, expertise in Objective-C or Swift
  • - Experience building macOS, iOS, or watchOS frameworks and apps and customizing build settings in Xcode
  • - Experience with multithreading and concurrent programming
  • - User interface design or graphics programming

Jobs Rated Reports for Software Engineer

Before you go...

Our free job seeker tools include alerts for new jobs, saving your favorites, optimized job matching, and more! Just enter your email below.

Share this job:

Algorithms Software Engineer

Apple, Inc.
Cupertino, CA 95014

Join us to start saving your Favorite Jobs!

Sign In Create Account
Software Engineer
8th2017 - Software Engineer
Overall Rating: 8/199
Median Salary: $100,690

Work Environment
Very Low
Very Good