Software Engineer

Company:  Tenth Revolution Group
Location: Chicago
Closing Date: 02/11/2024
Hours: Full Time
Type: Permanent
Job Requirements / Description

C++ Developer:


We have a client that is offering an exciting opportunity for a skilled C++ Developer to design and implement software features within a real-time, multi-threaded, server architecture. The ideal candidate will bring extensive experience with C++ (preferably C++11 or higher), object-oriented design, and debugging tools, and will have a strong focus on performance optimization. Familiarity with the trading industry and protocols like FIX/SBE/ITCH is preferred, as well as proficiency in automated testing and Linux operating systems.



Key Responsibilities:

  • Code daily in C++ and other programming languages to develop and enhance software.
  • Design and implement software requirements and new product features.
  • Maintain and improve existing functionality in real-time, multi-threaded server architecture.
  • Participate in design discussions, reviews, and create high-level and detailed design documents.
  • Assist with product documentation, unit testing, and ensure overall product quality.
  • Support and enhance trading software in a multi-tier, high-throughput, low-latency environment.
  • Propose fixes and improvements based on analysis of stack traces, core dumps, and incident reports.
  • Collaborate with Quality Assurance and Project Management teams to align with release and sprint planning.
  • Develop and run automated and unit tests to ensure software reliability.
  • Continuously evolve the software platform by integrating new components with existing architecture.
  • Perform memory and resource management analysis and optimize performance.


Requirements:

  • Minimum of 5 years of C++ development experience (C++11 or higher preferred).
  • Strong object-oriented design and multi-threaded application development skills.
  • Experience with debugging tools (e.g., GDB, Address Sanitizer).
  • Proficient in template and metaprogramming.
  • Familiarity with IPC mechanisms and distributed systems.
  • Experience with Git, TCP/IP, and UDP protocols is a plus.
  • Strong understanding of business requirements and ability to translate them into technical solutions.
  • Experience in the trading industry and market data processing (FIX/SBE/ITCH) is highly preferred.
  • Knowledge of Linux operating systems and Python is a plus.
  • Familiarity with automated testing, unit testing, and agile/iterative development methodologies.
  • Excellent debugging and performance-tuning skills.

Apply Now
Share this job
Tenth Revolution Group
An error has occurred. This application may no longer respond until reloaded. Reload 🗙