> Markdown version of [/jobs/ext/2718481-software-engineer-ontology-reasoning-systems](https://www.wearedevelopers.com/jobs/ext/2718481-software-engineer-ontology-reasoning-systems). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Software Engineer, Ontology & Reasoning Systems - **Company:** PROTEGRITY USA, INC. - **Location:** United States - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Java (Programming Language), Computer Programming, Constraint Logic Programming, Software Debugging, Formal Verification, Graph Database, Graph Theory, Python (Programming Language), Neo4j, Prolog, Scala (Programming Language), Search Technologies, Software Engineering, SPARQL, Rust (Programming Language), Large Language Models, Backend, Build Management, Build Tools, Search Engines, Golang - **Published:** September 4, 2026 - **Apply:** https://startup.jobs/senior-software-engineer-ontology-reasoning-systems-819-protegrity-com-8584731 ## About the Role * 5+ years of experience building backend systems in a modern language such as Python, Go, Java, Scala, Rust, or similar, or equivalent practical experience. * A strong formal and mathematical foundation, including discrete mathematics, logic, and graph theory. * The ability to reason about soundness, completeness, and tractability, and to express complex domains as formal rules and constraints. * Hands-on experience with declarative, logic-based, or rule-based reasoning systems such as Datalog, Answer Set Programming, constraint logic programming, Prolog, production rule engines, SMT solvers, or similar. * Practical experience building LLM-powered systems, including structured extraction, RAG, or classification pipelines, with sound judgment about where model outputs require validation. * Deep experience with knowledge graphs and graph data, including RDF, SPARQL, property graphs, or graph databases such as Neo4j. * Experience designing systems whose outputs trace back to their inputs, including provenance, derivation chains, or evidence trails. * Strong debugging, testing, and validation practices, with attention to correctness. Nice to Have: * Experience with constraint satisfaction or deductive reasoning, including CSP, unification, fixpoint or closure computation, or constraint propagation. * Experience with formal ontology and semantics, including OWL, SHACL, description logics, or reasoners. * Experience with LLM evaluation, entity resolution, citation validation, or hallucination reduction. * Experience with symbolic computation, theorem proving, model checking, or formal verification. Should you accept this position, you will be required to consent to and successfully complete a background investigation. This may include, subject to local laws, verification of extended education and additional criminal and civil checks. ## Description Protegrity is seeking a Senior Software Engineer, Ontology & Reasoning Systems to design and build the ontology and reasoning layer that connects structured sources, semi-structured metadata, and unstructured documents into a model that supports deterministic machine reasoning. In this role, you will formalize complex domains into entities, relationships, constraints, and rules that allow the system to derive conclusions from underlying facts. A key focus will be making those conclusions explainable and traceable, with clear derivation paths back to the source data and logic that produced them. LLMs play an important role at the ingestion boundary, supporting extraction, normalization, and categorization of information from unstructured or ambiguous inputs. The reasoning layer itself must remain deterministic, auditable, and explainable, with appropriate checks on model-generated outputs before they are used as trusted facts. You will work closely with product and research teams to define formal models, improve reasoning quality, and build systems that support accurate, reviewable outputs. This role is well suited for someone with a strong foundation in logic, graph-based systems, formal modeling, and production-grade software engineering. What You'll Do: * Own the ontology and rule layer that unifies structured, semi-structured, and unstructured enterprise data into a single reasoning model. * Model entities, relationships, events, and constraints across heterogeneous sources, and develop rules that derive conclusions from combinations of facts. * Use LLMs at the ingestion boundary for extraction, normalization, and categorization, with appropriate validation of model-generated outputs. * Make system findings traceable by connecting each conclusion to the source facts and rules that produced it. * Build retrieval capabilities, including vector search, keyword search, and graph traversal, to support reasoning workflows. * Improve quality through entity resolution, constraint modeling, and structured handling of conflicting or overlapping sources. * Ship production services and research prototypes with a focus on correctness, reliability, and maintainability. ## Related Videos - [Putting the Graph In GraphQL With The Neo4j GraphQL Library](https://www.wearedevelopers.com/videos/257-putting-the-graph-in-graphql-with-the-neo4j-graphql-library) - [Go with the Flow: Stop the Leaks Before Your Memory's a Waterfall!](https://www.wearedevelopers.com/videos/100073-go-with-the-flow-stop-the-leaks-before-your-memory-s-a-waterfall) - [The shadows of reasoning – new design paradigms for a gen AI world](https://www.wearedevelopers.com/videos/1000-the-shadows-of-reasoning-new-design-paradigms-for-a-gen-ai-world) - [Cyber Sleuth: Finding Hidden Connections in Cyber Data](https://www.wearedevelopers.com/videos/893-cyber-sleuth-finding-hidden-connections-in-cyber-data) - [Stop Parsing Strings: Treating LLMs Like Type-Safe Microservices](https://www.wearedevelopers.com/videos/100285-stop-parsing-strings-treating-llms-like-type-safe-microservices) - [Scoring 2000 Products per Request: Performance Pitfalls in Golang](https://www.wearedevelopers.com/videos/2073-scoring-2000-products-per-request-performance-pitfalls-in-golang) ## Related Articles - [Graph and AI Trends 2026: Why Is AI Running but Not Yet Delivering?](https://www.wearedevelopers.com/magazine/680-graph-and-ai-trends-2026-why-is-ai-running-but-not-yet-delivering) - [How We Built a Worry-Free System That Runs for 10+ Years – And What We’d Do Again](https://www.wearedevelopers.com/magazine/751-how-we-built-a-worry-free-system-that-runs-for-10-years-and-what-we-d-do-again) - [Everything a Developer Needs to Know About MCP with Neo4j](https://www.wearedevelopers.com/magazine/604-everything-a-developer-needs-to-know-about-mcp-with-neo4j) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline) - [What Are Large Language Models?](https://www.wearedevelopers.com/magazine/304-what-are-large-language-models) - [Résumé-Driven Development: How IT trends affect the job market for software developers](https://www.wearedevelopers.com/magazine/59-resume-driven-development-how-it-trends-affect-the-job-market-for-software-developers)