Knowledge Graph Developer

Knowledge Graph Developer

Essential Duties and Responsibilities:

A successful candidate will have hands-on experience with graph database and web applications and the desire to work in a high performing and faced-paced team. Excellent analytical and problem-solving skills are a must as well as a track record of taking complex concepts and implementing practical solutions.

Major responsibilities include:

  • Lead the design, development, testing, and deployment of a graph database solution.
  • Design and develop graph data models in accordance with leading practices for our use cases.
  • Work with system owners and data engineers to identify and integrate with data sources used to hydrate the knowledge graph.
  • Create and manage queries to pull insights from the knowledge graph.
  • Optimize for high performance, efficiency, scalability, and stability of the database.
  • Define the database architecture and development best practices.
  • Assume the role of a trusted-advisor, offering technical insights to the team and business stakeholders.



Basic Qualifications

  • BS degree in Computer Science or related technical field, or equivalent practical experience.
  • 4+ years of proven working experience as a software developer or data engineer.
  • Strong track record of delivery using graph databases such as Neo4j, TitanDB or OrientDB.
  • Fluency with graph query languages such as Gremlin, Cypher, SPARQL.

Preferred Qualifications

  • Experience in designing, creating and maintaining recommendation engines.
  • Experience in Java / Scala development.
  • Knowledge of a scripting language like Python or Ruby.
  • Strong experience with RESTful API interfaces and microservice architectures.
  • Knowledge of statistics and experience using statistical packages for analyzing large datasets (R, Excel, SPSS, SAS etc)
  • Experience with Microsoft Azure or Amazon Web Services (AWS)
  • Experience with Agile software development.

Knowledge and Skills:

The ideal candidate has:

  • Experience in developing knowledge-based systems in different contexts such as information retrieval, intelligent agents, dialog systems and recommendation systems.
  • Experience in scalability and performance issues concerning very large knowledge stores. 
  • Experience with information extraction through creation of an application layer.
  • Experience developing REST / JSON applications and multi-threaded applications.
  • Strong background in computer science: algorithms, data structures, concurrency, and distributed systems.
  • Strong OO Programming and OO Design knowledge.
  • Knowledge of professional software engineering practices & best practices for the full software development life cycle including coding standards, code reviews, source control management, build processes, testing, and operations.
  • Technical expertise regarding data models, database design development, data mining and segmentation techniques.
  • Technical capabilities with Cloud Services and Micro Services Patterns, API Management, Azure and AWS Services.
  • Strong communication (verbal and written) and collaboration abilities in addition to technical depth.
  • Comfortable delivering within an agile program.