Sr. Software Engineer II, Exchange Connectivity
What you’ll do:
- Design, implement, and support exchange connectivity components across multiple asset classes and protocols
- Develop and maintain market data handlers, order gateways, and contract/instrument reference data processors
- Create APIs to expose exchange services to the broader organization via REST, WebSocket, event bus, or other mechanisms
- Collaborate closely with the Trading OMS, FCM, and infrastructure teams
- Optimize for low latency, high throughput, and fault tolerance across all trading and data flows
What you’ll need:
- 8+ years of experience in the trading industry, ideally with C++ or Rust
- Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, or a related field
- Proven experience building exchange connectivity and market data systems across multiple venues
- Strong understanding of network programming, multicast UDP, TCP, and asynchronous I/O
- Deep knowledge of trading industry specifications (FIX, SBE, market data formats, etc.)
- Strong communication and collaboration skills, including the ability to mentor others and drive change across teams
- Experience supporting live trading systems in production — diagnosing connectivity issues, latency anomalies, and failover events
- Strong sense of ownership, with the ability to deliver robust, tested, and observable software in mission-critical environments
Bonus Points for:
- Capital markets experience
- Performance profiling and tuning using perf, VTune, Wireshark, or similar tools to analyze and reduce latency
- Low-latency systems development with deep experience optimizing for performance, throughput, and determinism in production trading environments
- Building and maintaining real-time feed handlers for exchange protocols (ITCH, OUCH, FIX/FAST, CME MDP, Eurex ETI, etc.)
- Familiarity with U.S. and international exchange APIs and connectivity protocols (CME, ICE, Eurex, CBOE, Binance, etc.)
- Expert-level Linux knowledge, including performance tuning, kernel parameters, NUMA, and clock synchronization (PTP)
- Building resilient distributed systems that handle failover, recovery, and state synchronization
- Expertise in concurrency, multi-threading, and asynchronous programming
- Familiarity with IBM MQ for exchange data transfer
- Experience with low-latency networking, kernel bypass, or FPGA acceleration
Pay:
The salary range for this role will be $140,000-$190,000 USD. In addition, this position will also receive an annual target bonus of 10%. Bonus pay at NinjaTrader is based on individual performance (50%) as well as company/team performance (50%). Salary and bonus earnings are only two components of the total compensation package offered by NinjaTrader. NinjaTrader offers a 401(k) plan through ADP under which the company will match up to 3.5% of employee contributions. Annual paid time off allowance accrues at a rate of 18 days per year plus seven paid holidays.
Location:
This role is based in Chicago, IL. We are not open to remote candidates for this role. Hybrid: For Chicago-based employees, we follow a hybrid work schedule: In-office Tuesday through Thursday, with remote work on Mondays and Fridays. In addition to these weekly remote days, we offer: 20 additional flex remote days annually, 5 Company Wide Office-Optional weeks tied to major holidays.
Our Core Benefits Include:
- Generous PTO
- 7 Paid Holidays Annually + 5 Conditional Holidays Annually
- 1 Service Day Annually
- 401k with 3.5% Company Match
- Paid Parental Bonding Leave
- Health, Vision, Dental Coverage
- Life and Disability Insurance Covered 100% by NinjaTrader