Senior Software Engineer, Java | Mainline
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+11 more
Job description
As a Senior Software Engineer, Java at NinjaOne, you’ll play a key role in enhancing our IT Operations product suite by designing and implementing scalable solutions and platform improvements. You’ll contribute to new features and support existing functionality, all while ensuring our software meets the high expectations of our customers.
In this role, you’ll be part of a team of engineers and technology experts, delivering mission-critical services that help our customers manage, protect, and maintain millions of endpoints and servers. You will have the opportunity to design and develop high-availability software systems that support our global operations., We hire the best software engineers, but experience in our stack can’t hurt: NinjaOne 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.
What You’ll Be Doing:
- Software Development: Lead the development of large-scale software applications, ensuring high quality and adherence to our quality-first standards.
- Software Architecture & Leadership: Influence critical architectural decisions, ensuring that systems are scalable, maintainable, and aligned with business objectives. Balance technical debt, performance concerns, and scalability with business needs.
- Collaboration & Mentorship: Collaborate with cross-functional teams to align on technical decisions and drive improvements. Mentor junior engineers, providing guidance on best practices and setting technical standards across projects.
- Ownership of Initiatives: Take ownership of technical initiatives, proactively address challenges, and drive improvements based on data reported by support teams.
- Focus on Quality: Advocate for and implement quality assurance practices, ensuring the delivery of robust, high-performance software.
- Other Duties: Contribute to additional responsibilities as needed to support the team’s success.
Requirements
- Bachelor’s degree in Computer Science, Computer Engineering, Information Technology, or equivalent work experience.
- 10+ years of experience in Java software development, particularly for product applications.
- 5+ years of experience with highly scalable systems.
- Proven experience in scaling systems and solving complex system design challenges.
- Strong knowledge of object-oriented programming (OOP) design principles and practices.
- Expertise in API design and RESTful services, with experience using frameworks like Jersey or Spring.
- Proficient in relational database design and development.
- Experience with caching systems, particularly Redis, is a plus.
- In-depth knowledge of quality testing practices and ensuring the delivery of high-quality software.
About the company
NinjaOne unifies IT to simplify work for nearly 40,000 customers in 140+ countries.
The NinjaOne Unified IT Operations Platform delivers endpoint management, autonomous patching, backup, and remote access in a single console to improve efficiency, increase resilience, and reduce spend. By automating IT and managing all endpoints, organizations give employees a great technology experience at work. NinjaOne is obsessed with customer success and has retained a 98% customer satisfaction score for more than 5 years.
https://job.goodword.io/JobLanding/JobId=27e875c4-5bf8-40c4-acae-7b14d4c88a41?trafficsourceid=0 external
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…