Senior Software Engineer, Java; Backup
Listed on 2026-07-24
-
Software Development
Backend Developer
Description
Description
About the RoleAs a Senior Software Engineer on the Ninja One team, contributing to our IT Operations product suite, you will be designing and implementing scalable new solutions and product improvements. Providing clean and optimized coding solutions, you’ll work to develop high-quality software applications that exceed our customers’ expectations – seriously our customers love our products.
About The Backup TeamAt Ninja One, the Backup Engineering team is solving one of IT’s hardest problems: protecting millions of endpoints, servers, and cloud‑managed applications reliably, at scale, and from a single console. Our work spans three squads (Server Backup, Endpoint Backup, and SaaS Backup), covering everything from image‑based bare‑metal recovery to identity restore for Microsoft Entra. You’ll own software that 40,000+ customers worldwide trust to recover quickly when ransomware, hardware failures, or cloud outages strike.
We hire the best software engineers, but experience in our stack can’t hurt:
Ninja One is built on Java, Kotlin, C++, Golang and Postgres; supporting millions of user endpoints and running as a scalable cloud service in AWS. Knowing large‑scale datastore bottlenecks, asynchronous application design, and client‑server architecture will help you.
- Java and Kotlin Software Development:
Use your expertise to contribute to the development of large‑scale software applications. Make quality an invariant part of your work and help your fellow engineers continue to meet our quality‑first standards. - Committing Code and Shipping Products:
You will be one of our most trusted engineers committing code. Responsible for implementing design patterns and working on enterprise level software challenges in a startup environment. Impact product more hands‑on than at other companies, building software of scale that runs on millions of endpoints. - Debugging and Profiling:
Debug and profile production Java services using tools like New Relic and structured log analysis; identify and resolve performance bottlenecks before they reach customers. - Database Optimization:
Design and optimize relational database schemas and queries for performance at scale, including index tuning, query planning, and storage efficiency improvements. - Mentoring:
Support the growth of engineers across the team through knowledge sharing, targeted feedback, and coaching to help build a stronger, more aligned engineering culture. - Code Reviews:
Conduct thorough peer code reviews, providing constructive, specific feedback and contributing to architecture discussions and key technical decisions. - Documentation:
Document system architecture, design tradeoffs, and operational procedures so that knowledge is shared and decisions are traceable across the team. - Cross‑team
Collaboration:
Collaborate with engineers across backend, infrastructure, and product teams to drive system reliability, integration, and long‑term platform improvements. - Other duties as needed
- Bachelor’s degree in Computer Science, Computer Engineering, Information Technology, or equivalent work experience.
- 10+ years of experience in Java software development for product applications or equivalent. Solid expertise in Kotlin will make you a standout candidate.
- 6+ years of experience designing and operating highly scalable software systems, with a proven ability to identify and solve scale challenges.
- Deep understanding of OOP design principles, with expertise in scaling data structures and object‑oriented design for high‑performance systems.
- Knowledge of API best practices and REST service development using frameworks like Jersey or Spring.
- Relational Database design, development, and performance optimization experience, including query tuning, index design, and schema optimization at scale.
- Experience with client‑server development, event‑driven architectures, and message brokers such as RabbitMQ, Amazon SQS, or SNS.
- Experience with caching systems (Redis a strong plus) and expert knowledge of quality testing practices.
- Excellent debugging and problem‑solving skills, with the ability to diagnose complex issues across distributed systems…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).