Teknavo development team is looking for an experienced Senior C++ Software Developer in St. Petersburg, Russia.

The project focuses on low-latency multi-threaded applications development. The applications are intended to aggregate financial data processing and provide API in C++, Java and .NET.

The successful candidate will have the opportunity to work on highly-optimized, scalable, redundant, and distributed software that facilitates normalization and delivery of data.

Long term business trips option is avaliable if desired.

Qualifications:

  • Bachelor’s or Master’s Degree in Computer Science, Computer Engineering or Related Field (or equivalent expertise)
  • Minimum of 5 years of C++ development experience
  • In depth knowledge of both C and C++, С++11/14
  • Experience in low-level C programming
  • Solid understanding of Data Structures, Algorithms (big O notation), and Object-Oriented Design
  • Good knowledge of Multi-threading (race conditions, synchronization primitives, atomic operations, threading models)
  • Solid understanding of principles of network programming (sockets, TCP/IP stack and socket options) and distributed architectures
  • Working knowledge with optimization techniques, such as avoiding memory allocation and data copying
  • Experience with High-Performance Unix Programming (preferred for RTHs)
  • 64 bit programming/porting experience
  • Experience in cross-platform applications development (mainly Windows and Linux), widely used compilers, build systems and tools for these OS (MSVC, GCC, Clang, cmake, gmake, gdb, Windows debuggers)
  • Experience with standard and general purpose libraries (STL, Boost)
  • Knowledge of Java/.NET/Python is a plus
  • Understanding of XML/XSD and other schema driven data is a plus
  • Financial and/or Market Data experience is a plus