Systems Software Engineer - Human Interface Devices

Sunnyvale, CA, US • Posted 11 hours ago • Updated 11 hours ago
Full Time
On-site
Fitment

Dice Job Match Score™

🔢 Crunching numbers...

Job Details

Skills

  • Firmware Development
  • UI
  • Stacks Blockchain
  • Human Factors And Ergonomics
  • User Experience
  • Object-Oriented Programming
  • Value Engineering
  • Artificial Intelligence
  • Productivity
  • Software Development
  • Embedded Software
  • Device Drivers
  • C
  • C++
  • Sensors
  • Unix
  • Linux
  • IOS Development
  • Interfaces
  • Firmware
  • Algorithms
  • Debugging
  • Embedded Systems
  • Computer Hardware
  • Assembly
  • Analytical Skill

Summary

Our Human Interface Devices Software team delivers high-quality drivers, frameworks and tools supporting sensing technologies across all Apple products. Primarily supporting the multi-touch technology, we have deep experience developing systems software and building stacks that enable the best user-experience! We work closely with Algorithms, Firmware, Design, and UI teams to ensure sensor and software performance is optimized across all layers of the stack.

Description

We are looking for an engineer to work on drivers, frameworks, and tools for iOS. In this role, you will maintain existing software and design new software stacks for future products and sensing technologies. Ideally, you have experience dealing with human factors, care deeply about user experience, enjoy supporting technology investigations, and are comfortable jumping between multiple levels of the software stack.

Minimum Qualifications

BS and 3 years of relevant industry experience

Experience developing system software; such as drivers or frameworks

Strong C/C++ and object-oriented programming skills

Excellent debugging skills

Ability to quickly familiarize yourself with code you've never seen before, and understand the pertinent functionality

Comfortable working at both higher and lower levels of software

Experience using AI-assisted development tools to enhance productivity in system software development flows, creating test frameworks and tooling, and improve overall code quality.

Preferred Qualifications

6 years of experience in developing embedded software, including firmware and device drivers

Using C/C++ for low level systems, and experience designing and implementing system software for drivers

Experience in Kernel driver development, including designing and implementing kernel drivers for various hardware sensors in Unix, Linux or iOS

Experience in designing and implementing SW interfaces/APIs among software, firmware and algorithms modules

Experience with profiling code in both kernel and userspace

Experience in debugging embedded system issues with hardware, assembly and software tracers

Strong verbal and written communications skills

Self-advised, analytical, and works well in a team environment
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.
  • Dice Id: 90733111
  • Position Id: 63bbd0fdee44608f1953c8904bf40eec
  • Posted 11 hours ago
Create job alert
Never miss an opportunity! Create an alert based on the job you applied for.