C/C++ System Software Engineer

Opis oferty

About us
We are one of the leaders in the European memory market – our brands GOODRAM and IRDM stand for innovation, reliability, and high performance. 
Our mission is to deliver the best memory solutions while continuously advancing technology.

As a System Engineer, you will develop system software solutions for our current and future products.

 
Responsibilities: • Design and develop modules/drivers in the Linux I/O path (VFS → block layer → NVMe/driver).
• Implement intermediate layers/filters for disk operations and collect I/O telemetry.
• Work with NVMe/PCIe: NVMe command handling/integration, diagnostics, and analysis of I/O path behavior.
• Ensure correctness under concurrency (synchronization, task/workqueue/IRQ contexts) with minimal overhead.
• Build kernel↔user interfaces (sysfs/debugfs/netlink/ioctl) for configuration and reporting.
• Debug crashes, deadlocks, and performance regressions (e.g., perf/ftrace/eBPF/bpftrace).
• Prepare tests and workloads (e.g., fio) and validate across multiple configurations.
• Support bare-metal and VM compatibility (e.g., KVM/QEMU) in testing and deployment.
• Collaborate with the firmware team on requirements and integration.
• Maintain documentation, perform code reviews, and ensure code quality.
Key Requirements: • Hands-on experience developing drivers/modules in the I/O path (block layer, NVMe, filters/intermediate layers).
• Solid understanding of the Linux I/O stack from application to device (VFS → block layer → driver); experience with blk-mq and/or device-mapper is a plus.
• Knowledge of NVMe/PCIe sufficient for implementing and diagnosing I/O paths and commands (protocol level).
• Strong grasp of mechanisms required in this domain: synchronization, kernel execution contexts (task/workqueue/IRQ), and kernel↔user communication (netlink/ioctl/sysfs/procfs).
• Proficiency in C (system-level); C++ is a plus.
 

Nice to have:

• Experience implementing solutions compatible with both bare metal and virtualized environments.
• Familiarity with eBPF (Linux) for tracing/observability and I/O diagnostics.
• Knowledge of system trust and integrity mechanisms such as signing, chain of trust, and secure boot (at OS/device integration level).
• Basic Rust experience in a system programming context. 

• 3+ years of low-level programming experience (C / kernel).

What we offer: • Real impact on product development — working with hardware, silicon, and R&D teams on innovative projects;
• Stable employment under an employment contract;
• Professional growth opportunities: trainings, conferences, and challenging projects;
• Onboarding support from a mentor and access to all required tools and environments;
• Benefits package: private medical care, sports card, and group insurance;
• Friendly work environment and organizational culture that values quality, innovation, and attention to detail.
Data ostatniej modyfikacji wtorek, 10 lutego 2026