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.
- 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.
- 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.