NinjaTrader is an industry-leading trading platform and futures broker dedicated to empowering traders. They are seeking a highly skilled Staff Software Engineer to join their Trading Services team, where the role involves evolving their advanced trading system and directly influencing the business's performance.
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