SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
Neo4j is seeking a Software Engineer to join the Sharding Engineering Team, which owns both Infinigraph (database sharding for large data volumes) and Composite (distributed query execution technology) products. The role involves designing and implementing features across the database stack, from Cypher language implementation to cluster networking, with a focus on distributed query execution—a complex domain involving query language design, performant networking, and concurrency.
Day-to-day work includes:
- Designing and implementing features across different parts of the database stack
- Tracking down and fixing bugs, from straightforward to challenging
- Documenting features and participating in cross-team design meetings
- Studying latest database research and contributing to product innovation
- Collaborating through daily stand-ups, pair programming, design meetings, and retrospectives
- Learning, experimenting, and specializing in topics of interest
The team balances quality and correctness with pragmatism and fast-paced problem-solving. As customer data volumes grow, sharding becomes increasingly critical to Neo4j's platform.
Required qualifications:
- Production-level software development experience
- Proficiency in Java, Scala, or similar languages
- Ability to work independently in a flexible development organization
- Strong communication and collaboration skills on complex topics
Desirable experience:
- Database internals, compilers, or query language knowledge
- Asynchronous and reactive programming
- Distributed systems (usage, administration, or development)
- Interest in recent distributed systems research