Software Engineer - Trading Group
A quantitative trading team is looking to add a software engineer who will focus on improving real-time performance of the trading system across software, network, and hardware components. The ideal candidate will be the expert on team for end-to-end high-performance software design.
The individual in this role will empirically identify components which introduce unnecessary latency and impact throughput. S/he will perform quantitative experiments and benchmarks to find novel performance improvements, as well as develop performance-conscious software and make improvements to existing system. In addition, this individual will serve as the go-to developer on the trading team for general software development (infrastructure upgrades as well as trading algorithm related.)
- Experience in a performance-oriented low-level role such as hardware driver development, telecommunications, graphics or game software development, or system software.
- Experience with high performance / parallel computing
- Experience with GPU computing
- Strong knowledge of computer architecture, caching, memory hierarchies, data flow, and software optimization.
- Strong C++ or C experience writing high-performance software.
- Likely to have an Electrical or Computer Engineering degree.
- Good understanding of network protocols and client-server software design.
- Experience designing efficient serialized data structures, such as wireline packet formats or file formats.