System Software Engineer - Debug Technologies
Beaverton, Oregon, United States
Software and Services
Are you a big-picture problem solver who loves setting adventurous goals? Do you have a passion for understanding how each line of code affects all the others? In the Core Operating Systems group, we're ensuring the OS is inseparable from each device's identity as a whole. That’s because this group is committed to building fully integrated operating systems that combine hardware, software, and apps into a single Apple experience. Your dedication to cross-disciplinary collaboration will help develop groundbreaking technologies, such as iOS, macOS, watchOS, and tvOS. By crafting these distinct, multidisciplinary user experiences, you’ll continue to uphold and advance the excellence people expect from Apple devices.
Apple is where individual imaginations gather together, committing to the values that lead to great work.
Apple is looking to grow its Debug Technologies team. We’re focused on in-system debugging and failure observability solutions for current and future Apple platforms spanning iOS, Mac, and future products. We’re looking for Software and Firmware Engineers with operating systems experience who are interested in working hands on, across the Core OS software stack.
Description
You’ll develop both new silicon- and system-level features to support a better debugging and field failure diagnostic experience, create and improve low-level debugging tools, and improve infrastructure. Solutions you will work on will span from internal development workflows to customer crash diagnostics. We work with systems in all phases of development, from pre-silicon simulation, to new silicon bring-up, to already-shipped systems.
You will provide recommendations on future system architectures with an eye toward improved debugging experience and field failure observability. You’ll write code and develop new features of Apple’s Operating Systems (iOS / macOS) to support in-system debugging. You’ll debug and perform root-cause analysis of real-world failures with other specialists. And, you’ll create and improve internal infrastructure to better scale the capture, triage, and reporting of field issues.
Minimum Qualifications
- An understanding of operating system fundamentals and/or compilers / linkers/ object formats
- Experience developing or debugging on embedded systems, including hobby projects
- Proficiency in C / C++ programming
- Experience with software revision control tools and workflows (e.g., svn, git)
- Excellent communication and interpersonal skills
- Self-starter able to navigate through constraints
Key Qualifications
Preferred Qualifications
- Swift development experience
Education & Experience
Additional Requirements
Apple is an equal opportunity employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.