The Memgraph Core Database Engine team is responsible for building the core database engine behind Memgraph. This includes developing in-memory and on-disk data structures and algorithms with a strong focus on graphs, networking, query optimization, and execution. Memgraph provides the unique benefit of building high-performance systems software in a rapid production environment with a small, dedicated and collaborative team.
As a C++ quality assurance engineer on the Core Database Engine team, you will be responsible for Memgraph testing and deployment of the core database engine behind Memgraph. This includes the design of key features, testing, and giving feedback for continuously improving the core of the graph database. Your mission is to embrace continuous integration in a pipeline that will perform automated quality checks and provide operational metrics that can be consumed by development teams. In this position, you will be empowered to leverage your technical, leadership, and business acumen.
• BSc college degree or equivalent experience in Computer Science or a similar field
• Proficiency in Linux scripting (bash)
• Proficiency in testing and debugging in Linux system level C/C++
• Proficiency in Linux tooling and environment (gdb, perf, heaptrack, strace etc)
• Proficiency in C/C++ build systems (CMake, make)
• Experience in C++, with a fair knowledge of the language specification
• Experience testing C/C++ software
• Experience in algorithms and data structures
• Experience with management of different Linux distributions (CentOS, Debian, Ubuntu)
• Good understanding of memory management in non-garbage collected environments
• Familiarity with the latest C++ standards
• Always strives to expand their knowledge
• Deal well with challenging problems and ability to think abstractly
• An uncontrollable urge to investigate and solve problems
• Being comfortable with working in a dynamic environment
• Ability to work independently and remotely.
• Experience deploying database management systems
• Experience building high-performance applications
• Experience in distributed computing
• Previous experience in mentoring other engineers who are eager to learn from you.