Senior Python Software Engineer
Posted
Description
Responsibilities
Must-have
What the CV and the interview should show, with concrete numbers:
- Build Python services and APIs that expose document search, navigation and context retrieval to the AI assistant and agents, e.g. as tools or MCP servers.
- Implement LLM and agent workflows: tool calling, multi-step orchestration, routing each question to document search, summaries or SQL over structured project data, streamed answers with citations.
- Build the model gateway: model tiers, batch inference, caching, rate limits, retries, per-request token and cost budgets.
- Integrate with the platform's existing application and PostgreSQL data layer, including user identity and document-level permissions enforced before results are returned.
- Make it production-grade: automated tests including LLM-output evaluation in CI, tracing of latency and cost per question, security, infrastructure as code.
- Agree interfaces, latency budgets and quality targets with the data/AI engineers; review code; keep documentation and runbooks current.
Must-have
- 5+ years of backend engineering in Python (FastAPI or similar), with services running in production.
- 1+ year building LLM applications in production: tool calling, structured outputs, context management, streaming.
- Agent and orchestration frameworks or patterns (e.g. LangGraph, LlamaIndex, Semantic Kernel, Bedrock Agents, MCP), and judgement on when not to use one.
- Has integrated RAG into an application: hybrid search, reranking, citations, handling questions the documents cannot answer.
- PostgreSQL including performance tuning; asynchronous processing, queues, caching.
- A major cloud in production: AWS preferred (Bedrock, Lambda/ECS/EKS, API Gateway, RDS); equivalent Azure or GCP experience accepted.
- Automated testing, CI/CD, containers, infrastructure as code (Terraform or CDK), observability.
- LLM evaluation and observability tools (e.g. Langfuse, LangSmith, Ragas); prompt caching, model routing, batch APIs.
- Text-to-SQL over a governed semantic layer, or analytics features on structured data.
- SSO/OIDC, row- and document-level permissions, audit logging, prompt-injection defences.
- Node.js, TypeScript/React, for the optional user-facing scope.
- Construction or engineering documents, project-controls systems (Primavera, Ecosys, SharePoint, Aconex), or another document-heavy field such as legal or e-discovery.
- Running one system on several clouds or inside clients' own cloud accounts.
What the CV and the interview should show, with concrete numbers:
- An LLM application in production with real users: what it did, users or requests per day, how answer quality was measured.
- Latency and cost achieved (p50/p95 response time, cost per question) and what was changed to reach them.
- An agent or tool-calling workflow they designed: the tools, handling of failures and wrong tool choices, testing.
- A retrieval integration: corpus size, how citations were produced, how permissions were enforced.