FARZAMGet in Touch

Farzam Azhar, Senior Full-Stack & AI Engineer (Claude & LLMs · Next.js · React · Rails · Python)

Farzam Azhar
  • Claude & OpenAI
  • RAG, evals, voice
  • Next.js + React
  • Rails 3 → 8.1
  • Python + Node.js

9+

Years of
experience

Full-stack.
AI.
Shipped.

5.0Upwork rating,
45+ jobs

In short

I'm Farzam Azhar, a senior full-stack and AI engineer in Lahore, Pakistan. Since 2017 I've built production software for clients in the US, UK, EU and Australia, in Next.js and React, Ruby on Rails, Node and Python. Today most of my work is putting LLMs into real products: RAG with evals, AI gateways with cost controls, call graders measured against human reviewers, and real-time voice agents.

9+

Years shipping production software

12

Products I've built LLM features into

45+

Upwork jobs completed

8,000+

Hours billed on Upwork

5.0

Rating on long-term contracts

<6 h

Typical reply time

Selected work

Live in production.

AI systems and full-stack products with real users, across Next.js, React, Rails, Node and Python. The code is private to each client, so the links go to the products themselves.

01AIVoice AI · Reviews automation

SurgePoint AI Front Desk

Lead engineer

An AI receptionist that answers, books and follows up for med-spas and clinics, on a multi-tenant Rails 8 SaaS I rebuilt from Next.js and now own (879 of 900 commits).

  • LLM call grader: Claude scores every call through a forced-tool schema against versioned rubrics, with human-reviewer agreement tracked per rubric version
  • Grader sees the knowledge-base passages the voice agent actually retrieved, so it can tell a real price from a hallucinated one
  • Retell voice agent booking into Boulevard, Zenoti, Mindbody and Google Calendar; cheap Haiku gates that fail open; prompt caching and idempotent jobs

Rails 8Anthropic ClaudeRetell AISidekiqPostgreSQLKamalStripe

02AIProptech · Netherlands

pandOS AI platform

Built the AI platform layer

The AI layer behind an operating system for Dutch real-estate investors: one gateway every model call goes through, with evals, budgets and fallbacks built in.

  • Gateway across Anthropic, OpenAI and local Ollama with idempotency, per-provider circuit breakers, retries and a cost-in-EUR log for every call
  • Capability registry with versioned prompts; golden-set evals with an LLM judge, run in CI to block any PR that drops the pass rate by more than 5%
  • Monthly budgets that downgrade to a local model only when its eval score allows it; PII redacted from eval data

Rails 8.1AnthropicOpenAIOllamapgvectorGitHub ActionsSolid Queue

03AIAI coaching · RAG + voice

Mentara (AI Guru)

Built it end to end

An AI coach that answers from each coach's own material, by chat or by voice. I built the Rails app, the retrieval pipeline and the Python voice agent.

  • Hybrid retrieval: pgvector semantic search and Postgres full-text fused with reciprocal rank fusion, plus HyDE query expansion and conversational query rewriting
  • Multilingual RAG on Cohere embeddings (English and Dutch), with retrieval-quality checks before an answer is generated
  • Python LiveKit agent: Deepgram Nova-3 speech-to-text, streamed LLM over SSE, Cartesia speech, barge-in and tuned turn-taking

Rails 8PythonLiveKitpgvectorOpenAICohereDeepgramCartesia

04AIProptech · Frankfurt letting agency

Rental inquiry screening

Sole developer

Next.js app that reads every rental inquiry a Frankfurt letting agent receives, runs it through screening gates and writes the result back to their CRM. I wrote all 228 commits.

  • Model chosen by measurement: four models run on the client's 16-case acceptance set, gpt-4.1-mini picked at 14/16
  • LLM output validated with zod and retried once on mismatch; attachments never reach the model
  • PropStack CRM, Gmail and ImmoScout integrations behind settings toggles; 72 test files; ingest replayed over 325 real messages

Next.js 15React 19TypeScriptSupabaseOpenAIzodVercel

05Proptech · Underwriting data

PadStats

Full-stack engineer

