Software Engineer: Linux Driver and Kernel Developer
Electrical Engineering
Device Driver Development
Device Drivers
Driver Development
Embedded Linux
Embedded Software
Embedded Systems
Engineer
Gpu Kernel Driver
Graphics Driver Development
Hardware Software Co Design
Kernel Development
Linux Drivers
Linux Kernel
Software Development
Software Engineer
Software Engineering
Job Description
In this role, you will join Apple’s Silicon Validation team to help exercise and validate subsystems inside complex SoCs. You will focus on Linux device driver development and user-land testing that supports hardware bring-up from pre-silicon through post-silicon platforms.
Working close with designers and architects, you will translate functional IP block use cases into software that can drive validation, while also debugging and root-causing issues spanning both hardware and software.
What you’ll do
- Collaborate with designers and architects to understand functional IP blocks and their use cases
- Implement BSP and perform software bring-up on pre- and post-silicon platforms
- Develop Linux device drivers and user-land tests to exercise and validate subsystems in complex SoCs
- Debug and root-cause hardware and software issues
Experience and education
- 3+ years of experience
- Experience in embedded Linux kernel development
- Experience in C programming
- Bachelor’s degree in Electrical Engineering, Mechanical Engineering, Computer Science, or a related field
Technologies you may work with
- Linux
- C
- ARM architecture
- Mesa
- Vulkan/OpenGL
- GPU compute
- Vulkan CTS
- igt-gpu-tools
Additional preferred qualifications
- Experience with ARM architecture
- Familiarity with the Linux graphics stack (Mesa, Vulkan/OpenGL, GPU compute)
- Experience validating GPUs with graphics and compute workloads, stress tests, or conformance suites (e.g., Vulkan CTS, igt-gpu-tools)
- Knowledge of Linux kernel internals including process scheduler, memory management, concurrency/synchronization, memory allocation, and file systems, plus networking or storage subsystem architecture
- Device driver development and support across one or more of the following: USB, networking, graphics, video, storage, and power management
- Debugging skills in kernel space
- Experience exercising and validating systems from user space, including knowledge of user space APIs
- Experience porting and/or maintaining a Linux distribution for a platform
Pay and benefits
- Base pay range: USD 142,300 - 263,300 per year
- Base pay is determined within the range based on skills, qualifications, experience, and location
- Comprehensive medical and dental coverage
- Retirement benefits
- Discounted products and free services
- Reimbursement for certain educational expenses, including tuition
- Discretionary bonuses or commission payments and relocation (might be eligible)
- Opportunity to become an Apple shareholder through participation in Apple’s discretionary employee stock programs
- Eligible for discretionary restricted stock unit awards
- Ability to purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan
Location: Austin, TX (onsite)
Similar Jobs
Q