Mac OS Storage Driver Developer
Softeq · Houston, TX · 4 wk ago
On-siteEngineeringContract
About the role
Softeq was established in 1997 to specialize in new product development and R&D, tackling complex tech challenges. Now, we offer early-stage innovation, ideation, and digital transformation consulting.
Key Responsibilities
- Develop and maintain macOS storage drivers with a focus on SCSI protocols using the DriverKit framework.
- Collaborate with hardware engineers to understand SCSI device specifications and design drivers that seamlessly interface with macOS.
- Implement storage driver functionalities including command handling, data transfer, error recovery, and performance optimizations.
- Debug and troubleshoot driver issues leveraging macOS debugging tools like LLDB and Instruments.
- Ensure driver compliance with Apple’s security, sandboxing, and code signing requirements.
- Develop and maintain test plans, documentation, and quality assurance procedures for storage drivers.
- Participate in code reviews and maintain high code quality and best practices.
- Provide technical support during driver integration, deployment, and production troubleshooting.
Job Requirements
- A Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, or a related discipline.
- Proven expertise in developing macOS storage drivers, specifically SCSI-based drivers using the DriverKit framework.
- Strong proficiency in C/C++ programming; knowledge of Swift or Objective-C is a plus.
- Deep understanding of DriverKit APIs, macOS user-space driver architecture, and IO Kit storage concepts.
- Solid knowledge of SCSI protocols, commands, and storage architecture including RAID.
- Experience with debugging and profiling tools on macOS (LLDB, Instruments, system logs).
- Familiarity with macOS security model, driver sandboxing, and code signing procedures.
- Knowledge of hardware interfaces (PCI, Thunderbolt, USB) relevant to storage devices.
- Excellent problem-solving ability and effective communication skills.
- Ability to work independently and collaboratively in an Agile environment.
Preferred Qualifications
- Experience with Agile methodologies and SCRUM frameworks.
- Cross-platform storage driver development experience.
- Knowledge of user-space driver and daemon interaction models.
- Familiarity with continuous integration systems and automated testing strategies.