About the Role
About the Role
As a Systems Software Engineer on our Network Capture Services team, you will help build and operate the firm's network packet capture platform. The data our capture systems produce is relied on daily by trading, research, and support teams, and they treat it as mission critical. You will work alongside experienced software and systems engineers who share operational responsibility for everything we ship.
This role is broader than a typical systems software engineering role. You will write software (C++, Python, Rust, Ruby), and you will also spend a significant share of your time on systems and infrastructure work: specifying, building, and deploying capture servers, automating that process with Ansible, and coordinating with our data center, systems administration, network engineering, and purchasing teams to get it done. You will take a regular turn on the team's weekly production support rotation, and there is steady feature development work alongside it. If you want a role with real breadth, genuine ownership of what you deploy, and you like to be challenged, this is for you. This role is based in our Chicago headquarters.
What You'll Be Working On
- Designing, building, deploying, and validating network capture servers, and driving that work to completion across every team involved.
- Developing and maintaining our capture and query software (C++, Python, Rust, Ruby) with a constant focus on testing, reliability, and performance.
- Building the Ansible automation, configuration management, and deployment tooling that makes capture server provisioning repeatable rather than manual.
- Taking a regular turn on the team's weekly production support rotation: troubleshooting live capture issues, coordinating incident response, and monitoring proactively to catch problems before our users do.
- Improving automation, monitoring, and capacity planning, and seeing your own proposals through to production.
- Onboarding new capture deployments in partnership with the stakeholder teams that depend on them.
- Serving as a liaison between Network Capture Services and the infrastructure teams we work with.
Who You Are
You will be right at home if you have:
- 3+ years of professional systems software engineering experience, strong skills in a systems language such as Rust, C/C++, or Go, and a genuine willingness to make C++ your primary language. Ruby and Rust experience are both a plus.
- Experience with DPDK or comparable kernel-bypass packet processing, including the concepts that come with it — hugepages, CPU pinning and core isolation, NUMA awareness, poll-mode drivers.
- Strong Linux skills, including administration and troubleshooting of production servers. RHEL-family experience is a plus, as is a background as a Linux administrator or network engineer.
- Solid networking fundamentals: TCP/IP, routing, switching, NICs, packet analysis.
- Hands-on experience with server hardware and data center workflows — specifying and validating builds, working through remote hands, rack and cabling coordination, firmware and BIOS, out-of-band management.
Requirements
Systems software engineering
3+ years of professional experience in systems software engineering.
C++ proficiency
Strong skills in C++ and a willingness to make it your primary language.
Linux administration
Strong Linux skills, including administration and troubleshooting of production servers.
Networking fundamentals
Solid understanding of TCP/IP, routing, switching, and packet analysis.
Nice to Have
Experience with Rust is a plus.
Familiarity with DPDK or comparable kernel-bypass packet processing.
Benefits
Autonomy
We value autonomy and the ability to quickly pivot to capture opportunities.
Diverse asset classes
Opportunity to work across various asset classes including Fixed Income, ETFs, and more.