Software Engineer III

DDN
Pune Office, India
On-site

Who this role is best for

Strong fit for experienced systems engineers who work with Linux block devices and performance optimization.

Best fit for

  • Experienced systems engineers with a focus on Linux storage and performance optimization
    — “design, develop, and optimize userspace block devices on Linux”
  • Candidates with a background in kernel-level debugging and performance tuning
    — “Debug and resolve issues across user space and kernel space”
  • Individuals who have worked on storage frameworks like UBLK or SPDK
    — “Hands-on experience with UBLK, SPDK or other storage frameworks”
  • Professionals with a track record in high availability clustering and production performance tuning
    — “Development experience in high availability clustering solutions required”

Things to consider

  • Candidates must have a minimum of 8 years of experience to qualify.
    — “Candidate should have 8+years of experience.”

How to stand out

  • Emphasize experience with Linux block layer and io_uring in your resume and interviews.
    — “Work with Linux block layer, io_uring, and kernel interfaces”
  • Highlight contributions to open source projects related to Linux kernel or storage.
    — “Prior experience contributing to Linux kernel or storage-related open source”
  • Demonstrate expertise in performance benchmarking and regression analysis.
    — “Participate in performance benchmarking and regression analysis”
  • Include experience with RDMA, NVMe, or NVMe-oF in your technical background.
    — “Working experience with RDMA, NVMe, NVMe-oF preferred”
Pace · Fast PacedCollaboration · HighAutonomy · MediumDecision Impact · Team

Derived from job-description analysis by Serendipath's career intelligence engine.

What success looks like

  • designing and developing UBLK-based userspace block devices
  • implementing high-performance I/O paths
  • optimizing storage performance
  • collaborating with kernel, platform, and application teams
  • participating in performance benchmarking
Typical background
8+ years of software development experiencesolid experience with Linux internalsstrong debugging skills

Skills & requirements

Required

C ProgrammingLinux InternalsLinux Block Device SubsystemIo_uringSystem CallsMemory ManagementConcurrencyUserspace-kernel InteractionDebuggingPerformance OptimizationStorage ArchitectureHigh Availability ClusteringFile SystemsVirtualizationContainer StorageRDMANvmePerformance TuningScriptingProblem-solving

Preferred

UBLKSPDKStorage FrameworksLinux Kernel ContributionOpen Source ContributionKVMDockerKubernetes CSINvme-of

Stack & domain

CLinuxUBLKSPDKIo_uringGdbPerfStraceFtraceBpfPythonBashProblem-solvingAnalyticalCommunicationStoragePerformance Engineering

About the role

Original posting from DDN via Ashby

Job Summary :

We are looking for a skilled Software Engineer III to design, develop, and optimize userspace block devices on Linux. The role involves working close to the Linux kernel, io_uring, and storage subsystems to build high‑performance, reliable, and scalable storage solutions.

Roles and Responsibilities:

  • Design, develop, and maintain UBLK-based userspace block devices on Linux
  • Work with Linux block layer, io_uring, and kernel interfaces
  • Implement high‑performance I/O paths with low latency and high throughput
  • Debug and resolve issues across user space and kernel space
  • Optimize storage performance, memory usage, and CPU utilization
  • Collaborate with kernel, platform, and application teams on storage architecture
  • Write clean, maintainable, and well-documented code
  • Review code and contribute to design discussions and technical decisions
  • Participate in performance benchmarking and regression analysis
  • Guide and assist QA group with creating & executing the test cases.
  • Provide insight into the system behaviour by analysing system logs & debugging software

Skills:

· Software development with strong C programming.

Candidate should have 8+years of experience.

· Solid experience with Linux internals

  • Good understanding of:
  • Linux block device subsystem
  • io_uring
  • System calls, memory management, and concurrency
  • Experience with userspace–kernel interaction (netlink, ioctl, sysfs, etc.)
  • Strong debugging skills using tools like:
  • gdb, perf, strace, ftrace, bpf
  • Experience working in multithreaded and high‑performance environments
  • Familiarity with POSIX APIs and low‑level I/O mechanisms
  • Good understanding of data structures and algorithms
  • Hands-on experience with UBLK, SPDK or other storage frameworks

· Development experience in high availability clustering solutions required.

  • Prior experience contributing to Linux kernel or storage-related open source
  • Knowledge of file systems (ext4, xfs, btrfs, etc.)
  • Experience with virtualization or container storage (KVM, Docker, Kubernetes CSI)
  • Working experience with RDMA, NVMe, NVMe-oF preferred
  • Experience in performance tuning on production systems
  • Scripting experience (Python, Bash) preferred
  • Strong problem-solving and analytical skills
  • Ability to work independently on complex system-level problems
  • Good communication skills for cross-team collaboration
  • Passion for low-level systems and performance engineering

Source: DDN careers (Ashby)

Similar roles