Storage Device Driver Programmer

CIMware Technologies Private Limited

Bengaluru

On-site

INR 1,000,000 - 1,500,000

Full time

14 days+

Get more replies from employers

Send a job-specific resume in minutes.

Job summary

CIMware Technologies Private Limited is seeking a highly skilled Storage Device Driver Programmer in Bangalore, India. The role involves developing and optimizing Linux storage drivers for NVMe devices, RAID controllers, and custom storage hardware.

Ideal candidates will have 4-8 years of experience in Linux kernel development, strong knowledge of storage protocols, and device driver programming. If you have a passion for performance optimization and kernel subsystems, we want to hear from you!

Qualifications

  • 4-8 years of relevant experience in driver development.
  • Strong expertise in Linux kernel development.
  • Experience with storage protocols and device driver programming.

Responsibilities

  • Design, develop, and maintain Linux storage device drivers.
  • Optimize IOPS, throughput, and latency for storage devices.
  • Collaborate with hardware and firmware teams.

Skills

C
Linux System Programming
Shell Scripting
Linux Block I/O Stack
NVMe

Education

Bachelor’s or Master’s Degree in Computer Science
Electronics & Communication
Information Technology

Tools

fio
iostat
blktrace
perf

Job description

Location

Bangalore, India

Experience

4-8 Relevant Years

Employment Type

Full-Time

Job Summary

We are looking for a highly skilled Storage Device Driver Programmer with expertise in Linux kernel development, storage protocols, and device driver programming. The candidate will be responsible for developing, debugging, optimizing, and maintaining Linux storage drivers for NVMe devices, File System, RAID controllers and custom storage hardware. The role requires a deep understanding of Linux block layer architecture, I/O scheduling, storage protocols, DMA operations, and performance optimization.

Key Responsibilities
Driver Development
  • Design, develop, and maintain Linux storage device drivers.
  • Develop drivers for:
    • NVMe SSDs
    • RAID Controllers
    • PCIe Storage Devices
    • Custom Storage Hardware
  • Integrate storage devices with Linux kernel block layer.
Kernel Development
  • Work on Linux kernel subsystems including:
    • Block Layer
    • SCSI Subsystem
    • NVMe Framework
    • Device Model
    • DMA Engine
    • Interrupt Handling
  • Port drivers across different Linux kernel versions.
Performance Optimization
  • Analyze and optimize:
    • IOPS
    • Throughput
    • Latency
    • Queue Depth Utilization
  • Tune storage stack for high-performance workloads.
Debugging & Validation
  • Investigate kernel crashes, memory leaks, and I/O failures.
  • Perform root cause analysis using:
    • ftrace
    • perf
    • blktrace
    • crash
    • kgdb
    • dmesg
  • Develop automated test frameworks for driver validation.
Collaboration
  • Work closely with hardware, firmware, validation, and system software teams.
  • Participate in architecture reviews and code reviews.
Required Technical Skills
Programming
  • Strong expertise in:
    • C
    • Linux System Programming
    • Shell Scripting
Linux Kernel
  • Linux Kernel Architecture
  • Kernel Module Development
  • Device Driver Framework
  • Memory Management
  • Synchronization Mechanisms:
    • Spinlocks
    • Mutexes
    • Atomic Operations
    • RCU
Storage Technologies
  • NVMe
  • SATA
  • SAS
  • SCSI
  • RAID
  • AHCI
  • UFS
  • eMMC
Block Layer Knowledge
  • Linux Block I/O Stack
  • BIO Structures
  • Request Queues
  • Multi-Queue Block Layer (blk-mq)
  • I/O Scheduling
  • Scatter-Gather DMA
Hardware Interfaces
  • PCIe
  • DMA Engines
  • Interrupt Handling:
    • MSI/MSI-X
    • Legacy Interrupts
Preferred Qualifications
Advanced Storage Knowledge
  • NVMe Driver Development
  • NVMe over Fabrics (NVMe-oF)
  • Storage Virtualization
  • Zoned Storage Devices
  • Persistent Memory (PMEM)
Performance Tools
  • fio
  • iostat
  • blktrace
  • perf
Cloud & Datacentre
  • Storage Systems
  • SAN/NAS
  • Ceph
  • Distributed Storage
  • Virtualization Platforms
Educational Qualifications
  • Bachelor’s or Master’s Degree in:
    • Computer Science
    • Electronics & Communication
    • Information Technology
    • Related Discipline
Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Staff Engineer SSD Software
Staff Engineer SSD Software

1840 Micron Tech. OP India LLP • Hyderabad

On-site
INR 1,500,000 - 2,200,000
Principal Engineer - Firmware
Principal Engineer - Firmware

Microchip Technology Inc. • Bengaluru

On-site
INR 3,500,000 - 5,500,000
Sr. Engineer - Storage drivers windows
Sr. Engineer - Storage drivers windows

Geminus • Pune District

On-site
INR 1,500,000 - 2,500,000
Principal Engineer - Firmware
Principal Engineer - Firmware

Microchip Technology • India

On-site
INR 3,500,000 - 7,000,000
PCIe Linux Drivers/Firmware Development Engineer
PCIe Linux Drivers/Firmware Development Engineer

Luxoft • Hyderabad

On-site
INR 1,500,000 - 2,500,000
Technical Architect
Technical Architect

Toshiba • Bengaluru

On-site
INR 3,000,000 - 5,400,000
Staff Engineer
Staff Engineer

DDN • Pune District

On-site
INR 400,000 - 700,000
Storage Firmware Engineer (NVMe, SATA, SSD)
Storage Firmware Engineer (NVMe, SATA, SSD)

Celestica Inc. • Chennai District

On-site
INR 1,500,000 - 2,200,000
Staff Engineer SSD Software
Staff Engineer SSD Software

Micron Technology, Inc • Hyderabad

On-site
INR 1,800,000 - 2,500,000
Firmware Developer Storage
Firmware Developer Storage

Freelancer • Bengaluru

On-site
INR 800,000 - 1,600,000