Responsibilities of the Trading Systems Developer include, but are not limited to:
? Writing a low-latency/high-throughput production trading environment.
? Implementing new protocols to expand our presence in diverse geographic markets.
? Making meaningful contributions to our Research Trading Platform.
General Qualifications/Junior Level
We encourage Bachelors and/or Masters in Computer Science to apply. Candidates must have the minimum following skills and experience:
? Strong background in C++, Python and Linux (shell programming, application debugging and profiling). Java and C# a plus.
? Knowledge of/experience in object-oriented programming, algorithms and advanced non-locking data structures.
? Strong background in multi-threaded program design, implementation and design pitfalls.
? Committed to following best documentation and testing practices, including but not limited to: extensive code review, unit testing, clarity of code and strong object oriented practices.
Advanced Qualifications/Senior Level
The ideal candidate will also possess the following skills and experience:
? Strong IPC's background (shared memory, message queues) and a strong networks background (UDP, Multicast, TCP) using Asynchronous IO.
? Knowledge of underlying Linux OS Design: Memory Allocation and Management, Paging, User-level Scheduling, Kernel-Thread Scheduling, Interrupt Handling. Experience in RTOS (a plus).
? Knowledge or Experience in Profiling applications and Linux OS, including but not limited to: memory management, cache misses, Intel Architecture (a plus), assembly (a plus). Experience with Linux Perf, OProfile, Valgrind Tools or Intel VTunes.
No comments:
Post a Comment