← All jobs

EngineeringSeniorHybrid
As a Senior Software Engineer I (Scala) at NinjaTrader, you join the Evaluation Services team to design, build, and maintain the Scala-based backend systems powering our funded trader programs. You will own complex backend problems end-to-end, working on real-time auto-liquidation engines, risk evaluation, and trading services that traders and partners depend on.
What you'll do
- Design and implement backend services in Scala for evaluation, risk, and trading service workloads, including real-time auto-liquidation, account state management, and post-trade processing
- Build and evolve actor-based systems such as Akka or similar technologies that handle high-throughput market data, position changes, and event-driven workflows
- Own significant features end-to-end, from technical specifications through implementation, code review, and production handoff
- Design data models and database changes in PostgreSQL, including JSONB where appropriate, and contribute to the shared master schema, Protobuf, and SQL repositories
- Diagnose and resolve complex backend issues, including production incidents, by analyzing logs, tracing distributed flows, and reproducing edge cases under realistic loads
- Drive code quality across the team through thorough pull request reviews, clear acceptance criteria, disciplined development testing, and proper instrumentation and observability
- Collaborate with Trading Services, Solutions Engineering, and Product to translate business requirements into well-scoped, accurately estimated stories
- Contribute to architectural decisions and long-term technical debt remediation, including modernizing legacy Scala services and evaluating new event bus technologies
- Mentor junior team members on Scala idioms, functional design, testing practices, and incident response
- Develop deep expertise in NinjaTrader's evaluation platform and partner integrations to provide authoritative backend leadership
What you bring
- 5+ years of backend software engineering experience building production systems that handle real-time data, concurrency, and high availability
- Strong, hands-on Scala expertise, including idiomatic Scala, functional patterns, testing with ScalaTest or similar tools, and comfort working in a large, existing Scala codebase
- Experience with actor-based concurrency models such as Akka or Pekko, including an understanding of supervision, message passing, and backpressure
- Solid relational database skills with PostgreSQL, including schema design, indexing, query optimization, and sound judgment about when to use JSONB versus a normalized structure
- Comfort with event-driven architectures, message buses such as Kafka or Pub/Sub, and asynchronous workflows
- Excellent troubleshooting skills, with the ability to read logs, trace requests across distributed systems, and isolate root causes under pressure
- Demonstrated ability to write clear technical specifications, scope work realistically, and identify risks early
- High standards for code, tests, documentation, and pull requests, along with a willingness to uphold those standards during code reviews
- Ability to think on your feet and adapt quickly when priorities shift or unexpected issues arise
- Outstanding written and verbal communication skills, with the ability to explain backend tradeoffs to technical and non-technical audiences
- Self-starter who thrives in ambiguity and can manage multiple complex backend initiatives simultaneously
Nice to have
- Experience with trading platforms, fintech, or capital markets technology
- Understanding of trading concepts, including order routing, market data, position management, risk and liquidation logic, and profit and loss calculations
- Familiarity with Protobuf, gRPC, or schema-based service contracts
- Experience migrating or modernizing legacy Scala systems or evaluating transitions from Scala to Rust or Go
- Background in observability, including distributed tracing, structured logging, and metrics using Datadog, Google Cloud Platform, or similar technologies
- Prior experience supporting enterprise or business-to-business partner integrations
What we offer
- Salary range of $125,000 to $175,000 USD annually, plus an annual target bonus of 12% based on individual performance (50%) and company/team performance (50%)
- 401(k) plan with 3.5% company match
- 18 days of annual paid time off, plus 7 paid holidays and 5 conditional holidays
- 20 additional flex remote days annually
- 5 company-wide office-optional weeks tied to major holidays
- 1 service day annually
- Health, vision, and dental coverage
- Life and disability insurance covered 100% by NinjaTrader
- Paid parental bonding leave
- Hybrid work schedule based in Chicago, IL (Tuesday through Thursday in-office, Monday and Friday remote); remote flexibility available for exceptional candidates in select states
About NinjaTrader
NinjaTrader is an industry-leading trading platform and futures broker with over 2 million users. The company powers funded trader programs and provides award-winning software and brokerage services for traders across financial markets worldwide.
What engineering roles in crypto pay
411 salaries · our own dataMost engineering roles in crypto pay between $153k and $250k, with a median of $203k.