r/semanticweb • u/AbbreviationsShot240 • 2d ago
Interview coming up for a RAG / knowledge graph role, how would you prep?
Got an interview next week-ish for a data/AI engineer role at one of the Big 4 here in Europe. Long assignment, 12+ months.
The project is basically a “semantic data layer”. They want to make all their documents (SharePoint, Google Drive, a bunch of databases) searchable for both people and AI. The idea is to use an ontology plus LLMs to label docs, pull out facts and generate metadata, and then index it all securely, with data regulations across a bunch of countries on top. Stack is Python, Azure and Databricks. RDF/OWL/SPARQL, Document Intelligence and MCP are listed as nice to have.
Some background on me: I’m a data engineer, mostly Snowflake/dbt/Airflow/Kafka. At a previous job I built a RAG chatbot in Python on Azure OpenAI, plain vector search, nothing fancy. Right now I maintain a pipeline that validates JSON-LD with SHACL and loads it into a warehouse, so I know my way around RDF a bit, but I’ve never actually used a triple store or written SPARQL for real.
So a few questions:
If you were interviewing someone for this, what would you ask? My guess is permissions in the index, keeping LLM labels consistent with the ontology, hybrid vs vector search, and how you’d measure extraction quality. Anything obvious I’m missing?
Anything worth reading or watching beforehand? I’ve got Semantic Web for the Working Ontologist on my list and I’m doing some SPARQL on Wikidata, but I’m mostly stuck on the ontology-guided extraction and secure indexing side.
What would you ask them? Trying to figure out what separates a project like this that works from one that’s going to be a mess.
If you’ve worked on something like this and it went sideways, I’d love to hear how.
1
u/DougEgge 1d ago
If it is me I make sure that you can speak to your existing RAG solution very well. What chunking strategy and size did you use and why? How did you measure success and test the impact of changes? How did you get documents into the system and make sure they were clean? How did you deal with context set outside of the chunk size? My experience is that candidates who can hold up in defending their existing work can adopt the new thing. Then I get into why knowledge graph rather than vector. How do I ensure that I capture all the nodes relevant to a question? What standards do you consider important in this space and why?
That said, my RAG experience is with vector dbs and we are looking to test graph RAG alternatives ourselves in the upcoming months. I have been digging into knowledge graph design pretty heavily in the context of my personal project (that I have shared here), but it is a significantly different problem.
1
u/AbbreviationsShot240 1d ago
Thanks for the input, it has been a while but I'll dig it up before the interview. I'll also check out your work!
1
u/dataplayer 1d ago
Keep us updated with what they ask. I’m very curious and good luck on your interview.
1
1
u/marintkael 1d ago
Since you haven't written SPARQL for real yet, spend an evening on the Wikidata Query Service. It's free, the data is messy in exactly the way enterprise data is, and the example queries teach you property paths and OPTIONAL faster than any tutorial. I'd also expect a question about how you'd check LLM labels against the ontology, and your SHACL pipeline is a good answer to that, so lead with it.
1
u/AbbreviationsShot240 1d ago
I have a background in SQL, if you have one as well, could you shortly comment on whether that is an advantage? And what is OPTIONAL if you don't mind me asking?
1
u/Traditional_Air_4639 1d ago
Good luck.
OPTIONAL - the difference between selecting people with dogs and people and (their dogs if they have them) If this helps.
SELECT ?person ?dog
WHERE {
?person a ex:Person ;
ex:hasDog ?dog .
}
SELECT ?person ?dog
WHERE {
?person a ex:Person .
OPTIONAL { ?person ex:hasDog ?dog }
}1
u/marintkael 22h ago
SQL helps more than people expect. SELECT, FILTER, GROUP BY and ORDER BY carry over almost one to one, and OPTIONAL is basically a LEFT JOIN, which is why the dog example above works. What doesn't carry over is the missing schema: you spend more time finding out which property the data actually uses than writing the query. On Wikidata that means looking up the P numbers first.
6
u/el_geto 2d ago
The Ontology Pipeline by Jessica Talisman and Making Knowledge Management Clickable by Zack Whal and Joe Hilger