Software Engineer
TigerGraph · Milpitas, CA · 2 mo ago
HybridEngineeringFull-time
Job Responsibilities
- Design, implement, and maintain highly available, scalable, and fault-tolerant distributed systems for graph data.
- Tackle performance and scalability challenges, optimizing data ingestion, indexing, and query pipelines for low-latency and high-throughput requirements. Conduct systematic profiling and tuning.
- Build, optimize, and operate our core vector embedding infrastructure to enable efficient nearest neighbor search at scale.
- Proactively diagnose, debug, and resolve complex issues across the entire data stack, from performance bottlenecks and data inconsistencies to system failures. Lead root cause analysis for production incidents and implement preventive measures.
Requirements
- Bachelor’s degree in Computer Science or a related field
- 5 years of relevant experience
Skills and Knowledge
- Deep, hands-on experience with one or more vector databases or similarity search libraries.
- Proven experience designing and working with any graph database and query languages like Cypher
- Solid understanding of distributed systems concepts: consensus, replication, sharding, and fault tolerance.
- Solid programming fundamentals; experienced with C++, Go, or any other major programming language.
- Understanding of distributed systems principles and the ability to evaluate trade-offs in system design.
- Familiar with Kafka, ETCD or similar technologies;
Bonus Points
- Familiar with container tools such as Docker.
- Hands-on experience with gRPC or REST APIs.
- Passionate about systems performance profiling, tuning, or debugging.