What can you learn about a suspended or crashed program? That's the mission of the Memory & Symbolication Tools team, building tools for introspecting program state on Apple platforms. Working at the common Darwin OS layers beneath these platforms, the team owns tools like leaks, heap, vmmap, sample, and symbols, along with symbolication frameworks and APIs. These are foundational to OS services and profiling tools that report, triage, and fix memory bugs, and they must be efficient, robust, and secure. Symbolication is critical to billions of devices daily, and these tools are used by developers worldwide. This specific role is for a highly technical manager to lead a small team, working alongside other engineering experts to support new hardware and software optimizations. In addition, youll help shape the teams vision and bring better intelligence and visualization to these tools. It's a detail-oriented engineering leader role, where you'd be authoring and reviewing code on a daily basis. Were looking for developers who are passionate about improving software! This is within the Xcode Runtime Tools team, and core interests should include optimization, reverse engineering, security, debugging, graph theory, and data visualization. You should have an interest in all levels of the system with the ability to connect OS concepts like virtual memory with language-level tools such as runtime reflection and Swift Concurrency. With every new technology, framework, or product, there's a need for tools to understand system behavior. That's why it's key you have a strong passion for learning! Youll need to work effectively with Apple teams across different engineering disciplines, anticipate problems early, and communicate ideas clearly. You should be able to drive development projects independently, working with other teams to innovate and develop simple solutions to complex problems. Memory is a limited shared resource, and optimizing it is critical for Apps and services to maintain competitive advantage. Apple's tools distill process VM and heap into a portable .memgraph format for later analysis, containing type information, address space layout, and connectivity of objects on the heap. For a more in-depth introduction to these tools, check out: Analyze Heap Memory Symbolication is all about undoing compiler and linker optimizations, mapping runtime addresses back to the symbols and source code that generated them. Apple's tools require a deep knowledge of the Mach-O binary format and familiarity with DWARF, and they must be resilient to malformed input as a critical part of diagnosing crashes and other fatal runtime conditions. To learn more, check out: Symbolication: Beyond the BasicsLead a small team innovating and improving Apples core memory analysis tools Support symbolication of mission-critical tools in Apple's ecosystem Deepen your understanding of virtual memory, heap, and runtime data structures Present your work to developers within Apple and in larger forums like WWDC Investigate the impact of upcoming technologies and features Apply AI, graph theory, and reverse engineering skills to real-world problems5+ years macOS and/or iOS development experience Expertise in Swift and C, C++, or Objective-C Excellent verbal and written communication skills Passion for mentoring others and providing clear and actionable feedback Ability to facilitate creative, pragmatic, solution-focused technical discussions Strong operating systems understanding around process lifecycle and crashes Detail-oriented coding skill, especially for edge cases and security implications Experience in computer science or a related field commensurate with a 4-year degreePrior engineering management experience Problem solving and debugging skills with lldb, gdb, or other interactive tools Experience using AI technologies in authoring, reviewing, and debugging code History of designing, implementing, or improving development tools Familiarity with reverse engineering, exploit analysis, or fuzzing tools Understanding of macOS internals, Mach-O binaries, and Mach APIs If possible, we'd love to see an example of your relevant work, such as a personal project or open source contribution If you believe you have relevant transferable skills not listed on this posting, please share that information via a Cover Letter
We’re a diverse collection of thinkers and doers, continually reimagining what’s possible to help us all do what we love in new ways. The people who work here have reinvented entire industries with the Mac, iPhone, iPad, and Apple Watch, as well as with services, including iTunes, the App Store, Apple Music, and Apple Pay. And the same passion for innovation that goes into our products also applies to our practices — strengthening our commitment to leave the world better than we found it.
There’s a place here for every kind of brilliant. Everyone here is an innovator, or an innovator-to-be, no matter what your team or your role. So bring your passion, courage, and original thinking and get ready to share it, because every new product, service, or feature we invent is the result of people working together to make each others’ ideas stronger. Innovation at this level depends on people who represent the variety of the human experience and inspire us with their own fresh perspectives. Together, we’ll do amazing work that can make a difference in people’s lives. Including your own. Learn more about working at Apple.