Memory Tools Engineer, Xcode

Apple Inc

Cupertino, CA

JOB DETAILS
SKILLS
Analysis Skills, Apple, Apple Hardware, Apple Xcode, Application Programming Interface (API), Artificial Intelligence (AI), C Programming Language, C++ Programming Language, Code Reviews, Command Line, Communication Skills, Computer Science, Computer Skills, Concurrency, Data Structures, Data Visualization, Debugging Skills, Ecosystems, Fuzz Testing, GDB (Gnu Debugger), Graph Theory, Mac Operating System, Memory Debugging, Memory Hardware, Memory Management, Objective-C Programming Language, Operating Systems, Performance Tuning/Optimization, Presentation/Verbal Skills, Problem Solving Skills, Process Analysis, Productivity Management, Programming Tools, Reverse Engineering, Swift, Team Player, Writing Skills, iOS
LOCATION
Cupertino, CA
POSTED
30+ days ago

Apple's Memory Tools team is looking for developers with a passion for memory and resource optimization to enhance, adapt, and innovate in creating tools for the next generation of software and hardware on Apple's platforms. Memory is an important and limited shared resource, making intelligent, developer-friendly tools critical for identifying optimization opportunities. Core responsibilities include working with Apple performance optimization engineers, Swift and Objective-C runtime teams, and frameworks teams to introspect memory usage across Apple's ecosystem. This role is within Apple's Xcode group, making tools that allow dreamers, makers, and shapers to design, write, build, debug, profile, and deploy software for all Apple platforms - macOS, iOS, iPadOS, tvOS, watchOS, and visionOS. Tools development is a uniquely rewarding area as the software's users are other developers, making it an opportunity to influence and improve the productivity of developers all across the world who make life-changing ideas a reality. The Memory Tools team primarily focuses on creating profiling and optimization tools, using runtime analysis techniques to instrument and introspect software to understand and improve it. The team is responsible for command-line tools like leaks, heap, vmmap, sample, atos, symbols, symbolication services and frameworks, Xcode's Memory Graph Debugger, and runtime libraries that improve the built-in debugging experience on Apple's platforms. These tools and services for process analysis are used on over a billion devices and by developers worldwide who make life-changing ideas a reality.

We're looking for developers who are passionate about making software better! Core interests should include areas such as profiling, optimization, reverse engineering, debugging, security, 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 Apple releases there's a need for tools to help expose and explain important system behaviors. As a result, it's key that you have a strong passion for learning! You'll need to work effectively with Apple teams of different engineering disciplines, anticipate problems early, and communicate ideas clearly. You should be able to drive development projects independently, collaborating with other teams to innovate in solving engineering challenges, and iteratively develop solutions to novel and complex problems.

Innovate and improve the usefulness of Apple's core memory analysis tools

Acquire deep understanding virtual memory, heap, and runtime data structures on Apple platforms

Present your work to developers across Apple or in larger forums like WWDC

Help investigate the impact of upcoming technologies on Apple's platforms and operating systems

Apply graph theory and AI to solve real-world runtime analysis problems!

3+ years macOS or iOS development experience

Excellent verbal and written communication skills

Expertise in C or C++, proficiency in Swift and/or Objective-C

Strong operating systems background, understanding allocators, virtual memory, and process lifecycle

Proven problem solving and debugging skills with lldb, gdb, or other interactive tools

Detail-oriented code review skills, reasoning through edge cases and security implications

Problem solving and debugging skills with lldb, gdb, or other interactive tools

Experience using AI technologies to assist in authoring, reviewing, and debugging code

Skills in reverse engineering, exploit analysis, fuzzing, binary analysis tools helpful

Familiarity with macOS internals, mach APIs, sandboxing, and other security subsystems

History of designing, implementing, or improving development tools

Experience in computer science or a related field commensurate with a 4-year degree

About the Company

A

Apple Inc

We bring amazing people together to make amazing things happen.

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.

About Apple

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.

COMPANY SIZE
10,000 employees or more
INDUSTRY
Computer/IT Services
FOUNDED
1976
WEBSITE
https://www.apple.com/jobs