Senior Kernel Software Developer
As a key member of the Product Development team, you will architect, design, develop and test key portions of our distributed system storage product to meet product specifications and market requirements.
- Analyze and understand market / marketing requirements, design solutions for those requirements and write specifications.
- Design systems level disk storage (block and file) and advanced communication protocol (Fibre Channel, iSCSI, infiniband, NVMe etc.) products in a Unix / Linux / Solaris environment using C.
- Kernel development, clustered system architecture, driver development.
- Participate in code reviews.
- Provide accurate estimates of assigned task effort for inclusion in project planning.
- Share knowledge and information on new technologies with the other team members.
- Research new technologies and methodologies.
Qualifications and Skills
- University degree in Computer Science required, Masters degree is an asset
- 5+ years of experience in platform level development
- Deep understanding of kernel structure, scheduling, resource management, I/O systems, threading model and synchronizations
- Experience in Unix/Linux/Solaris, C
- Ability to debug, analyze and improve system performance, with experience in various performance analysis tools is an asset
- Knowledge of storage systems and file systems is a definite asset
- Experience with PCI HBA drivers is a definite asset
- Knowledge of design and analysis methodologies and application development processes (Agile)
- Strong verbal and written communication skills, in English and/or French
- Strong ability to work in an open and collaborative team environment
- Proven ability to meet deadlines on time and in budget
- Analytical, thorough, resourceful
- Customer service-focused
If you are interested, please send an email to email@example.com with your resume and qualifications.