Project description
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 and providing solutions for consumers of real-time and historical, raw and normalised market data - then Corvil is what you are looking for.
Your tasks
This is an opportunity to join a world-leading engineering team working on the design and development of new features across Corvil’s entire product range. We are at a tremendously exciting stage with extensive innovative work on-going and an exciting vision to fulfill. Corvil’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 capture and provide access to historical market data;
- To provide normalised real-time market data feeds;
- to monitor voice over IP call quality.
Who we're looking for?
Requirements
- Third Level Computer Science/Engineering Degree or equivalent
- 2-4 years of development experience
- A strong proficiency in C++ development under Linux is required.
- Understanding of algorithms and design patterns
A suitable candidate should be familiar with
- 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
- Virtualized/cloud technologies
- Experience with Continuous Integration (Jenkins), including the delivery of CI aligned test automation
- Financial trading protocols e.g. FIX
- IP networking
- Packet capture analysis using tools such as Wireshark
Desired Skills and Attributes
- 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
- Healthcare package
- Leisure package
- Cold beverages
- Hot beverages
- Fruits
- Snacks
- Lunches
- Conferences
- Trainings
- Books
- Car parking
- Bicycle parking
- Shower