System Software Engineer – Debug Technologies – 200558587 -Beaverton, Oregon, United States

Apple

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.

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.

An understanding of operating system fundamentals and/or compilers / linkers/ object formatsExperience developing or debugging on embedded systems, including hobby projectsProficiency in C / C++ programmingExperience with software revision control tools and workflows (e.g., svn, git)Excellent communication and interpersonal skillsSelf-starter able to navigate through constraints

 

Job Overview