Real-estate intelligence for underwriters: value, rent, crime and hazard exposure on an interactive map. I'm the top committer on the Next.js front end (1,012 commits) and work across its Rails and Node services.

  • Next.js 14 map: Mapbox GL with viewport-driven H3 hazard layers (flood, fire, storm surge, wind, earthquake)
  • Valuation and rental-estimate flows with PDF reports, comparables and session caching
  • Rails 7 GraphQL API, and flood-risk, opportunity-zone and earthquake endpoints in the Express geospatial service

Next.js 14TypeScriptApollo GraphQLMapbox GLRails 7Node.jsCloud Run

06AISports · Document AI

WinAD contract intelligence

Owned AI data ingestion

Athletic-department intelligence built from coach, vendor and game contracts. I owned the pipeline that turns contract PDFs into structured, cited data.

  • Vision model (o4-mini via Portkey) detects redactions and handwritten corrections before extraction
  • Prompts moved into Portkey prompt management with traces on every ingestion; QA verification and citation jobs
  • Eval harness running Portkey prompts against a golden set of contract-clause cases, with a 0.85 pass threshold

Rails 8PortkeyOpenAIUnstractSidekiqPostgreSQL

07AICybersecurity · Law firms

SEAL cyber-risk portal

Sole front-end developer

Cyber-risk assessments for law firms, with separate areas for banks, clients and auditors. I built the whole Next.js front end (239 of 239 commits) and worked on its Rails API.

  • Five role-based areas (admin, bank, firm, client, auditor) with NextAuth JWT refresh and TanStack Query
  • AI reports streamed live into React over ActionCable, with a choice of model per report
  • Rails API scoring and validation services, and a retrieval-backed live-reporting job

Next.js 16React 19TypeScriptTanStack QueryNextAuthRails 7OpenAI

08AIProptech · Australia

Gameplans

Core developer (1,004 commits)

A property-investment planning platform for Australians: plans, Compass charts, scoreboards and advisor access. Second-largest committer after the founder, over two years.

  • OpenAI Assistants with file search and vector stores, with query logging and rate limits
  • Load-time work on Compass charts and their queries; embeddable chart iframes
  • Two-factor auth, Stripe discounts and invoices, GitHub Actions CI

Rails 7OpenAI AssistantsPostgreSQLSidekiqStripeChart.js

09Field-service SaaS

Sera

Contract engineer

Scheduling, dispatch and invoicing for home-service companies, on a codebase that dates to 2017. I work across the Vue 3 front end, the Rails API and the Expo mobile app.

  • Vue 3 + TypeScript: memberships, scheduler, payment plans and reports
  • GoHighLevel CRM sync with batched backfills, rate limiting and a settings UI
  • React Native payment-plan and progress-billing screens, with Jest specs

Vue 3TypeScriptRails 7.2React NativeSidekiqJest

10Digital health

WeGuide

Senior Rails developer, via Curve Tomorrow · 2021 – 2023

A patient platform for clinical trials and health programmes, which organisations run as their own branded app. Multi-tenant Rails backend with Ionic mobile apps.

  • Tenant isolation with ros-apartment, and Sidekiq jobs that always run inside the right tenant
  • Head of Product Thijs S.: "He goes the extra mile and actively thinks along"

Rails 6.1SidekiqPostgreSQLIonicAngularCircleCI

More work

  • Healthy Brain HubRails 7.1

    Dementia-research participant platform. Main developer: SurveyJS assessments, 8 clinical scoring calculators, Cogstate integration, 4 languages.

  • Acton Academy platformRails 8.1 · Claude

    School-network platform. Claude website audit with a tunable confidence threshold and SSRF guard; Claude summaries of survey answers.

  • WellFundedRails 7.1 · Claude

    Charity–philanthropist platform. Claude reads annual-report PDFs and streams summaries into the page.

  • Shorts CreatorPython

    CLI that cuts vertical shorts from long video: WhisperX, face and pose tracking, scene detection, smoothed camera.

  • Claude Code pluginClaude Code · Python

    Builds and deploys a client's compliance site from their own website, with an approval step before deploy.

  • The Fast 800Rails 6.1 · Ionic

    Dr Michael Mosley's diet programme. Braintree subscriptions and an Ionic + Capacitor app for iOS, Android and web.

About me

Where I've worked.

