Staff Software Engineer, Trading Services - Scala
About the role
We are seeking a highly skilled and experienced Staff Software Engineer to join our Trading Services team. In this pivotal role, you will help evolve our advanced trading system. As a senior engineer on the team, your work will have a profound impact on our core high-throughput, low-latency trading application, directly influencing our business's bottom line.
Responsibilities
- Design, develop, and maintain our Scala and Akka-based trading system deployed on Kubernetes in the cloud
- Architect, deploy, and manage backend services in a Kubernetes environment to ensure scalability, availability, and resilience
- Implement and enhance our services architecture for trading applications, promoting modularity and maintainability
- Develop distributed systems to support the high-performance and low-latency requirements of trading platforms
- Implement robust monitoring and logging solutions to track and analyze backend system performance in real time
- Integrate backend systems with market data feeds, ensuring accurate and timely data for trading activities
- Collaborate with other engineering teams and Product Managers to deliver end-to-end customer solutions
Requirements
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field
- 8+ years of software development experience with reactive, message-driven, distributed near real-time applications, preferably in a high-performance, low-latency environment
- 5+ years of professional experience with Scala (or similar JVM-based languages) backend software development
- Familiarity with functional programming principles
- Experience with Kubernetes and cloud services (e.g., Google Cloud Platform), with a focus on scalability and high availability
- Familiarity with CI/CD tools such as Jenkins, GitHub Actions, or equivalent
- Exceptional troubleshooting, debugging, and diagnostic skills for cloud and web-based technologies using industry-standard observability tooling and frameworks
- Deep understanding of modern distributed systems and the ability to troubleshoot HTTP/HTTPS, WebSockets, TLS, DNS, TCP/IP, and similar protocols
- Dependable team player with a strong work ethic, exceptional accuracy, and analytical and problem-solving skills, with a focus on performance analysis and optimization
- Ability to take full ownership of projects (design, implement, test, deploy, maintain, and iterate), with a focus on delivering high-quality production software
- Strong written and verbal communication skills, collaborates effectively, seeks feedback, and strives for continual improvement
Pay
The salary range for this role is $150,000 - $200,000 USD. In addition, this position will receive an annual target bonus of 12%. Bonus pay is based on individual performance (50%) as well as company/team performance (50%).
Benefits
- 401k plan with 3.5% company match
- Annual paid time off allowance accrues at a rate of 23 days per year plus seven paid holidays
- Generous PTO
- 7 paid holidays annually + 5 conditional holidays annually
- 1 service day annually
- Paid parental bonding leave
- Health, vision, and dental coverage
- Life and disability insurance covered 100% by NinjaTrader
Schedule
This role is based in Chicago, IL. Hybrid work schedule: in-office Tuesday through Thursday, with remote work on Mondays and Fridays. In addition to these weekly remote days, we offer:
- 20 additional flex remote days annually
- 5 company-wide office-optional weeks tied to major holidays
Remote flexibility may be available for exceptional candidates in the following states: California, Colorado, Florida, Georgia, Illinois, Indiana, Minnesota, Missouri, Montana, New Jersey, New York, North Carolina, Ohio, Oregon, Pennsylvania, South Carolina, Texas, Utah, Vermont, Virginia, Washington, Washington DC, Wisconsin.