Embedded System Firmware Engineer, Wireless Technologies & Ecosystems
Role details
Job location
Tech stack
Job description
The Apple Cellular Platform Software team is looking for a cross-disciplinary firmware engineer passionate about embedded systems. In this role, you will work at the hardware/software interface and develop a range of low-level device drivers that directly control hardware, such as CPUs, memory, DMA, timers, interrupts, GPIOs, I2C, SPI, and hardware loggers. There will be significant collaboration with hardware designers to understand, improve, and document hardware/software interfaces. Candidates must be knowledgeable and comfortable working across both hardware and software domains.","responsibilities":"Design and develop Board Support Package (BSP) for RTOS bootstrapping.
Design and develop unit tests to ensure software quality.
Support pre- and post-silicon validation, bring-up and performance profiling.
Conduct software debugging using debuggers, traces, and crash logs.
Perform software integration and manage branches with version control tools.
Review hardware specifications and assist with hardware debugging.
Support factory testing and resolve critical issues on-site.
Requirements
Do you have experience in Software engineering?, Experience with low-level hardware components (Memory, DMA, Timer, GPIOs, UART, SPI, I2C, etc.).
Experience using Python as a support language for test automation, data analysis, and tool development to aid firmware validation and regression testing.
Experience with pre-silicon bringup and validation on FPGA and emulation platforms.
Experience with cycle-accurate modeling and performance analysis.
Minimum Qualifications
Bachelors degree in Electrical Engineering (EE), Computer Engineering (CE), or related field.
5+ years of experience developing embedded firmware or kernel-mode drivers.
Fluency in data structures and algorithms commonly used in an RTOS, implemented in C/C++ and assembly.
Solid understanding of embedded system components such as CPUs, memory hierarchies, DMA, timers, interrupt control units, and interconnect buses.
Deep knowledge of real-time operating system (RTOS) concepts such as thread/process scheduling and synchronization, exception handling, virtual memory management and inter-process communication.
Benefits & conditions
4.14.1 out of 5 stars Sunnyvale, CA $147,400 - $272,100 a year, Pulled from the full job description
- Employee stock purchase plan
- Health insurance
- Retirement plan
- Dental insurance
- RSU, 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 $147,400 and $272,100, 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. Learn more about Apple Benefits
Note: Apple benefit, compensation and employee stock programs are subject to eligibility requirements and other terms of the applicable plan or program.