As a Research Engineer at Grakn Labs, you will be responsible for the research, development and dissemination of applications of Grakn in Machine Learning, Natural Language Processing, Expert Systems, Network Analysis, and Robotics. These applications will sit in various industries, such as Developer Tools, IoT, Telecoms, Defence and Security, Life Sciences, and Financial Services. You will also be responsible for publishing your work to the community through GitHub, papers, blog posts, and webinars, as well as evangelising your work through developer meetups and conferences.
Grakn is a distributed knowledge graph: a logical database that allows you to organise large and complex networks of data as one body of knowledge. Grakn provides the knowledge engineering tools for developers to easily leverage the power of Knowledge Representation and Reasoning when building complex systems. Ultimately, Grakn serves as the knowledge-base foundation for cognitive and intelligent systems.
Your goal as a Research Engineer is to discover and develop the most powerful applications of Grakn, educate the developer community on the new engineering techniques, and empower software engineers around the world in solving complex problems.
You will be joining a team that cares deeply not just about the intelligence of the code, but also the elegance and simplicity of the solution. We have a strong sense of urgency, but we always know "why" something needs to be developed, and we make sure that we work purposefully. Although we are expected to be independent in the common engineering tasks, we collaborate in perfecting our ideas and solutions. Every time we have an opportunity to change our workflow, infrastructure or architecture to improve our technology performance, user experience or developer productivity, we take that opportunity, and we grow.
- Bachelors degree in Computer Science or Engineering
- 2+ years of working experience as a Software or Research Engineer
- Solid programming experience in OOP languages
- Proven experience in research-driven development
- Proven experience in one or more advanced computer science fields: Natural Language Process, Machine Learning, Expert Systems, Networking Theory, and Robotics
- Familiarity with database systems
- Familiarity with distributed systems and cloud environments
- Familiarity with big data technologies, such as Spark, Hadoop, Kafka, Cassandra, etc
- Familiarity open-source software development and community
- Proven experience in technical writing and publishing
- Proven experience in presenting deeply technical subjects
- Proven experience in public speaking
Bonus skills (any advanced degree or experience in developing)
- Programming or Query Languages
- Knowledge Representation Systems
- Automated reasoning
- Formal Logic
- Database Systems