Senior Software Engineer - D&R

Northern Ireland - Belfast


Northern Ireland - Belfast


Information Technology

Senior Software Engineer - D&R

We are looking for a passionate Senior Software Engineer to join our Network Sensor Team.This person should bring deep a curiosity about all areas of technology, as well as specific expertise in the technologies listed below. You will have a keen interest in cloud technologies and writing efficient, clean, and maintainable code. This individual will play a pivotal role in architecting and developing Rapid7's network traffic analysis capability, as well as guiding and mentoring more junior developers.

About the Team

In this position, you'll be joining our Network Sensor Team - a team primarily focused on building out the NTA (Network Traffic Analysis) product alongside passionate and friendly peers.


  • Developing Rapid7 network traffic analysis capability: including a high-speed DPI engine and network IDS

  • Participating in all phases of the development process: design, implementation, documentation, planning, release management, and analysing telemetry data.

  • Mentoring fellow team members

  • Assisting in leading R&D efforts to ensure continuous innovation

  • Upholding high standards such as exemplary design clarity, implementation quality, performance, security, etc

  • Continuously developing personal skills and learning about new technologies on the frontier of high-speed packet processing and network security

Required Skills & Experience

  • Deep experience of systems-level programming in C or C++

  • Experience with either DPDK or Linux networking stack internals, especially XDP

  • Good understanding of network protocols at the level of bits and bytes

  • Familiarity with performance analysis using tools such as perf, strace

  • Strong ability to debug issues in complex systems across multiple layers of the tech-stack

  • Good working knowledge of UNIX, especially Linux

  • Experience in at least one other language such as Python, Rust, Go etc


  • Knowledge of one or more of the following areas would be a big plus: kernel or device-drivers, compiler design, databases (implementation and theory)

  • Broad awareness of relevant security issues arising from processing large amounts of untrusted data such as network traffic