Forward-Deployed AI Engineer
Apply for this role →About Descent
Descent makes companies AI-native. We led GoTyme's AI transformation end to end: more than 70 agentic systems into production at a $1.5bn digital bank, an AI team grown from 3 to 37, and 1,600+ people trained to work with AI. Our thesis is simple: software does the work, people direct it. Now we bring that to ambitious companies, from culture to operations to ventures we build together.
Purpose of the role
We build complete software systems that rebuild how established businesses operate. At the heart of many of them are agents that handle real work on their own, with people supervising rather than doing. You will architect and ship the whole thing: the backend, the data layer, the frontend people actually use, and the agentic systems doing the work underneath.
Usually a business comes to us with a problem they want solved. Part of the job is getting close enough to understand it properly, earning the team's trust, working out where the real operational pain is, and finding the thing worth building before you write a line of code.
The agents we build are not static. They learn from how people actually use them, picking up on feedback, preferences, and patterns over time, so the system gets sharper the longer it runs. An agent is only as good as the system around it, so a big part of this role is building that system well: the interfaces, the integrations, the infrastructure, and the controls that let a business trust it.
As a Forward-Deployed Engineer, you embed directly with our clients, sitting close to the problem and staying close through to adoption. The businesses we work with span wildly different worlds, and every engagement drops you into a new domain with its own language, constraints, and problems to untangle. One quarter you might be building a platform that runs a firm's customer onboarding from end to end; the next, a system that coordinates a process nobody outside that industry even knew existed.
What stays constant is that you own the whole arc: discovery, architecture, build, deployment, and the messy human work of getting people to actually use what you ship. Success looks like a system running in production that a business relies on every day, with people who have genuinely changed how they work.
This is deliberately a rotational, multi-domain role. You will not be stuck on one account or one stack. You will get very good at walking into an unfamiliar business, learning how it works fast, and shipping something that matters, then doing it all again somewhere completely different.
What you will be doing
Discovery and client embedding
- Embed with client teams to understand how the business really works: their operations, decisions, workflows, pain points, data, and constraints.
- Earn the team's trust, get to the bottom of the problem the business brings you, and work out what is actually worth building.
- Translate messy, real-world business problems into clear, prioritised opportunities and a practical plan to build.
- Stay close through to adoption: help people change how they work, manage resistance, and make sure what you ship gets used.
Full-stack system development
- Design, architect, and ship complete applications end-to-end: backend services, APIs, databases, and the frontend interfaces people use every day.
- Build polished, usable frontends (React, Next.js, or equivalent). The systems you ship are only as good as the experience people have using them.
- Integrate deeply with the systems, third-party APIs, and data sources a client already depends on.
- Make pragmatic technology choices that balance speed of delivery with long-term maintainability.
Agents and agentic systems
- Design and build agents that carry out real work autonomously: reasoning over context, using tools, calling APIs, and taking actions within clear guardrails.
- Build multi-agent systems where agents coordinate to run a whole process, along with the human-in-the-loop checkpoints that keep them safe and trustworthy.
- Build feedback and learning loops so agents improve from real usage, adapting to user preferences, corrections, and behaviour over time.
- Work hands-on with the building blocks of modern agents: retrieval-augmented generation, structured output, tool use, memory, streaming, prompt management, and orchestration.
- Build the interfaces and controls that let people supervise, correct, and collaborate with the agents.
- Evaluate, select, and swap between LLM providers and models based on cost, latency, and quality trade-offs.
Production ownership
- Deploy, monitor, and maintain what you build. You own it in production.
- Set up logging, error tracking, alerting, and observability from day one, including visibility into what your agents are actually doing and why.
- Handle incidents, debug production issues, and continuously improve reliability.
- Write code that is secure, tested, and documented well enough for others to pick up.
AI-first development practice
- Use AI coding tools as a core part of your development workflow.
- Coordinate multiple AI coding agents (e.g. Claude Code, Cursor, Copilot) to parallelise and accelerate work.
- Continuously adopt and evaluate new AI-assisted development tools and techniques.
Requirements
Must-have
- Several years of professional experience building and shipping full-stack applications.
- Demonstrated track record of putting real software into production and maintaining it there, well beyond prototypes or demos.
- Strong backend skills (Python, Node.js/TypeScript, or similar) and genuinely solid frontend capability (React, Next.js, or equivalent). This role needs both.
- Hands-on experience building LLM-powered or agentic features: tool use, function calling, orchestration, and getting them to behave reliably in production.
- Comfortable with databases (SQL and/or NoSQL), API design (REST/GraphQL), and cloud infrastructure (AWS, GCP, or Azure).
- Proficient with Git, CI/CD pipelines, containerisation (Docker), and modern deployment practices.
- Actively uses AI coding tools (Claude Code, Cursor, Copilot, or similar) as part of their daily workflow.
- Able to get to the heart of the problem a business brings you, and earn the trust of the people you build for.
- A portfolio or examples of shipped full-stack applications you can walk us through, ideally including something agentic or AI-powered.
- Comfortable embedding with clients and working across varying levels of technical maturity, from businesses running on spreadsheets to those with established systems.
- Adaptable and quick to get up to speed in an unfamiliar industry or domain.
- Clear written and spoken English.
Nice-to-have
- Experience with agent frameworks and orchestration (LangGraph, LangChain, CrewAI, the OpenAI Agents SDK, or similar).
- Experience designing feedback loops, memory, or personalisation that let a system learn from user behaviour over time.
- Experience taking ambiguous problems all the way through to implemented, measurable, adopted outcomes.
- Familiarity with vector databases (Pinecone, Chroma, FAISS, Qdrant) and RAG architectures.
- Experience with workflow automation platforms (N8N, Make, Zapier, or custom orchestration).
- Background in consulting or client-facing delivery, with exposure to a range of business domains.
- Exposure to evaluation frameworks, agent observability, or prompt engineering at scale.
- Open-source contributions or a public body of technical work.
What we value
- Ownership mentality. You see things through from idea to production and beyond.
- High agency. You go and find the work that matters, and you bring people with you.
- Pragmatic delivery. Ship, learn, and iterate.
- Curiosity across domains. You enjoy dropping into a new industry and figuring out how it works.
- Clear communication. You can explain technical decisions to non-technical stakeholders and earn trust on-site.
- A bias toward action. You like to build and ship, and you keep up momentum.
Sound like you? We would love to see what you have shipped.
Apply for this role →