Ahmed Rami Borni
Founding engineer and engineering lead for AI products. I took Sendler.ai's AI platform from first commit to $240K ARR in two months.
8+ years of full-stack work, the last three with LLMs, agents, RAG and MCP in production. Technical point of contact for enterprise teams at Sony Sweden and Revolut.
Open to roles in Qatar, remote or relocation · Doha, UTC+3
Scroll to walk. Tap or click the ground to wander, or use W A S D.

Selected work
Three systems I built or led, newest first. Each case study goes into the architecture and the decisions behind it.
Sendler.ai
Founding Engineer & Engineering Lead · Aug 2024 – Aug 2026
- ARR within two months of launch
- $240K
- ARR within two months of launch
- automated actions per day
- 1M+
- automated actions per day
- automations per day through an in-house queue
- 200K+
- automations per day through an in-house queue
- engineers led and mentored
- 5
- engineers led and mentored
AI outreach and sales automation: a platform built from the first commit to $240K ARR in two months, running 1M+ automated actions a day.
Queues first, Temporal when the sequences grew
Automation started on BullMQ and Redis. As volume passed a million actions a day and campaigns became multi-step sequences, I led the move to Temporal so every run is durable, retryable and observable instead of state scattered across job handlers.
One provider layer, not one SDK per model
LLM-personalised messages, reply classification and agentic workflows all go through one provider layer across OpenAI, Anthropic Claude and Azure OpenAI, so a model can be swapped without touching product code.
Build the queue in-house
For the sales-workflow automation I designed a Python queue system that scaled processing to more than 200,000 automations a day, behind FastAPI and Express services with Prisma on MySQL.
Move clouds without stopping customers
The platform ran on AWS (EC2, RDS, Aurora, S3, Lambda, SQS). I planned and led its migration to Azure Functions and Service Bus while customers kept running.
Open the product to AI assistants
An MCP server exposes platform tools to AI assistants, so users can run campaigns, search leads and manage conversations in natural language, alongside a public REST API, webhooks and n8n integrations.
Meter usage per account
Credit-based usage metering and per-account rate limits keep LLM costs predictable and protect customers' accounts.
- Next.js apptoNestJS services
- MCP servertoNestJS services
- Public APItoNestJS services
- NestJS servicestoMongoDB
- NestJS servicestoTemporal
- TemporaltoWorkers
- WorkerstoLLM layer
- NestJS servicesto.NET AI service
- .NET AI servicetoLLM layer
Infokanal
Senior Automation Engineer, contract · Apr 2023 – Jul 2024
- months running and evolving the pipeline
- 15
- months running and evolving the pipeline
An AI pipeline that monitors Norwegian news, with editors approving every output before it is used.
Replace manual monitoring with a pipeline
FastAPI services ingest X, police and government press channels and national news outlets in batch and streaming modes, then clean, validate and store everything in MongoDB.
Retrieval and memory for Norwegian news
An LLM layer with RAG and memory management summarises, translates and categorises each item with the context of what came before.
A human approves every output
Editors review, edit, approve or reject each AI output on a role-based review platform, with new items and review status pushed to them live over Socket.io.
Evolve with the newsroom
Over 15 months I kept the crawlers working as sources changed and introduced new AI strategies based on editors' feedback.
- SourcestoIngestion
- IngestiontoLLM + RAG
- IngestiontoMongoDB
- MongoDBtoLLM + RAGcontext
- LLM + RAGtoHuman review
- EditorstoHuman reviewapprove · edit · reject
- Human reviewtoPublish
Logikey
Software Engineer, contract · Apr 2022 – Feb 2023
A logistics app for truck drivers, rebuilt in Next.js with full Arabic RTL and a new NestJS back end.
Rebuild the front end in Next.js and TypeScript
I migrated the JavaScript React app to Next.js with TypeScript and full Arabic RTL support, with Redux Toolkit for state and Jest for unit tests.
Replace Firebase with a dedicated back end
A NestJS service exposes REST and GraphQL APIs over a new data model on Prisma and PostgreSQL, plus DynamoDB and S3.
Integrate government and identity services
Vehicle lookup and number identification from government services, plus KYC identity verification.
- Next.js apptoNestJS API
- NestJS APItoPostgreSQL
- NestJS APItoDynamoDB + S3
- NestJS APItoGov + KYC APIs
- FirebasetoNestJS APImigrated
Experience
8+ years, from intern to engineering lead
- 2024–26Sendler.aiFounding Engineer & Engineering Lead · SwedenSenior engineer, then built its AI platform from the first commit and led a team of five.Sweden
- 2023–24InfokanalSenior Automation Engineer · NorwayAI news pipeline with RAG and human review.Norway
- 2022–23LogikeySoftware Engineer · Umm al-FahmNext.js and RTL rebuild; Firebase to NestJS.Umm al-Fahm
- 2021–22AB TechJunior Software Engineer · BiskraWeb apps, APIs and RTL dashboards for agency clients.Biskra
- 2020–21NB InfoJunior Software Engineer · BiskraStudent management and attendance software in C#/.NET.Biskra
- 2018–20Vesceranet EURLIntern, then Junior Engineer · AlgeriaStarted with C# and ASP.NET Core; promoted to junior.Algeria
Skills
What I build with, day to day
- AI & LLMs
- Agents & tool calling · OpenAI API · Anthropic Claude API · Model Context Protocol · RAG & embeddings · LangChain · Azure OpenAI · Human-in-the-loop review · Vector search: Pinecone, Azure AI Search · Gemini API · Voiceflow, Botpress
- Frontend
- TypeScript · React · Next.js (App Router, SSR/SSG) · Tailwind CSS · shadcn/ui · TanStack Query · Zustand · Arabic RTL interfaces · Redux Toolkit · Accessibility (WCAG 2.1 AA) · Flutter & Dart
- Backend
- Node.js · NestJS · REST APIs & OpenAPI · Python & FastAPI · WebSockets & Socket.io · Express · C# & ASP.NET Core · GraphQL · PHP
- Architecture
- Multi-tenant SaaS · Queues & background jobs · Temporal workflows · Event-driven systems · System design & architecture docs · Microservices
- Data
- MongoDB & Mongoose · PostgreSQL · Redis · Prisma · MySQL · SQL Server · Azure Cosmos DB · DynamoDB
- Cloud & DevOps
- Azure: AKS, Container Apps, Functions, Service Bus · Docker · Vercel · AWS: EC2, S3, RDS, Lambda, SQS · GitHub Actions & Azure DevOps · Sentry & PostHog · Kubernetes · Terraform
- Testing & Security
- Vitest & Jest · Playwright · Role-based access control · Cypress · OAuth 2.0, OIDC & JWT · OWASP Top 10 practices

AI in the product, and in the workflow
LLM features, RAG pipelines, agents with tool calling and MCP servers, shipped with the guardrails, human review and cost controls production needs. Claude Code, Cursor and Copilot draft a lot of my code; every generated line is reviewed and tested before it ships.
I work remotely with product teams in Sweden, Norway, Palestine and Algeria, from Doha. I'm most useful where product and platform meet: founding-engineer work, turning queues into durable workflows, and turning customer conversations into a spec and then a release.
- Based in
- Doha, Qatar
- Experience
- 8+ years, 3+ senior and lead
- Languages
- Arabic, native · English, full professional
Beyond the code
- Mentor to junior engineers and students ·
- Speaker at tech meetups ·
- Independent AI & technology advisor ·
- Hackathons and student tech clubs ·
- Azure Developer Associate (AZ-204)
Let's talk
Doha, Qatar · Doha
I'm open to new roles in Qatar, remote or relocation. Tell me what you're building and where I'd fit.
borniahmedrami@gmail.com