AI Systems Engineer (Chatbots)
About the role
We're building an agentic AI system that turns natural-language questions into accurate, governed answers over structured business data. This isn't a thin wrapper around a chat API — it's a multi-stage pipeline with retrieval, guardrails, and session state, and we need someone who can design and build that scaffolding, not just prompt a model well. You'll work on the reliability, safety, and scalability of an AI agent used in production by real customers.
What you'll do
- Design and build multi-step agent pipelines that combine LLM calls with deterministic logic — retrieval, validation, and business rules — rather than relying on a single prompt to do everything.
- Implement retrieval-augmented generation (RAG): embedding-based search, ranking, and context assembly that stays within token/latency budgets as the underlying knowledge base grows.
- Build safeguards around model output — validating, sanitizing, and constraining what the AI is allowed to do or return before it reaches a user or a downstream system.
- Design for ambiguity: detect when a user's request is underspecified and decide whether to ask a clarifying question, apply a documented default, or refuse — rather than having the system silently guess.
- Own session and conversation state so multi-turn interactions stay coherent across follow-up questions.
- Write automated regression tests for AI-driven behavior, including "golden" test sets that catch quality regressions a human might not notice by eyeballing a few responses.
- Extend the system to new use cases/domains through configuration rather than one-off code, so growth doesn't multiply maintenance burden.
- Collaborate with frontend, data, and product stakeholders to ground the system in real business rules and correct data access boundaries.
- Instrument and monitor the pipeline in production — latency, cost, failure modes, and answer quality over time.Required qualifications
- 3+ years of professional software engineering experience, with strong proficiency in Python (or a comparable backend language).
- Hands-on experience building applications on top of large language models — not just calling a chat API, but designing multi-step logic, structured outputs, and validation around it.
- Experience with retrieval-augmented generation or vector/embedding-based search.
- Strong SQL skills and comfort reasoning about data access, correctness, and security boundaries.
- Solid testing practices — unit testing, mocking external dependencies, and building regression suites for systems with non-deterministic components.
- Experience designing clean interfaces/contracts between components in a service or pipeline, so systems stay maintainable as they grow.
- Clear written communication — comfortable documenting assumptions and design decisions rather than guessing silently on ambiguous requirements.Preferred qualifications
- Experience with a major LLM provider platform (Google Vertex AI/Gemini, OpenAI, AWS Bedrock, Azure OpenAI, or Anthropic).
- Experience building a natural-language-to-SQL or natural-language-to-structured-query system specifically.
- Familiarity with cloud deployment (GCP, AWS, or Azure) and containerization (Docker).
- Experience with session/cache stores (e.g., Redis) for stateful, multi-turn systems.
- Frontend familiarity (React/Next.js/TypeScript) sufficient to collaborate across the stack.
- Domain experience in financial, ERP, or B2B analytics data.What we're explicitly not looking for
- Deep ML research or model-training expertise — this role is about building robust systems around a foundation model API, not training models.
- Pure prompt-engineering/no-code AI experience without underlying software engineering skill.Success in the first 90 days
- Ship at least one end-to-end pipeline component (retrieval, validation, or state management) into production use.
- Contribute a test suite that catches a real quality or safety regression before it reaches users.
- Help onboard a new use case/data domain into the system, proving it can extend without a full rewrite.