Job Description for Kernel Driver & Runtime Engineer
Company: Manas Technology Ltd.
Location: UK
Experience
Minimum 3 Years
About the Role
We are seeking a talented Kernel Driver & Runtime Engineer to develop low-level system
software and runtime infrastructure for high-performance accelerator and embedded
computing platforms. The role involves Linux kernel driver development, PCIe device
communication, runtime/API development and performance optimization across hardware-
software interfaces.
Key Responsibilities
Linux Kernel Driver Development
• Design, develop and maintain Linux kernel drivers for PCIe and accelerator devices
• Implement device initialization, memory mapping, DMA handling, interrupt processing
and synchronization mechanisms
• Develop character drivers, kernel modules and device communication frameworks
• Ensure driver stability, reliability and compatibility across Linux environments
Runtime & API Development
• Build runtime libraries, APIs and middleware layers for hardware acceleration
platforms
• Develop user-space interfaces for device communication and resource management
• Optimize software stacks for low latency and high throughput performance
• Support integration with firmware and FPGA subsystems
Performance Optimization & Debugging
• Profile and optimize PCIe data transfer, memory usage and system throughput
• Debug kernel-level crashes, memory leaks, synchronization issues and hardware-
software interaction problems
• Conduct benchmarking, stress testing and performance analysis
• Improve scalability and efficiency of runtime systems
System Integration & Collaboration
• Work closely with hardware, FPGA and validation teams for end-to-end platform
integration
• Participate in software architecture reviews and technical design discussions
• Maintain technical documentation, debugging reports and release notes
Required Skills & Qualifications
Technical Skills
• Strong programming expertise in C/C++
• Hands-on experience with Linux kernel development and device driver programming
• Strong understanding of PCIe drivers, DMA mechanisms, interrupt handling and
memory management
• Experience with multi-threaded and performance-critical software development
• Good understanding of Linux internals, kernel subsystems and synchronization
primitives
• Familiarity with debugging and profiling tools in Linux environments
Tools & Platforms
• Linux kernel build systems and debugging tools
• GDB, perf, ftrace, or equivalent profiling/debugging utilities
• Git and collaborative development workflows
Educational Qualification
• Bachelor’s or master’s degree in computer science, Electronics, Embedded Systems, or
related field
Preferred Experience
• Experience working in Agile/Scrum development environments
• Experience with accelerator platforms, high-performance computing, or embedded
runtime systems
• Exposure to FPGA/software integration workflows
• Knowledge of virtualization, memory optimization, or low-latency system design