Senior Software Engineer: Rust
New York, New York, United States
Two Sigma is a financial sciences company, combining data analysis, invention, and rigorous inquiry to help solve the toughest challenges in investment management, insurance technology, securities, private equity, and venture capital.
Our team of scientists, technologists, and academics looks beyond the traditional to develop creative solutions to some of the world’s most complex economic problems.
Our Trading Engineers build and operate low-latency, high-throughput trading systems and platforms responsible for trading and execution. Our systems monitor market conditions and opportunities in real-time to automatically optimize our trade plans, check for compliance, and execute trades in the right venue, at the right time.
In Fast Trading Engineering, we are building the next-generation user-friendly framework supporting low-latency and resource-intensive feature construction, alpha generation and trading across a diverse set of asset classes and markets globally. The framework consists of reusable building blocks packaged into a suite of libraries written in the Rust programming language. These building blocks cover foundational infrastructure as well as finance-related functions.
You will take on the following responsibilities:
- Technical lead and mentor talented engineers to design, implement, document and test components of a new strategic Rust platform
- Establish, document and instill Rust best practices, idioms and approaches to component design
- Design architectures for components of a low latency/high throughput distributed systems
- Design and implement ergonomic, performant, flexible and sound user facing Rust APIs for a wide array of libraries, from low level building blocks to higher level abstractions
- Measure and optimize Rust (and occasionally C) code to achieve desired performance targets
- Interface closely with modelers and quantitative researchers to incorporate their functional, performance and API needs
- Participate in estimation, prioritization and planning of incremental deliverables towards the project’s overall goals
You should possess the following qualifications:
- Minimum 10 years of experience required; 5+ years of production-quality experience preferred in Rust
- BS or MS degree in Computer Science, Engineering, or a related field
- Strong understanding of CS fundamentals (data structures, algorithms)
- Creativity and drive towards problem solving
- Experience and interest in performance and optimization tuning, modern CPU architectures, networking stacks, distributed systems design, and Linux server technologies.
- Enthusiasm for owning projects from start to finish and building high quality, well documented and thoroughly tested software that performs business-critical functions
Highly preferred qualifications:
- Deep understanding of Rust language features, toolchain (e.g. rustc, cargo), ecosystem/tools (e.g. OSS libraries, Rustdoc, Miri), best practices, idioms, and design patterns/approaches
- Knowledge and experience with static and dynamic analysis tools (e.g. valgrind, cachegrind, callgrind, LLVM sanitizers, etc.)
- Thorough understanding of concurrency and parallelism, and where it’s beneficial vs harmful
- Experience developing low latency/high throughput trading systems, or OS kernels/drivers, storage/database engines, web servers, networking middleware, or other systems level software
- Experience with kernel bypass networking (e.g. Solarflare efvi, Intel DPDK)
- Experience with Java, particularly in low latency applications
- Knowledge and understanding of compiler optimizations, particularly LLVM and/or GCC
- Ability to read and understand x86 assembly
You will enjoy the following benefits:
- Core Benefits: Fully paid medical and dental insurance premiums for employees and dependents, competitive 401k match, employer-paid life & disability insurance
- Perks: Onsite gyms with laundry service, wellness activities, casual dress, snacks, game rooms
- Learning: Tuition reimbursement, conference and training sponsorship
- Time Off: Generous vacation and unlimited sick days, competitive paid caregiver leaves
- Hybrid Work Policy: Flexible in-office days with budget for home office setup
The base pay for this role will be between $250,000 and $325,000. This role may also be eligible for other forms of compensation and benefits, such as a discretionary bonus, health, dental and other wellness plans and 401(k) contributions. Discretionary bonus can be a significant portion of total compensation. Actual compensation for successful candidates will be carefully determined based on a number of factors, including their skills, qualifications and experience.
We are proud to be an equal opportunity workplace. We do not discriminate based upon race, religion, color, national origin, sex, sexual orientation, gender identity/expression, age, status as a protected veteran, status as an individual with a disability, or any other applicable legally protected characteristics.