
Sr. Software Engineer I, Evaluation Services (Scala)
NinjaTrader3 days ago
Remote, United States or Chicago, IL, USASenior
Base Salary
$125k - $175k/yr
Responsibilities
- Design and implement Scala backend services for evaluation, risk, trading, real-time auto-liquidation, account state management, and post-trade processing.
- Build and evolve actor-based systems handling high-throughput market data, position changes, and event-driven workflows.
- Own significant features end to end, including technical specifications, implementation, code review, and production handoff.
- Design PostgreSQL data models and database changes, including JSONB usage, shared schemas, Protobuf, and SQL repositories.
- Diagnose complex backend issues and production incidents by analyzing logs, tracing distributed flows, and reproducing edge cases under realistic loads.
- Drive code quality through pull request reviews, acceptance criteria, development testing, instrumentation, and observability.
- Collaborate with Trading Services, Solutions Engineering, and Product to translate requirements into scoped and estimated work.
- Contribute to architecture decisions, legacy Scala modernization, technical debt remediation, and evaluation of event bus technologies.
- Mentor junior engineers on Scala, functional design, testing, and incident response.
- Develop deep expertise in the evaluation platform and partner integrations while providing backend technical leadership.
Requirements
- 5+ years of backend software engineering experience building production systems with real-time data, concurrency, and high availability.
- Strong hands-on Scala expertise, including idiomatic Scala, functional patterns, testing with ScalaTest or similar tools, and experience in large Scala codebases.
- Experience with actor-based concurrency models such as Akka, Pekko, or equivalent technologies, including supervision, message passing, and backpressure.
- Strong PostgreSQL skills covering schema design, indexing, query optimization, and JSONB versus normalized data structures.
- Experience with event-driven architectures, message buses such as Kafka or Pub/Sub, and asynchronous workflows.
- Ability to troubleshoot distributed systems, trace requests, isolate root causes, write technical specifications, scope work, and identify risks.
- High standards for code, testing, documentation, and pull requests, plus the ability to adapt to shifting priorities and ambiguity.
- Strong written and verbal communication skills for explaining backend tradeoffs to technical and non-technical audiences.
- Preferred experience in trading platforms, fintech, capital markets, trading concepts, Protobuf, gRPC, legacy Scala modernization, Scala-to-Rust or Scala-to-Go transitions, observability, Datadog, Google Cloud Platform, or enterprise partner integrations.
Benefits
- Hybrid schedule with in-office work Tuesday through Thursday and remote work Mondays and Fridays.
- 20 additional flex remote days annually and five company-wide office-optional weeks tied to major holidays.
- Generous paid time off accruing at 18 days per year, seven paid holidays, five conditional holidays, and one service day.
- 401(k) plan through ADP with a company match of up to 3.5% of employee contributions.
- Paid parental bonding leave and health, vision, dental, life, and disability insurance, with life and disability coverage fully paid by NinjaTrader.
- Remote flexibility may be available for exceptional candidates in specified states.