Senior Full-Stack & AI Engineer (independent)

2020 – present

Upwork and direct clients · Remote

  • SurgePoint: lead engineer (879 of 900 commits) on an AI receptionist SaaS. Claude call grader with versioned rubrics and human-agreement tracking, Retell voice agent booking into EMRs, Rails 8 on Kamal.
  • pandOS: built the AI platform layer. Multi-provider gateway (Anthropic, OpenAI, Ollama) with circuit breakers and per-call cost logging, versioned prompts, LLM-judge evals gating CI, budget-aware model routing.
  • Mentara: hybrid RAG (pgvector + full-text, reciprocal rank fusion, HyDE, multilingual Cohere embeddings) and a Python LiveKit voice agent (Deepgram, Cartesia, barge-in).
  • Next.js / React: SEAL cyber-risk portal (Next.js 16, React 19, sole front-end developer), a Next.js 15 + Supabase LLM screening app with a measured model choice and 72 test files, and the PadStats map front end (1,012 commits).
  • Document AI and Python: WinAD contract ingestion with vision-based redaction detection via Portkey and an eval harness; a Django + Celery transcription and insights service.
  • 45+ completed Upwork contracts, rated 5.0 on long engagements of 2,449, 1,934, 1,748 and 1,168 hours with single clients.

Senior Rails Developer (contract)

Feb 2021 – Jul 2023

Curve Tomorrow, Australia · Remote

  • Worked across the agency's health portfolio: WeGuide, The Fast 800, Young Stroke Service and Child and Family eHub.
  • WeGuide: multi-tenant Rails 6.1 (ros-apartment) with tenant-aware Sidekiq jobs, two-factor auth and Firebase push.
  • The Fast 800: Braintree billing on a Rails API, plus Ionic + Capacitor apps for iOS, Android and web.
  • Rails 6 → 7 upgrades, with CircleCI and Code Climate gates on every app.

Ruby on Rails Developer

2018 – 2020

Square63, Lahore · Lahore, Pakistan

  • Built Rails 5 and 6 applications for international clients at a Lahore software house.
  • Brentmark client portal: configurable product content types with drag-and-drop ordering, payment preferences and policy acceptance (351 commits).
  • Concierge marketplace API: orders and checkout, Stripe auto top-ups on Sidekiq, OTP login, OAuth with Doorkeeper, rswag API docs.
  • Two-factor authentication over SMS and email with backup codes (devise-two-factor, Twilio) for FundingPro.

Education & certification

  • BS Computer Science

    FAST-NUCES (National University of Computer and Emerging Sciences), Lahore · 2014 – 2018

  • Certified Ruby on Rails Developer

    Upwork

Details

Location
Lahore, Pakistan (UTC+5)
Work
Remote · 40 h/week · full time or contract
Languages
English (professional), Urdu (native)
Download CV (PDF)

Skills

AI engineering

  • Anthropic Claude (tool use, prompt caching)
  • OpenAI
  • RAG
  • pgvector
  • Hybrid search (RRF, HyDE)
  • Embeddings (OpenAI, Cohere)
  • Evals & LLM-as-judge
  • Portkey
  • LangChain
  • Pinecone
  • Ollama
  • Vercel AI SDK
  • Claude Code

Voice & media AI

  • LiveKit Agents
  • Deepgram
  • Cartesia
  • Retell AI
  • Whisper / WhisperX
  • Vision models

Frontend

  • Next.js (14–16, App Router)
  • React 19
  • TypeScript
  • TanStack Query
  • Redux Toolkit
  • Zustand
  • Apollo GraphQL
  • Tailwind CSS
  • shadcn/ui
  • Mapbox GL
  • Vue 3
  • React Native (Expo)

Backend

  • Ruby on Rails (3 → 8.1)
  • Hotwire
  • Sidekiq
  • Node.js
  • Express
  • GraphQL
  • Python
  • FastAPI
  • Django
  • Celery

Data

  • PostgreSQL
  • pgvector
  • PostGIS
  • H3
  • Supabase
  • MongoDB
  • MySQL
  • Redis
  • BigQuery
  • OpenSearch

