I build AI agents
and fast frontends.
I'm Abdullah Raheel, a senior software engineer at Covent, where I lead a team of three and build our AI agents. Before that, Metal (YC W23).
- React
- Next.js
- TypeScript
- Go
- Django
- PostgreSQL
Sam buys.
Alex sells.
Nora coordinates.
Polaris is the AI agent platform I lead for a real-estate investment company that buys houses below market and resells the contracts to cash investors. Three agents run that loop over SMS, email and Slack, and people make the money decisions.
- SamFinds and negotiates the houses. He texts listing agents and owners, files the lead, and emails the offer once a person sets the price.
- AlexSells each deal to cash investors, opening with the buyer's own recent purchase nearby. Live in production since September.
- NoraTurns accepted offers into signed contracts and closings. She handles e-signature, escrow, inspection and every date to closing, by email only.
Every message is checked before it sends.
I lead the build and own the backend (Django, PostgreSQL, Celery and Redis on AWS) and the Next.js operator app.
- 20K
- messages a day through Polaris today
- 100K
- messages a day expected as it grows
- GoHighLevel, end to endAccount installs, sending, delivery reconciliation, history import and the live operator inbox.
- Send-time rulesFail-closed checks in code run before a message leaves, so the AI cannot talk its way past them. Each agent has its own phone lines and AI key, and can never text another agent's number.
- Slack approvalsThe team approves offers in Slack threads. A deterministic parser with verified signatures records each reply exactly once; the AI reads only what is unclear.
- Replay harnessReal past conversations run through an agent inside database transactions that always roll back, with every outside host blocked, so nothing is ever sent.
- Review loopA written brief of every writer and failure case, then a builder, an independent reviewer, a separate fixer and a fresh review. Race tests across real database connections, and tests pinned to a fixed clock.
Every inbound text lands.
GoHighLevel delivered only 49% of its message webhooks to us, so half of what sellers and buyers texted never reached the agents. I rebuilt intake as a serverless pipeline, and delivery rose to 99.8% within three days.
- 99.8%
- of webhooks delivered, up from 49%
- 73K
- messages stored in the first four weeks
- Serverless intakeAPI Gateway hands each webhook to a Lambda that checks its signature and queues it in SQS. Large bodies go to S3.
- Nothing droppedAn event leaves the queue only after its record is saved. Failures retry five times, then wait two weeks in a dead-letter queue.
- No duplicatesRetries collapse on the event id, so a delivery never creates a second message.
Covent MCP, written in Go.
I proposed it and led it to production. Claude, ChatGPT, Codex and Cursor can now read Covent's data, safely.
- 23
- read-only tools for AI clients
- AccessOAuth 2.0 with PKCE, access bound to each tenant, and credit limits on every call.
- DeliveryDocker images to EC2 with backups, migrations, staged health checks and rollback.
- Covent CodexA self-updating Go CLI that syncs our AI agent instructions across repositories, with checksums and a diff before every sync.
A new frontend, zero downtime.
I moved Covent from Create React App to Next.js while customers kept working in it every day.
- 170
- locations moved over without an outage
- 765
- people working in it at the same time
- 40%
- less first-load JavaScript on our heaviest page
- 320K+
- calls a month through the dialer I built for it
- Real-time inboxVirtualized threads, reconnecting WebSockets, and optimistic SMS and email with retry and rollback.
- Sign-in, rebuiltXState flows, one token refresh at a time, OTP, Google and GoHighLevel sign-in, synced across tabs.
- SpotlightA Mac-style search I designed, now a shared package that Inbox and Prospecting both use.
- Safe releasesCI gates that skipped tests cannot pass, Sentry with private source maps, LaunchDarkly flags, and versioned production deploys from GitHub Actions.
Search a city by drawing on it.
I rebuilt Investor Prospecting on Mapbox WebGL with live property data. Search by place, by pin, or by a shape you draw, then message the buyers you find.
- 10,000
- properties held on the map at once, oldest dropped first
- 96%
- fewer AI calls, because a message is written only for a buyer you pick
- $700
- a month in AI spend after that change, down from $9,000
- 100K+
- deals a month sent through SendFlow, the campaign system I built
- Prospecting Insights APIPrice histograms, top-investor rankings and window queries in Django and PostgreSQL, typed through to the frontend.
- Only the latest search landsPan fast and older requests are cancelled, so the map never shows stale results.
Before Covent.
- 2024 to 2025
Metal (YC W23)Fullstack Engineer
An AI fundraising startup backed by Y Combinator and a16z. I shipped the DataOps portal in 20 days, built a versioned pipeline for 2M+ records that cut upstream errors by 80%, and ran Frontend 101 sessions for our backend engineers.
- Next.js
- React
- TypeScript
- Redis
“Raheel built all this in just 20 days, starting from zero context on day one.”
Salar Khan, staff engineer at Metal - 2023 to 2024
Bleed AISoftware Engineer
I built UpAutomate, which scores Upwork jobs with an LLM, and took it to 150 trial users. Client apps I shipped in React and Next.js brought in $35K a month. My first production backend was FastAPI on Google Cloud.
- React
- Next.js
- Python
- FastAPI
- Docker
- Google Cloud
- 2022 to 2023
Workforce SoftwareSoftware Engineer
Time and attendance systems for Canon, Ornge and National Gypsum. I also built a Next.js tool that cut Jira comment time by 30%.
- Next.js
- React
On my own
Daftar
A Go app that keeps my projects and career records as typed data, with server-rendered dashboards.
Khana
A nutrition tracker that estimates weekly fat loss from my TDEE. In progress.
Nethergate
Boots a Minecraft server in Go. It resolves Mojang releases, streams the download and checks its SHA-1. In progress.