Agent
Jobs
Applied
Tracker
Profile
    1. Jobs for you
    2. Job

    Job · 17896593

    BENGALURU · FULLTIME

    Storage Device Driver Programmer

    Cimware logo

    Cimware

    Bengaluru · onsite · Posted 36d ago

    Sourced fromNaukri
    Undisclosed2–6 yrsfulltimeBengaluru

    About a minute. You'll make an account on the way through.

    agent · working

    • Read this posting0.2s
    • Found the form on Naukri · 8 questions to answer1.1s
    • Decided the answers for all of them3.1s
    • Tailor your résumé to this role
    • Waiting for you

    Section · 01

    About this role

    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


    Disclaimer: This job posting has been aggregated from external source. Role details, content, and availability are subject to change. Applicants are advised to confirm the latest information directly on the company website before applying.

    Sourced from naukri

    Section · 02

    Skills

    BashFirmwareDevelopment ManagerLinux KernelVirtualizationSASSANdebuggingInformation TechnologyLinux

    Storage Device Driver Programmer · waiting for your command