Cloud & DevOps

  • AWS
  • GCP Cloud Run
  • Vercel
  • Cloudflare Workers
  • Heroku
  • Docker
  • Kamal
  • GitHub Actions
  • CircleCI
  • Terraform
  • Sentry

Testing

  • RSpec
  • Capybara
  • Jest
  • Vitest
  • Cypress
  • Playwright
  • pytest

Integrations

  • Stripe
  • Braintree
  • Paddle
  • Twilio
  • Vonage
  • SendGrid
  • Plaid
  • GoHighLevel
  • Google APIs

The story

My journey.

From first job to now. Scroll and the line draws the story.

’17

First production code

Started building web apps professionally, alongside the last year of a BS in Computer Science at FAST-NUCES. In 2018 I joined Square63 in Lahore as a Rails developer.

9 years ago

’20

Went independent

Started freelancing on Upwork. The first long contract was an internal back-office app in Rails, Stimulus and Tailwind that ran for two years and 1,934 hours.

6 years ago

’21

Curve Tomorrow, Australia

Joined Curve Tomorrow on contract for two and a half years, working across their health products: WeGuide, The Fast 800, Young Stroke Service and Child and Family eHub.

5 years ago

’23

One SaaS, 2,449 hours

Started on a Rails SaaS product that kept me on until August 2025. The client's review: "he genuinely cares about outcomes."

3 years ago

’24

Got married

Life outside the editor changed. The same year I started working with Sera and PadStats.

2 years ago

’25

Became a father

My daughter arrived. Life-changing in the way everyone warns you about and nobody quite manages to explain. Priorities reordered themselves overnight.

1 year ago

’26

AI engineering, full time

Built an AI receptionist with a Claude call grader, an AI gateway with evals and budgets for pandOS, and an LLM screening app in Next.js for a Frankfurt letting agent.

this year

Now

Open to the next one

Taking on senior AI engineering and full-stack roles (Next.js, React, Rails, Python), full time or by contract. Remote, 40 hours a week.

Clients

In their words.

Every quote below is copied word for word from Upwork. Read them all on my profile ↗

  • SurgePointSurgePoint
  • PadStatsPadStats
  • pandOSpandOS
  • SeraSera
  • WeGuideWeGuide
  • The Fast 800The Fast 800
  • Curve TomorrowCurve Tomorrow
  • Compendium360Compendium360
  • Young Stroke ServiceYoung Stroke Service
  • Child and Family eHubChild and Family eHub
  • Bounce Rental SolutionsBounce Rental Solutions
“
I hired Farzam to help build out our Ruby On Rails (ROR) stack for our product. Farzam has done a tremendous job. He's reliable, a good communicator and an excellent developer. He goes the extra mile and actively thinks along while creating new functionalities. He's an asset to any company developing high-quality software and would highly recommend him.
Thijs S. · Head of Product, WeGuide Healthcare · Jan 2023 · Verified on Upwork
“After working with Farzam on a smaller feature, we asked him to take on the full MVP of our storytelling platform, and it was the right decision.”
Upwork clientStorytelling platform MVP (Rails)Mar – Sep 2026 · 5.0 ★ contract review
“Farzam is an excellent developer and communicator. He follows directions very well, he collaborates with others well, and he genuinely cares about outcomes.”
Upwork clientSenior Rails developer, SaaS product · 2,449 hNov 2023 – Aug 2025 · 5.0 ★ contract review
“I hired Farzam build out the first iteration of our application, from 0 to 1. He is an experienced developer with an effective and efficient approach to developing high-quality full-stack applications. After finishing our V0 application, he has continued to help us build more complex and scalable features as well.”
Jesse S.0 → 1 product buildJan 2025 · Verified testimonial
“Farzam was a true pleasure to have on the team. He is proactive, diligent, and a thorough communicator. Most of all, I enjoyed [his] positive and professional attitude.”
Upwork clientSenior Ruby on Rails developer · 1,748 hFeb 2025 – Jan 2026 · 5.0 ★ contract review
“Farzam was a fantastic asset to us for Rails development. He really knows his stuff and is an ambitious worker. I would definitely choose to hire him again if given the opportunity.”
Jonathon M.Senior Software EngineerJan 2025 · Verified testimonial
“Farzam was a great communicator and helped my co-founder and I get our product from wireframes to ready-to-launch. He communicated well, understood requirements and asked questions if the requirements were unclear.”
Upwork clientFull-stack Rails developer, new SaaS productMay – Sep 2024 · 5.0 ★ contract review
“Had the chance to work with him for over a year. He was easy to work with. Clear communicator who could help us get aligned on project outcomes.”
Upwork clientRuby on Rails developer, Heroku · 537 hAug 2025 – Sep 2026 · 5.0 ★ contract review
“From the onset, it was evident that Farzam isn't just proficient in Ruby on Rails, but a master of the craft. Farzam's approach is both meticulous and innovative, consistently delivering excellent work.”
Upwork clientMFA + social sign-up for a Rails appSep 2023 · 5.0 ★ contract review
“Farzam became a valuable member of our team where he showed off his ability to deliver high quality and efficient code. I highly recommend him!”
Alex K.Senior Software Engineer, full-stack webJan 2025 · Verified testimonial

