Job Openings
C++ Software Engineer
About the job C++ Software Engineer
We are seeking a C++ Software Engineer to join our client in trading space. You will design, develop, and optimize distributed trading systems that handle large-scale real-time data processing. This role offers the opportunity to work on complex, high-impact systems in a collaborative and dynamic setting.
Key Responsibilities:
- Design and develop distributed systems using C++ to support the firm's trading operations.
- Build scalable and reliable solutions for processing large volumes of trading and market data in real time.
- Collaborate with cross-functional teams, including quants and analysts, to translate business requirements into technical solutions.
- Implement robust fault-tolerance and failover mechanisms to ensure system reliability and uptime.
- Maintain and enhance existing codebases, ensuring adherence to best practices for maintainability and scalability.
- Conduct system performance analysis and debugging to optimize application efficiency.
- Write comprehensive unit tests and participate in peer reviews to maintain high code quality.
- Utilize Linux systems extensively for development, debugging, and deployment, leveraging shell scripting and performance tuning tools.
Requirements:
- Strong expertise in C++ development, including experience with modern C++ standards (C++17 or later).
- Solid understanding of distributed systems design and architecture.
- Experience with multithreading and concurrency in distributed applications.
- Proficiency in working with Linux environments, including debugging, performance tuning, and shell scripting.
- Strong grasp of algorithms, data structures, and their application in large-scale systems.
- Familiarity with relational or NoSQL databases, including their integration with distributed systems.
- Excellent problem-solving skills and the ability to troubleshoot complex system issues.
- Strong communication skills and the ability to work effectively in a collaborative team environment.