Available for the right opportunity

Where messy
problems meet
sharp AI.

The hard part was never the model. It was knowing what to build around it.

I'm Prithvi. I spent a decade convincing computers to do exactly what I told them, then switched to convincing them to figure it out themselves — which is either a career pivot or a loss of control, depending on who you ask. Either way, I've shipped things that work in both paradigms, and I find the ambiguous middle between them unreasonably fun.

Scroll to explore
70%
Less time. Same outcomes.
Cut approval workflow time by 70% at Adobe — not by removing steps, but by making the AI do the right ones automatically.
10+
Years in the deep end.
From Nordic banking systems to autonomous vehicle ML to enterprise SaaS. Different domains, same discipline: ship it, measure it, improve it.
Comfort with ambiguity.
The best AI problems don't have a requirements doc. I'm at home in the space between "we need something" and "here it is."
The story

Why I do this

I've always been drawn to problems where the answer isn't obvious yet. That curiosity is what led me through a decade of building systems that genuinely mattered — financial platforms where precision is non-negotiable, ML-driven logistics for autonomous vehicles, enterprise tools used by creative teams at some of the world's most recognisable companies.

What I love about that journey is what it taught me about craft. Every domain had its own definition of quality — and getting good at each one sharpened my instinct for what makes a system trustworthy, not just functional. That foundation turned out to be exactly what AI engineering needs most.

Two years ago I went deep on LLMs and agentic systems, and something clicked. The discipline of evaluating whether an agent is actually working, of designing routing logic so the right model handles the right task, of building RAG pipelines that retrieve the right things for the right reasons — these are fundamentally engineering problems, and I'd been training for them for a decade without knowing it.

The Workfront Approvals Agent was where it all came together. No template, no blueprint — just a bold goal, a talented team, and the belief that if you get the architecture right, the agent can earn the user's trust. That's the kind of challenge I want to keep chasing.

Currently at
Invisible Technologies
Senior Forward Deployed Engineer · Apr 2026–
Previously
Adobe · Workfront
Software Engineer II · Technical Lead · 5 years
Trained in
Applied AI
Deep Atlas AI Immersion · deepLearning.ai specialization
Based in
Salt Lake City
Open to SF and remote opportunities
Mission log

Selected work

Invisible Technologies Apr 2026 — Present
Senior Forward Deployed Engineer
Invisible sits at the frontier of human-AI collaboration — the kind of company that exists because AI got interesting enough to need people who can translate between "what the model can do" and "what the client actually needs." My job is to be that person. I work directly with enterprise clients to understand where their workflows break, then architect agentic systems that fix the right things without breaking everything else.
Agentic AI Enterprise deployment LLM systems Client architecture AI integration
Adobe · Workfront Jun 2021 — Apr 2026
Software Engineer II · Technical Lead
70% reduction in approval time 30% system efficiency gain 50% faster deployments
Here's what no one tells you about building the first AI agent at a company: there is no playbook. When Adobe said we were building a conversational AI agent for Workfront's approval workflows, we had a business goal and a blank whiteboard. I led the team that turned that into something real.

We designed the eval framework from scratch — because if you can't measure whether the agent is making good decisions, you don't have an agent, you have a liability. We built a DAG-based evaluator to trace decision paths. We designed the LLM routing strategy so the right model handled each stage of a conversation. We built the context pipeline that gave the agent what it needed to understand who was asking, what they needed approved, and why it mattered.

The result wasn't just a 70% time reduction. It was proof that you can take a process that requires human judgment and — with the right architecture — make an AI system that earns that trust.
LLM routing DAG evaluator RAG Eval frameworks Human–AI interaction Context pipelines TypeScript Node.js Microservices CI/CD
Ford Motor Company · Apex Systems Apr 2019 — Sep 2019
Software Engineer · Autonomous Vehicle Platforms
Autonomous vehicles are an ML problem disguised as a logistics problem. I designed and validated an optimization model for ride-sharing dispatch — applying dynamic programming to a system where every routing decision had a real cost: driver time, rider wait, vehicle utilization. It was my first serious encounter with what it means to deploy ML in the real world, where the algorithm can't just be right on average — it has to be right now.
ML optimization Dynamic programming Autonomous vehicles Spring Boot Docker Kubernetes
Fidelity Investments · KForce Oct 2019 — Jun 2021
Software Engineer · Financial Systems
Finance has zero tolerance for correctness errors and zero patience for slow engineers. I joined mid-project, picked up Golang in a running iteration, learned the finance and insurance domain within a month, and shipped. Some skills you can only learn when the deadline is real.
Golang Microservices SQL / MySQL Financial systems
State Retirement Systems of Illinois Apr 2018 — Apr 2019
Software Developer · Springfield, IL
Government software is unglamorous by reputation and genuinely hard by nature — legacy codebases, zero tolerance for downtime, and users who depend on it for their retirement. I took a brittle, outdated retirement suite and rebuilt it into something modern, open-source, and actually usable. Designed the UI from scratch using WPF and Expression Blend, wired up WCF services with a clean SOA architecture, and became a core part of the Agile monitoring team driving sprint planning across scrum groups. Good engineering doesn't care whether the domain is glamorous.
C# .Net WPF WCF / SOA MVVM Expression Blend Agile
Tieto Corporation · Pune, India Nov 2014 — Jul 2016
Software Engineer · Nordic Banking Systems
My first job out of university, and it set the bar high. Nordic banking clients expect precision — interest calculations that are exactly right, delivered on schedule, with no surprises. I designed and delivered that service, and won an excellence award for contributing to the successful rollout of VAM to multiple clients within a year.

I also helped the team make the leap from waterfall to Agile — which sounds like a process story, but is really about convincing experienced engineers to trust iteration over specification. That lesson has stayed with me ever since.
Java Spring MVC Hibernate / ORM SQL Banking systems Agile
Systems

Technical stack

AI & ML
LLMsRAG LLM RoutingEval Frameworks Agentic SystemsPrompt Engineering Information RetrievalReasoning Systems TensorFlowJupyter
Languages
PythonTypeScript Node.jsJava GoJavaScriptPHP
Infrastructure
AWSGCP KubernetesDocker KafkaGitLab CI/CD JenkinsGitHub
Data
PostgreSQLMongoDB MySQLSQLJDBC
Training

Education & certifications

M.S. Computer Science
University of Illinois Springfield
Dec 2017
B.E. Computer Science
VTU, Dharwad, India
Jun 2014
Deep Atlas AI Immersion Program — Applied AI: LLMs, RAG, Agentic Systems, Evals
Deep Learning Specialization — deepLearning.ai
Comms

Let's build something

I'm particularly interested in roles where the problem space is still being defined — agentic systems, human-AI interaction, information retrieval at scale. If that sounds like what you're working on, I'd love to hear about it.

/* STARFIELD */ (function(){ const c=document.getElementById('cv'),ctx=c.getContext('2d'); let stars=[],W,H,f=0; function resize(){W=c.width=innerWidth;H=c.height=innerHeight;} function init(){ stars=[]; const n=Math.floor(W*H/3600); for(let i=0;i