Software Engineer Storage
Software and Services
Be part of the engineering team creating next-generation storage technologies for all Apple device platforms. We are looking for a Storage Software Engineer with working knowledge of device drivers, block storage stack and firmware, along with strong programming skills.
- Expert level C programming/debugging skills a must. Knowledge of C++ basics a must
- Should be familiar with compilers, linkers, and source code management utilities. Knowledge of Xcode is a plus
- Experience with software debuggers (e.g. gdb) is a must. Knowledge of kernel debugging is a plus
- Should be proficient in Operating Systems and kernel architecture. Knowledge of OS security concepts is a plus
- Should be familiar with OS performance analysis and trouble shooting
- Should be familiar with storage and IO paradigms. Deep knowledge of any storage protocol ( like SCSI, SATA, NVMe ) is a plus
Maintain device drivers, block storage stack and user level frameworks for storage technologies in iOS and MacOS. Develop new features/device drivers/firmware for new storage technologies. Design, code, and maintain firmware updaters, test tools, and basic command line and GUI applications relevant to storage technologies. Mac/iOS system bring-up and system-level debug of issues with new chipsets and hardware devices. Make enhancements to the Darwin kernel and other related software stacks (e.g. USB) as necessary.
Education & Experience
Bachelor’s degree in CS/CE/EE ( or equivalent field ). MS Preferred.