> Markdown version of [/jobs/ext/1918455-senior-software-engineer-java-endpoint-state-control-team](https://www.wearedevelopers.com/jobs/ext/1918455-senior-software-engineer-java-endpoint-state-control-team). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Senior Software Engineer, Java - Endpoint State & Control Team - **Company:** NinjaOne, LLC - **Location:** United States (Remote available) - **Experience:** Expert - **Salary:** $140,000.0 - $200,000.0 - **Contract:** Permanent contract - **Skills:** Java (Programming Language), Web Accessibility, Application Programming Interfaces (APIs), Artificial Intelligence, Amazon Web Services, C++ (Programming Language), Client Server Models, Software as a Service, Microsoft Management Console, Data Stores, Relational Databases, Information Technology Operations, PostgreSQL, Queueing Systems, RabbitMQ, Role-Based Access Control, Cloud Services, Service-Oriented Architecture, Software Engineering, Data Storage Technologies, Data Ingestion, Backend, Kotlin, Build Management, Apache Kafka, Restful APIs, Amazon Simple Queue Service (SQS), Api Management, Golang - **Published:** August 4, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=8fc1d7166b95aa2f ## About the Role * 5+ years of backend Java/Kotlin engineering * Strong Java 11+ skills, with Kotlin preferred - or a demonstrated ability and willingness to ramp quickly, since new NinjaOne code is Kotlin-first * Experience designing RESTful APIs for multi-tenant SaaS platforms * Experience with PostgreSQL or an equivalent relational database * Comfortable with multi-tenant data isolation patterns and designing backend systems from scratch - defining data models, API shapes, and service boundaries with limited prior art * Comfortable operating in ambiguous problem spaces where requirements are partially defined and will evolve * Demonstrated ability to lead backend technical design: writing architecture documents, defining API contracts, and driving cross-functional alignment * Curious about and comfortable experimenting with AI tools as part of your development workflow Nice to have: * Experience designing event ingestion pipelines from distributed endpoints (agent telemetry, log aggregation, high-volume event storage) * Experience with RBAC/permission enforcement in a multi-tenant backend * Experience with message queues (RabbitMQ, Kafka, or SQS) for async event processing * Accessibility compliance experience in enterprise B2B products * Prior work in endpoint management, IT operations, or security tooling ## Description 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 * Design and build the server-side infrastructure for the Endpoint State and Control team, including the policy management service, agent-facing APIs for policy delivery, event/log ingestion from endpoints, and the data model for rules, configs, and telemetry * Define service architecture, API contracts, and data storage strategy from the ground up, with no existing prior art to constrain you * Collaborate closely with the engineer who owns agent/driver-level work and the engineer who owns the management console UI to keep contracts and constraints aligned across the stack * Design and enforce multi-tenant data isolation patterns - per-tenant scoping, parameterized queries, no shared state - as a foundational concern, not an afterthought * Design for high-volume event ingestion from distributed endpoints, balancing storage efficiency with the need for customers to query that data reliably * Write technical design documents, drive cross-functional alignment, and lead backend technical design as requirements evolve * Other duties as needed, * Due to operational policies, NinjaOne is unable to hire for this role within the city limits of Chicago. We will consider all qualified candidates who reside outside of the city proper or are willing to self-relocate. ## Related Videos - [Inside Bitpanda's Tech Stack: Scaling a European Fintech Leader - Markus Dorner](https://www.wearedevelopers.com/videos/1979-inside-bitpanda-s-tech-stack-scaling-a-european-fintech-leader-markus-dorner) - [Go with the Flow: Stop the Leaks Before Your Memory's a Waterfall!](https://www.wearedevelopers.com/videos/100073-go-with-the-flow-stop-the-leaks-before-your-memory-s-a-waterfall) - [Kotlin Multiplatform - True power of native code reuse](https://www.wearedevelopers.com/videos/4-kotlin-multiplatform-true-power-of-native-code-reuse) - [Developing the Backend with Stefan Lingler, CTO at Shpock](https://www.wearedevelopers.com/videos/100360-developing-the-backend-with-stefan-lingler-cto-at-shpock) - [Why Kotlin is the better Java and how you can start using it](https://www.wearedevelopers.com/videos/661-why-kotlin-is-the-better-java-and-how-you-can-start-using-it) - [Agentic employees in world's most downloaded FinTech app](https://www.wearedevelopers.com/videos/100123-agentic-employees-in-world-s-most-downloaded-fintech-app) ## Related Articles - [Highest Paying Tech Companies for Developers](https://www.wearedevelopers.com/magazine/220-highest-paying-tech-companies-for-developers) - [Fully Remote Software Engineer Jobs](https://www.wearedevelopers.com/magazine/447-fully-remote-software-engineer-jobs) - [What is Software Engineering in the Age of AI?](https://www.wearedevelopers.com/magazine/640-what-is-software-engineering-in-the-age-of-ai) - [Navigating the AI Shift](https://www.wearedevelopers.com/magazine/629-navigating-the-ai-shift) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline)