Samsung Cambridge Solution Centre logo

Senior Systems Software Engineer – Accelerator-Integrated I/O

Samsung Cambridge Solution Centre

Posted 2 days ago

About this role

Senior Systems Software Engineer – Accelerator-Integrated I/O

Department: Memory Business

Employment Type: Permanent - Full Time

Location: Copenhagen, Denmark


Description

About the Role

We are looking for a Senior Systems Software Engineer to build accelerator-integrated I/O and data movement systems on Linux.

In this role, you will work on real, performance-critical systems that integrate accelerators into storage and memory data paths, including GPU- and accelerator-initiated I/O, peer-to-peer DMA, and multipath I/O architectures. The focus is on system-level design and implementation, spanning kernel interfaces, user-space drivers, and device-accessible execution paths.

This is a hands-on engineering role. You will design, implement, measure, and upstream working code that runs on real hardware. The work emphasizes Linux systems software, open ecosystems, and upstream collaboration.

Company Description

Samsung Semiconductor Denmark Research (SSDR) is part of Samsung’s Memory Division, the global leader in NAND flash and DRAM technologies. SSDR is a founding member of Samsung’s Global Open EcoSystem Team (GOST), a global initiative focused on open-source development, standards, and ecosystem collaboration.

Our mission is to advance memory and storage innovation by shaping the system software and platforms that enable next-generation hardware. We work to ensure that emerging system requirements, from accelerators to fabrics, are reflected in future software stacks and silicon.

Our team specializes in systems software and open-source development, contributing to Linux subsystems, user-space I/O frameworks, and industry standards such as NVMe and SNIA. We collaborate closely with hyperscalers, research institutions, and industry partners to bring new architectures into practice.

What You Will Work On

Depending on background and interests, you will work across several of the following areas:

Accelerator-Integrated I/O and Data Paths
  • Accelerator-initiated and accelerator-assisted I/O
  • Peer-to-peer DMA between accelerators, storage, and network devices
  • Queue-based I/O models and command submission from non-CPU initiators
  • Control-plane vs data-path separation in heterogeneous systems
Linux and User-Space I/O Infrastructure
  • User-space NVMe drivers and frameworks such as SPDK
  • Cooperative and multipath I/O using ublk, io_uring, and related mechanisms
  • NVMe command construction, queue provisioning, and polling-based execution
  • Abstractions for routing I/O across kernel, user space, and device-resident drivers (for example via frameworks such as xNVMe)
Memory, DMA, and PCIe Integration
  • DMA reachability, IOMMU, ATS, and address translation
  • Accelerator-accessible memory and zero-copy data movement
  • PCIe topology, peer routing, and resource partitioning (including SR-IOV)
Storage, Networking, and Fabrics
  • NVMe over PCIe and over fabrics
  • High-performance Ethernet and RDMA (RoCE, InfiniBand)
  • Interaction between storage, networking, and accelerator data paths
  • End-to-end data movement across storage, memory, and network tiers
Interoperability and Open Systems
  • Preserving Linux file-system semantics and OS-managed storage guarantees
  • Integrating accelerators without custom on-disk formats or closed stacks
  • Upstream contributions to open-source projects
  • Technical collaboration with platform vendors and standards bodies

Key Responsibilities & Qualifications

Responsibilities
  • Design and implement system software that integrates accelerators into storage, memory, and network I/O paths
  • Prototype and evaluate new mechanisms on real hardware
  • Contribute code upstream to Linux and related open-source projects
  • Analyze and optimize performance across CPU, accelerator, memory, storage, and network
  • Collaborate with internal teams and external ecosystem partners
  • Communicate designs and results clearly through code, documentation, and technical discussion
Qualifications

We do not expect candidates to match everything below. Strong candidates typically have depth in one or two of these areas and curiosity about the rest.

Required Experience
  • Strong background in Linux systems programming, either in the kernel or in performance-critical user space
  • Experience with low-level I/O, data movement, or resource management
  • Ability to reason across hardware and software boundaries
Relevant Background Areas
  • Storage and I/O stacks, including NVMe, block devices, or user-space drivers such as SPDK
  • Networking and data-plane technologies, including Ethernet and RDMA
  • DMA, PCIe, memory management, and queue-based device interfaces
  • Performance analysis, benchmarking, and systems-level debugging

Helpful but Not Required
  • Experience with accelerator runtimes or device-accessible execution models
  • Familiarity with frameworks that expose NVMe at the command level (for example SPDK or xNVMe)
  • Open-source development and upstream collaboration
  • Exposure to industry standards or ecosystem work (NVMe, SNIA, PCIe, etc.)

What This Role Is Not
  • This role is not focused on firmware-only, RTOS-only, or deeply embedded development
  • This role is not primarily about application-level programming or high-level frameworks
 We are looking for engineers who enjoy working at the systems integration layer, where operating systems, devices, and hardware capabilities meet.
How We Work
  • Upstream-first development
  • Open collaboration with maintainers, vendors, and ecosystem partners
  • Real hardware, real measurements, and evidence-based decisions
  • Clear separation of control-plane and data-path responsibilities

Culture

We are a group of builders who care deeply about systems. We value depth, curiosity, and technical ownership. You will have autonomy to explore ideas, but also responsibility to make them real and measurable. We work with trust, openness, and a shared sense of purpose.

Job details

Workplace

Office

Location

Copenhagen, Denmark

Job type

Full Time

Similar

Company

Jobr Assistant extension

Get the extension →