Apple
Software Engineer - Darwin Runtime
Apple, Cupertino, California, United States, 95014
Software Engineer - Darwin Runtime
Cupertino, California, United States
Software and Services
The Darwin Runtime team in Core OS is looking for enthusiastic engineers interested in developing low-level system technologies for Apple’s operating systems. Darwin is the UNIX-like foundation at the heart of all Apple’s operating systems, stretching from the kernel up through low-level user components. The Darwin Runtime team is responsible for building the low-level user space runtime technologies like Grand Central Dispatch (GCD), inter-process communication systems, memory allocator, threading library, and concurrency and synchronization primitives. The ideal candidate should be self-motivated and effective in operating independently, with a desire to learn and develop technical leadership. Team members are welcome and encouraged to participate in design discussions, code reviews, and development across multiple technologies. Our environment fosters technical innovation, meaningful technology ownership, and a liberating amount of autonomy!
Description
You will be responsible for working on a range of technologies that form the foundation of Apple’s operating systems. The work would include projects such as:
Design and implement new features and APIs for Darwin Runtime technologies like GCD, XPC, pthread, and malloc.
Analyze Apple’s operating systems to understand the structure of the software and use that knowledge to make deep changes across the entire stack.
Architect high-security environments to improve customer security and privacy.
Work with Swift language team to design and develop features to provide operating systems integration.
An engineer in the Darwin Runtime team would regularly:
Participate in all phases of software development cycle: from problem definition and design, through implementation, testing, and debugging.
Diagnose and resolve issues across different layers of the stack.
Work with cross functional teams to enable developer and product requirements.
Minimum Qualifications
Passion for low-level system technologies.
Fluency in the C programming language.
Experience with UNIX-like systems.
System design and architecture skills.
Strong understanding of operating system fundamentals like threading, synchronization primitives, inter-process communication, scheduling, and virtual memory.
Excellent collaborative skills, with the ability to work with a team to design system architecture.
Key Qualifications
Preferred Qualifications
Knowledge of operating system implementation, hardware architecture and assembly programming.
Knowledge of Swift or Objective-C.
Skilled at interface and/or API design.
Experience with lldb or gdb.
Involvement in open source technologies and development communities such as Darwin, FreeBSD, Linux, etc.
BS/MS in Computer Science or equivalent knowledge and experience.
Education & Experience
Pay & Benefits
At Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $143,100 and $264,200, and your base pay will depend on your skills, qualifications, experience, and location. Apple employees also have the opportunity to become an Apple shareholder through participation in Apple’s discretionary employee stock programs. Apple employees are eligible for discretionary restricted stock unit awards, and can purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan. You’ll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at Apple, reimbursement for certain educational expenses — including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation.
#J-18808-Ljbffr
Cupertino, California, United States
Software and Services
The Darwin Runtime team in Core OS is looking for enthusiastic engineers interested in developing low-level system technologies for Apple’s operating systems. Darwin is the UNIX-like foundation at the heart of all Apple’s operating systems, stretching from the kernel up through low-level user components. The Darwin Runtime team is responsible for building the low-level user space runtime technologies like Grand Central Dispatch (GCD), inter-process communication systems, memory allocator, threading library, and concurrency and synchronization primitives. The ideal candidate should be self-motivated and effective in operating independently, with a desire to learn and develop technical leadership. Team members are welcome and encouraged to participate in design discussions, code reviews, and development across multiple technologies. Our environment fosters technical innovation, meaningful technology ownership, and a liberating amount of autonomy!
Description
You will be responsible for working on a range of technologies that form the foundation of Apple’s operating systems. The work would include projects such as:
Design and implement new features and APIs for Darwin Runtime technologies like GCD, XPC, pthread, and malloc.
Analyze Apple’s operating systems to understand the structure of the software and use that knowledge to make deep changes across the entire stack.
Architect high-security environments to improve customer security and privacy.
Work with Swift language team to design and develop features to provide operating systems integration.
An engineer in the Darwin Runtime team would regularly:
Participate in all phases of software development cycle: from problem definition and design, through implementation, testing, and debugging.
Diagnose and resolve issues across different layers of the stack.
Work with cross functional teams to enable developer and product requirements.
Minimum Qualifications
Passion for low-level system technologies.
Fluency in the C programming language.
Experience with UNIX-like systems.
System design and architecture skills.
Strong understanding of operating system fundamentals like threading, synchronization primitives, inter-process communication, scheduling, and virtual memory.
Excellent collaborative skills, with the ability to work with a team to design system architecture.
Key Qualifications
Preferred Qualifications
Knowledge of operating system implementation, hardware architecture and assembly programming.
Knowledge of Swift or Objective-C.
Skilled at interface and/or API design.
Experience with lldb or gdb.
Involvement in open source technologies and development communities such as Darwin, FreeBSD, Linux, etc.
BS/MS in Computer Science or equivalent knowledge and experience.
Education & Experience
Pay & Benefits
At Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $143,100 and $264,200, and your base pay will depend on your skills, qualifications, experience, and location. Apple employees also have the opportunity to become an Apple shareholder through participation in Apple’s discretionary employee stock programs. Apple employees are eligible for discretionary restricted stock unit awards, and can purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan. You’ll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at Apple, reimbursement for certain educational expenses — including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation.
#J-18808-Ljbffr