How I work

What you can count on.

01

Evals before opinions

Golden sets, LLM judges and CI gates. SurgePoint's call grader tracks its agreement with human reviewers per rubric version; pandOS blocks any PR that drops the eval pass rate.

02

The right model, measured

Four models run on a client's 16-case acceptance set before picking one. Haiku for cheap yes/no gates, Sonnet where a wrong answer costs a human's time.

03

Failure and cost designed in

Circuit breakers, retries that can't corrupt a webhook, idempotent calls, per-call cost logs and monthly budgets that fall back to a cheaper model.

04

Across the whole stack

Next.js and React on the front, Rails, Node or Python behind it, Postgres and pgvector underneath. Features land complete, not at the edge of a speciality.

05

AI-assisted, human-owned

I use Claude Code every day and have built plugins and agent setups for it. I still design the change, read every diff and answer for what ships.

06

Clients keep me for years

2.5 years with Curve Tomorrow, 2,449 hours on one SaaS product. "Clear Communicator" is the tag clients give me most on Upwork.

FAQ

Questions I get asked.

Both, and the combination is the point. Most AI features fail in the plumbing around the model: retrieval, evals, retries, costs, the UI that streams the answer. I build the model-facing parts (RAG, graders, gateways, voice agents) and the Next.js, Rails or Python product around them.

Production. SurgePoint's AI receptionist books appointments through clinics' booking systems, and its calls are graded by Claude against a versioned rubric. pandOS routes every model call through a gateway with evals, budgets and fallbacks. Mentara answers from a hybrid RAG index by chat and by voice.

I measure it. Golden-set evals with exact, semantic and LLM-judge scorers, run in CI. Agreement rates between the AI grader and human reviewers. Acceptance sets built from the client's own past decisions, used to choose between models.

Next.js, React and TypeScript on the front end. Ruby on Rails (every version from 3 to 8.1), Node and Python behind it. PostgreSQL with pgvector, Redis, Sidekiq. Claude and OpenAI for models, LiveKit, Deepgram and Cartesia for voice. AWS, GCP Cloud Run, Vercel, Docker and Kamal for deploys.

Yes, every day. Claude Code does a lot of the typing now, and I've built plugins and agent setups for it. I still design the change, read every diff, write or check the tests, and I'm the one accountable when it runs in production.

That's a big part of my work. I carried Bounce Rental from Rails 4 to 7.1 in production, became the top committer on PadStats' existing Next.js front end, and joined Sera's Rails and Vue app that dates back to 2017.

Any of the three. I'm available 40 hours a week for a long-term role or contract, and take hourly or fixed-price work through Upwork. One client started me on a single feature and then handed me their whole MVP.

Lahore, Pakistan: PKT, UTC+5. I've worked with teams in Australia, the UK, Europe and the US, and I usually reply within 6 hours.

Almost everything I've built lives in clients' private repositories, so my public GitHub is thin. I'm happy to walk you through the architecture of any project on this page on a call.

Hiring for Rails, Next.js or AI work? Let’s talk.

Available now for a full-time role or a long-term contract, 40 hours a week, remote from Lahore, Pakistan (UTC+5). Email is fastest. I reply within 6 hours.

Farzam Azhar · Senior Full-Stack & AI Engineer · Lahore, Pakistan