Mohamadhosein Moazennia

About

Senior software engineer in Tehran. I work mostly in Go, Python, and TypeScript, and I take features from design doc to production.

Now: LLM features at a large online marketplace

Since 2026 I have built LLM features into a Go modular monolith with 12 bounded contexts.

  • Reply suggestions for buyer and seller chat. Each category has a pool of messages; an LLM re-ranks them against the live conversation and returns the top five. A kill switch turns it off, and the chat keeps working when the model fails.
  • An LLM judge for reported conversations, with a review lifecycle and versioned Kafka events for the services downstream.
  • An evaluation harness in Go: labeled cases, A/B prompt arms, and LLM-as-judge scoring. I took the moderation prompt through more than ten measured versions with it.
  • A type-safe Go SDK for the company’s internal AI platform.

I deliver in small, stacked merge requests: more than 20 were merged in my first month. The stack is Echo, PostgreSQL with PostGIS, Redis, ClickHouse, and Kafka.

2024 to 2026: technical lead, a national video ad network

For a year and a half I owned the architecture, code review, and delivery of a programmatic video ad platform: a Django core, four React apps, and a Go reporting service. It covers campaigns, video processing, invoicing, a payment gateway, and financial reports. I merged more than 1,000 merge requests across 11 repositories.

I also built a shared React design system (three npm packages, published from CI), moved the builds from webpack to Vite, Yarn to pnpm, and Pipenv to uv, added CI quality gates, and wrote an internal tool on the Claude Agent SDK.

2019 to 2024: backend engineer

  • Miare (2023 to 2024), last-mile delivery. Go and Django services. I cut database connections, made responses 5% faster, added caching and tests, and took on-call shifts.
  • Balad (2022 to 2023), maps and navigation. Django services on Docker and Kubernetes, and the team’s API guidelines.
  • Tetherland (2021 to 2022), a crypto exchange with 300K+ users and 2M+ transactions. I made the codebase 10% smaller and database access 10 to 15% faster.
  • Hamyar Koosha (2019 to 2021). I led the first version of the product.

Skills

I write Go, TypeScript, Python, SQL, and some Swift. On the backend I use Echo, Django and DRF, FastAPI, Hono, and Bun, with PostgreSQL, Redis, ClickHouse, Elasticsearch, and Kafka. On the frontend I use React, Next.js, Svelte, Astro, and Expo. I ship with Docker, Kubernetes, and CI, and I watch production with Grafana, Prometheus, and Sentry.

For AI work I build production LLM features, LLM-as-judge evaluations, embeddings and retrieval, and agents with the Claude Agent SDK and MCP. My English is at full professional level.

How I work

  • I write a short design doc first, then ship the change as small, reviewable steps.
  • I measure LLM features against labeled cases before they reach users.
  • I work well asynchronously: clear written updates, and decisions on record.
  • I use coding agents every day, and I build my own tools for them.

On my own

I design, build, and launch my own products. Razmak is a real-time strategy game in the browser, playable at razmk.ir. KardoBot is a private AI assistant for small businesses.

Contact

My CV is available on request. Email me at hello@moazennia.ir, or find me on LinkedIn.

Let's talk

Email me about a project, a problem, or an idea: hello@moazennia.ir. I read every message myself and reply. My CV is available on request.