Senior Software Engineer - Embedded Debug Tools

Cupertino, California, United States
Software and Services

Summary

Posted:
Role Number:200541306
Are you a big-picture problem solver who loves setting ambitious goals? Do you have a passion for understanding how each line of code affects all the others? In the Core Operating Systems group 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, tvOS and visionOS. By crafting these distinct, multidisciplinary user experiences, you’ll continue to uphold and advance the excellence people expect from Apple devices. The Core OS software team is looking for an especially dedicated Senior SW engineer for the Embedded Debug Tools team. Apple uses its own internally developed SWD/JTAG solution and SW tools for all Apple Silicon product debugging. Working on this core technology will give you the opportunity to have a major impact on the success of Apple's iOS, watchOS, macOS based products. Your contributions will help turn this toolset into a world-class debugging solution.

Key Qualifications

  • Skilled in data structure and software design in C++.
  • Proficient in C/C++ , knowledgeable in Python.
  • Experience in creating user facing APIs.
  • Demonstrated creative, critical thinking and troubleshooting skills
  • Excellent collaboration skills
  • Outstanding written and verbal communication

Description

You will architect and develop scalable software solutions with the main objective of improving the silicon and low level software debugging process. Your work will involve system level software development with interactions with the following components: daemons, networking and multi-threading. You will help identify insufficiencies in the debugger and provide solutions to improve the development process for low level software including XNU and Apple's Real-Time Operating System Frameworks. For our internal debug tools you will: Architect creative solutions to meet the needs of our internal customers, Design new APIs to provide compelling features, and Develop scalable solutions in the face of multitude of SoCs and tight timelines.

Education & Experience

BS in CS, CE, EE or equivalent industry experience required

Additional Requirements

  • Knowledge of hardware architecture - SoCs, CPU, GPU
  • Experience working with low level SW protocols for HW interaction.
  • Experience with SWD/JTAG and other debuggers
  • ARMv8 architecture knowledge
  • Understanding of operating system fundamentals
  • Knowledge of ARM's DAP architecture and JTAG
  • Experience developing tools for others
  • Experience developing debug tools
  • Experience with HW debugging
  • Experience with LLDB and/or GDB

Pay & Benefits