Senior C++ Engineer


This is an opportunity to join a world-leading engineering team working on the design and development of new features across our client entire product range. We are at a tremendously exciting stage with extensive innovative work on-going and an exciting vision to fulfill.  our client's technology is used in many ways today including: 

  • to understand our customers’ market position in capital markets;
  • to understand how our customers’ backbone network is performing;
  • to debug our customers’ application performance;
  • to monitor voice over IP call quality.

 We need brilliant engineers to help bring this technology into new markets and new deployment models. If you want to work in a team with people at least as good as you, if you want to solve the problems encountered when analysing the firehose of network data in real time - capturing, decoding, analysing and indexing at 40Gb/s and more - then our client is what you are looking for.


  • Third Level Computer Science or Computer Engineering Degree


  • A strong proficiency in C++ development under Linux is required.
  • A suitable candidate should be familiar with:
    • High-performance systems and multi-threaded application development
    • Automated testing (unit testing, integration testing)
    • Linux-based development environments, including tools such as gdb and valgrind
  • Knowledge or experience with the following is a distinct advantage:
    • STL
    • Boost
    • Python
    • Financial trading protocols e.g. FIX
    • IP networking
    • Packet capture analysis using tools such as Wireshark

 We are looking for experienced C++ engineers who:

  • Think problems all the way through
  • Understand how to write code that can be worked on by others
  • Understand what it takes to deliver and code a high availability and high performance system
  • Are aware of the implementation details of commonly used C++ features and how to use that knowledge to help implement efficient yet maintainable code
  • Are comfortable asking for help, taking advice and accepting criticism
  • Can articulate the reasoning behind decisions or trade-offs
  • Can follow existing patterns where required to do so
  • Can invent new patterns where required to do so - and justify that invention
  • Are able to solve issues seen in the field from very limited data