Jobs · Engineering · Indiana

Sr. Software Engineer (C, C++, or Rust)

Partnerverse · Indiana, United States · 5 days ago
EngineeringFull-time

Responsibilities

  • 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-specified software architecture
  • Collaborate with product, engineering, and DevOps teams to deliver production-ready solutions
  • 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

Requirements

  • 10+ years of professional systems programming experience in Rust, C, or C++ (5+ years production Rust)
  • 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)
  • Strong understanding of exchange mechanics — order types, price-time priority matching, spot trading, derivatives (futures/perpetuals), options, margining and liquidation concepts
  • Strong experience building production-grade, low-latency, high-throughput backend applications
  • Solid understanding of distributed systems and concurrent programming — Raft/consensus, replication, snapshots, deterministic state machines, exactly-once semantics
  • Advanced concurrency: lock-free/wait-free structures, ring buffers, thread-per-core design, core pinning
  • Strong understanding of networking concepts — TCP/IP, UDP, multicast, real-time communication, asynchronous networking
  • Experience designing and implementing binary communication protocols for inter-service communication (SBE, Protocol Buffers, FlatBuffers, Cap'n Proto)
  • Experience with microservices architecture and event-driven systems
  • Experience with messaging systems such as Aeron, Kafka, NATS, or similar high-performance platforms
  • Strong understanding of in-memory data structures and efficient memory management — cache lines, memory ordering, NUMA, allocation-free design
  • Experience working with relational databases and caching systems
  • Experience working in Linux-based production environments
  • Familiarity with containerization and modern deployment practices
  • 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

  • Tokio, Tonic (gRPC), Serde, Tracing, Criterion, Cargo/Clippy/Rustfmt
  • Aeron, LMAX Disruptor, Chronicle, or FIX engines
  • Kernel-bypass networking concepts (io_uring, DPDK, AF_XDP); hardware timestamping
  • Lock-free or wait-free programming techniques
  • Options pricing / Greeks / volatility surface exposure

Similar jobs

Software Engineer, Rust

Anduril IndustriesBroomfield, CO· 1 wk ago
Engineering$165k–$218k/yrapply on boards.greenhouse.io