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 largescale realtime data processing. This role offers the opportunity to work on complex highimpact systems in a collaborative and dynamic setting.
Key Responsibilities:
- Design and develop distributed systems using C to support the firms trading operations.
- Build scalable and reliable solutions for processing large volumes of trading and market data in real time.
- Collaborate with crossfunctional teams including quants and analysts to translate business requirements into technical solutions.
- Implement robust faulttolerance 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 (C17 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 largescale systems.
- Familiarity with relational or NoSQL databases including their integration with distributed systems.
- Excellent problemsolving skills and the ability to troubleshoot complex system issues.
- Strong communication skills and the ability to work effectively in a collaborative team environment.