Senior Software Engineer / Architect London, UK c£80-120k benefits This is an exciting and new opportunity for a software engineer / architect to join a start-up involved with the research, development and design of technologies used to enhance, AI, ML and HPC networking. Essential experience: Linux PCIe driver development for highspeed (>100Gbps) application processing (e.g. data centre processors, etc) Our clients’ technologies will revolutionise data centres. Their technologies will speed up training and inference while dramatically reducing energy consumption, supporting a sustainable future. They are looking for an experienced software engineer to develop PCIe drivers for their ultrafast AI/ML and HPC networking solutions. You will work iteratively through a series of prototypes to ultimately deliver a production grade solution. Responsibilities will include software architecture definition, implementation and testing, as well as debugging and benchmarking. This is an opportunity to become the domain expert within the company. The key focus is Linux PCIe driver development for highspeed (>100Gbps) application processing (e.g. data centre processors, etc) Experience is Linux PCIe driver development is essential. Typical involvements: Senior Software Engineer / Architect Software architecture definition in collaboration with the broader team Preparing detailed technical documentation and presentations to stakeholders Linux PCIe driver development Integration with training and inference frameworks on CPU and GPU Liaison with embedded software team over network interface card development Example application development and benchmarking, such as AI training Working with prototype hardware, identifying and root causing bugs and issues Experience of RDMA would be preferred as would PCIe peer-to-peer and / or GPU direct Linux kernel programming (kernel modules, PCI subsystem, memory management, etc) Skills & Experience required: Senior Software Engineer / Architect A Bachelor or Master degree in electronics engineering, physics, or other relevant fields At least 8-10 years of software development experience applied to similar technologies using C (essential) and other relevant languages (e.g. C++). Software architecture definition and implementation experience High speed Linux PCIe driver development experience Experience working directly with prototype hardware alongside the hardware design team Experience of developing Linux PCIe for AI, ML, data storage or HPC networking technologies (or very similar) Experience with some/all the following would be beneficial: Ability to create an understanding of complex ideas, concepts and designs to a variety of audiences from multiple backgrounds RDMA and Libfabrics. CCL libraries PCIe peer-to-peer and GPU Direct (highly desirable) Knowledge of embedded software, Yocto Linux, ARM, FPGA devices could be useful Experience of DPDK (data plane development kit) and eBPF A strong and demonstrable interest in sustainable technologies, AI, ML and / or HPC would be preferred. The Senior Software Engineer / Architect opening is based on site in central London, 2 days per week (min). Assistance can be granted to obtain working visas