We are looking for a Senior Systems Engineer with 10+ years of experience in systems-level engineering (Rust/C/C++), including 5+ years of production Rust, to design and build high-performance, low-latency, fault-tolerant trading infrastructure. Prior hands-on experience with financial trading systems is mandatory.
Responsibilities
  1. Design, develop, and maintain high-performance backend services using Rust - Build scalable and reliable distributed systems capable of handling high request volumes - Optimize application performance, memory usage, and resource utilization - Design clean, maintainable, and well-tested software architecture
  2. Collaborate with product, engineering, and DevOps teams to deliver production-ready solutions
  3. Participate in architecture discussions, code reviews, and technical planning - Troubleshoot production issues and improve system reliability and observability - Write clean, well-documented, production-quality code following engineering best practices
Required Qualifications
  1. 10+ years of professional systems programming experience in Rust, C, or C++ (5+ years production Rust)
  2. Mandatory: hands-on experience with financial trading systems — exchanges, order books, matching engines, OMS/RMS, or market data systems (equities, F&O, FX, commodities, or crypto)
  3. Strong understanding of exchange mechanics — order types, price-time priority matching, spot trading, derivatives (futures/perpetuals), options, margining and liquidation concepts
  4. Strong experience building production-grade, low-latency, high-throughput backend applications
  5. Solid understanding of distributed systems and concurrent programming — Raft/consensus, replication, snapshots, deterministic state machines, exactly-once semantics
  6. Advanced concurrency: lock-free/wait-free structures, ring buffers, thread-per-core design, core pinning
  7. Strong understanding of networking concepts — TCP/IP, UDP, multicast, real-time communication, asynchronous networking
  8. Experience designing and implementing binary communication protocols for inter-service communication (SBE, Protocol Buffers, FlatBuffers, Cap'n Proto)
  9. Experience with microservices architecture and event-driven systems - Experience with messaging systems such as Aeron, Kafka, NATS, or similar high-performance platforms
  10. Strong understanding of in-memory data structures and efficient memory management — cache lines, memory ordering, NUMA, allocation-free design
  11. Experience working with relational databases and caching systems
  12. Experience working in Linux-based production environments
  13. Familiarity with containerization and modern deployment practices
  14. Strong debugging, profiling, and benchmarking skills (perf, flamegraphs, Criterion) - Excellent problem-solving and analytical abilities; ability to work independently and take ownership of technical deliverables
Preferred Technical Experience
  1. Tokio, Tonic (gRPC), Serde, Tracing, Criterion, Cargo/Clippy/Rustfmt - Aeron, LMAX Disruptor, Chronicle, or FIX engines
  2. Kernel-bypass networking concepts (io_uring, DPDK, AF_XDP); hardware timestamping
  3. Lock-free or wait-free programming techniques
  4. Options pricing / Greeks / volatility surface exposure
Preferred Qualifications
  1. Experience designing highly available and fault-tolerant systems (active-active, consensus-based failover)
  2. Deterministic simulation / property-based testing of stateful systems
  3. Exposure to cloud infrastructure and production monitoring tools
  4. Open-source contributions (openraft, TigerBeetle, tokio, etc.) or personal Rust systems projects
Selection Process
  1. 3 Rounds of Technical Interview
  2. 1 Round of Management Interview
  3. Shortlisting based on work evidence (repo/PR/design doc/write-up of a hard problem solved)
  4. Systems design deep-dive (order book / matching engine design), hands-on coding round, distributed systems round