About Neo4j
Neo4j is the leader in Graph Database & Analytics, helping organizations uncover hidden patterns and relationships across billions of data connections deeply, easily, and quickly. Customers use Neo4j to gain a deeper understanding of their business and reveal new ways of solving their most pressing problems. Over 84% of Fortune 100 companies use Neo4j, along with a vibrant community of 250,000+ developers, data scientists, and architects across the globe.
At Neo4j, we’re proud to build the technology that powers breakthrough solutions for our customers. These solutions have helped NASA get to Mars two years earlier, broke the Panama Papers for the ICIJ, and are helping Transport for London to cut congestion by 10% and save $750M a year. Some of our other notable customers include Intuit, Lockheed Martin, Novartis, UBS, and Walmart.
Neo4j experienced rapid growth this year as organizations looking to deploy generative AI (GenAI) recognized graph databases as essential for improving it’s accuracy, transparency, and explainability. Growth was further fueled by enterprise demand for Neo4j’s cloud offering and partnerships with leading cloud hyperscalers and ecosystem leaders. Learn more at neo4j.com and follow us on LinkedIn.
Our Vision
At Neo4j, we have always strived to help the world make sense of data.
As business, society and knowledge become increasingly connected, our technology promotes innovation by helping organizations to find and understand data relationships. We created, drive and lead the graph database category, and we’re disrupting how organizations leverage their data to innovate and stay competitive.
The Role
We are looking for experienced backend engineers to join our team which mainly develops the distributed aspects of the Neo4j database. Building on our fast and open source native graph database, our team delivers critical enterprise features such as high availability, distributed consistency, horizontal scalability and deployment flexibility.
We’re particularly excited to hear from people who have developed and maintained complex distributed systems before; who have experienced some of their pain points and design trade-offs first hand.
Your contributions will be deployed in production environments around the world, vital to the varied and demanding use cases of our customers.
What The Work Is Like
- The day-to-day work is quite wide-reaching in the database stack, from low-level (efficient IO systems where every flush and allocation counts) to high (distributed control planes where predictability and stability are vital).
- We have a development culture focused on taking the time needed to achieve quality and correctness. However, there is plenty of room for pragmatism and fast paced problem solving.
- Apart from coding features, you’ll also work with support engineers to track down tough bugs, SREs to support our database as a service offering, and with product managers and other teams to design new features.
- You’ll also spend time learning, thinking and experimenting. Specializing in topics that interest you and helping to grow yourself, the team and the product.
What You'll Bring
- Ability to work independently within a flexible software development organization
- Ability to communicate about, and collaborate on, complex topics.
- Experience of distributed systems through usage, administration or development.
- Desire to learn modern and high performance Java programming (or prior knowledge).
- Desire to work as part of a geographically distributed team.
Nice To Have
- Experience building stateful distributed systems (such as databases, message brokers or stream processing systems)
- Experience working with distributed orchestration systems, such as Kubernetes.
- Experience of distributed systems through usage, administration or development.
- Existing knowledge of Java programming, the Java ecosystem or JVM internals.
- Experience with working on large code bases.