Ashish Kr JhaSoftware Engineer
I build production React applications and the services under them: data-access layers in TypeScript, Python services and scheduled pipelines, and the server-side controls around LLM agents that read and write enterprise data. Then I maintain them, which is a different job.
- markets in production
- 11markets in production
- screens in production
- 185screens in production
- field reps supported
- 400+field reps supported
- annual licensing removed
- $27kannual licensing removed
- TypeScript
- React
- Python
- Node.js
- Next.js
- PostgreSQL
- FastAPI
- Redux Toolkit
- Redis
- Docker
- Google Cloud
- REST APIs
- Tool calling
- Agent workflows
- Git
What I’ve built
Enterprise applications, the services and agent infrastructure behind them, and the side projects where I get to pick the whole stack.
Quill & Code
LiveA writing and publishing app with an AI drafting mode. I built both halves: the FastAPI service, data model and background jobs, and the React front end on top. Owning both ends means a schema change is my problem in two places.
- FastAPI service over PostgreSQL with Alembic migrations, and a Celery worker on Redis for durable background jobs
- Redis-backed rate limiting, with sanitisation and profanity filtering on user-submitted content
- Gemini calls for the drafting mode run server-side rather than from the browser, keeping the key out of the client
- Next.js 15 / React 19 client with TanStack Query for server state and Zustand for session state, typed from the backend's OpenAPI schema so the two can't drift apart quietly
FastAPIPostgreSQLRedisCeleryNext.jsReact 19TypeScriptTailwindVisit Quill & CodeInterview Practice
LiveTechnical interview practice that grades whether the mental model holds up, rather than whether the right word came out. The hard part is scoring that without quietly rewarding fluency.
- Sessions built from an uploaded job description or resume
- Competency plan shown before the session starts
- Three-tier hints that point at the concept rather than supplying the term
- Post-session summary of what was covered and what wasn't
Next.jsTypeScriptTailwindLLM EvaluationVisit Interview PracticeLLM Agent Platform
Working POCA chat assistant over enterprise data. The model asks for typed tools and the client resolves them in parallel, under a hop cap. Left uncapped it will keep asking, and every hop costs a round trip and tokens.
- Gemini function-calling over a small set of typed tools: list objects, fetch schema, query records
- Scheduled Node.js job extracts platform schema, filters system and audit fields through an allowlist, and publishes a versioned artifact the agent reads at runtime
- React clients over an async execution API: execute→poll with backoff, cancellation, retries, and idempotency via unique external IDs
- Session invalidation and recovery, with response normalisation across browser and tablet runtimes
Node.jsTypeScriptReactGeminiTool CallingSecure AI Automation
Design + deployed foundationThe first version called the model straight from the client, which was fine until it had to touch regulated data. Execution moved server-side behind the platform's own auth, and this is the mutation pipeline that came out of that.
- Intent parsing runs with no tools declared and a fixed response schema, so text embedded in an untrusted ticket has nothing to call
- Past that boundary, execution is ordinary deterministic code rather than model output
- Writes go through a dry-run diff, a two-surface approval, and a state-hash check at execute time to catch drift between approval and execution
- Savepoint rollback, per-action caps, and an append-only audit trail with encryption on sensitive fields
Node.jsPostgreSQLLLM SafetyAudit & ComplianceEnterprise Survey Platform
ProductionA React survey platform wired into enterprise CRM records, built to replace a bought-in tool that cost more and did less. The licence saving was the easy part to measure. The compliance rules were the part that took the time.
- Questionnaires driven by therapeutic area, country, product and compliance rules
- Admin tooling so business users could change surveys without a deployment
- Used by 400+ field representatives across 4 continents
- Removed roughly $27,000 a year in licensing
ReactTypeScriptEnterprise CRMREST APIs
Where I’ve worked
From freelance full-stack work to a production application used across eleven markets, and the services and tooling underneath it.
Cloud Rank Pvt. Ltd.
Senior ConsultantApr 2023 to PresentIndia- Ship features for a production TypeScript/React application used daily across 11 global markets: roughly 185 screens, Redux Toolkit state management and multilingual support from a shared codebase.
- Maintain the application's data-access layer: request chunking around platform query limits, parallel request orchestration, timeout handling, retries and independent request-state management.
- Built internal tooling on the TypeScript Compiler API that indexes 771 source files into a 2,795-node, 17,985-edge graph, making imports, JSX component trees, Redux data flow and call graphs queryable instead of read in full.
- Built a scheduled Node.js pipeline that extracts and filters platform schema through an allowlist, publishing an artifact consumed at runtime by an LLM tool-calling agent.
- Built React clients for enterprise AI assistants with async execution, polling, cancellation, retry logic and response normalisation across browser and tablet runtimes.
- Worked on the foundations for secure enterprise AI workflows: server-side LLM execution, structured outputs, approval gates, auditability, rollback protection and compliance-aware boundaries.
- Worked with global stakeholders on requirements, estimates and releases, and reviewed code and debugged alongside junior developers.
Freelance
Software DeveloperNov 2021 to Mar 2023Guwahati- Built custom web applications and academic projects using JavaScript, React and REST APIs.
- Worked with engineering students to design and deliver full-stack applications, managing milestones and technical planning.
- Evaluated tooling and libraries to improve project architecture and implementation quality.
Salesforce & Enterprise CRM
Engineering, Additional ExperienceEarlierIndia- Configured and customised enterprise CRM solutions across sales, medical and analytics workflows.
- Built integrations with external systems using REST APIs.
- Built production reporting solutions, dashboards and field applications.
- Supported production deployments, issue resolution and stakeholder communication.
Education
Bachelor of Technology
Girijananda Chowdhury Institute of Management and Technology · 2021 · India
What I build with
What I reach for day to day, and the AI engineering practices that came out of working somewhere the data is regulated and every action is auditable.
Languages
- Python
- TypeScript
- JavaScript
- SQL
Backend & data
- FastAPI
- Node.js
- REST APIs
- PostgreSQL
- SQLAlchemy
- Alembic
- Redis
- Celery
Infrastructure
- Docker
- Google Cloud
- Cloud Run
- Cloud Scheduler
- Cloud Storage
- Git
AI engineering
- LLM API integration
- Tool / function calling
- Structured outputs
- Agent workflows
- Prompt-injection boundaries
- Token & cost budgeting
Frontend
- React
- Next.js
- Redux Toolkit
- Vite
- Tailwind CSS
Work, measured
Longer write-ups of things listed above, with the numbers that came out of them. Written down so the next person hitting the same problem has more to go on than I did.

The CORS Error That Was a Race Condition
The browser console said the request had been blocked by CORS policy, that no Access-Control-Allow-Origin header was present on the requested resource.
- 16 min read
- webdev
- PostgreSQL

My Idle Background Worker Was the Most Expensive Thing I Owned
I opened the Cloud Run billing breakdown expecting the database to be the villain. Failing that, the AI generation, which calls out to a model and streams tokens back and feels expensive, in the way…
- 20 min read
- Python
- devop
No fetch, No Storage: Shipping Inside a Sandboxed Host
The answer came back in writing, from the vendor, and it amounted to: yes, and you'll be building it yourself. The question had been a simple one. The platform we build on has an agent feature.
- 13 min read
- JavaScript
- #ai-tools
Get in touch
Happy to talk about applications at scale, the services and pipelines behind them, or the plumbing around LLM agents.