Take ownership of work from elaboration through to delivery and support: shaping requirements with stakeholders, designing the solution, building it, testing it, shipping it and running it.
Design and build low-latency, high-throughput Java services that accept, route and manage orders across the full order lifecycle.
Build and maintain market connectivity: FIX sessions and venue-specific protocols, including certification and conformance testing with counterparties.
Model and evolve order and execution state: order types, time-in-force, partial fills, amends, cancels, rejects, drop copies, reconciliation and end-of-day processing.
Treat correctness as a first-class concern: idempotency, ordering guarantees, deterministic replay, and a complete, auditable trail of every order state transition.
Support the platform in production during market hours, including participation in the team’s on-call rotation and incident response.
Raise the bar around you: design and code review, pairing, mentoring, and steady improvement of the team’s testing, tooling and observability.
Translate between trading language and system behaviour — in both directions — when working with traders, dealers, quants and business stakeholders.