The C++ developers maintain our trading/research capabilities in global markets and innovate how we do them. Developers are expected to take on multiple roles - including gathering requirements, development, testing, performance monitoring, and build and release management.
Responsibilities:
- Optimizing the performance of various components of the trading system
- Maintaining, enhancing backtest simulator
- Exploring big-data infrastructure for research
- Execution algorithms research
Qualifications:
- Familiar with modern C++ (11, 14, 17 or 20)
- Strong background in algorithm, data structures and/or operating systems-related topics (memory management, scheduler, I/O etc.)
- Ability to quickly learn new concepts or technologies
- Ability to write sizable applications and manage complexity
- Linux experience
- Effective communicator and decision maker
Pluses:
- Knowledge of automated trading system
- Basic knowledge in operating system concepts: threads, processes, context switch, virtual memory etc.
- Basic knowledge in applied computer architecture concepts: SIMD, superscalar execution, memory/instruction latency vs bandwidth
- GPU programming experience (NVIDIA CUDA framework: basic understanding of blocks/threads launch config, shared memory, latency hiding etc.)