Software Engineer - Sharding
Neo4j is seeking a Software Engineer to join its Sharding Engineering Team, responsible for developing the Infinigraph and Composite products. Infinigraph focuses on database sharding for large data volumes, while Composite handles distributed query execution within the Neo4j Database Management System. This role offers the opportunity to work on complex distributed systems, enhancing the performance and scalability of Neo4j's graph database solutions.
The successful candidate will design and implement features across various parts of the database stack, from the Cypher language implementation to cluster networking. Daily activities include participating in stand-ups, pair programming, design meetings, and retrospectives. Responsibilities also encompass debugging, fixing test failures, documenting features, engaging in cross-team design discussions, and staying updated with the latest database research.
Applicants should have experience in developing production-level software and proficiency in Java, Scala, or similar languages. The ability to work independently within a flexible development environment and effectively communicate complex topics is essential. Additional desirable qualifications include understanding database internals, experience with asynchronous and reactive programming, familiarity with distributed systems, and an interest in recent developments in distributed systems.
Neo4j offers a collaborative and inclusive work environment, emphasizing innovation and customer success. Employees have opportunities for professional growth and development, contributing to a leading graph intelligence platform trusted by numerous Fortune 100 companies. Joining Neo4j means being part of a team that values relationships, inclusiveness, and delivering impactful solutions.