Amirhosein
Arabhaji

Backend software engineer

I work on the parts of a product you never see: data models, query paths, cache boundaries, permission rules. I like problems where the answer can be measured, and I would rather remove a layer than add one.

Portrait of Amirhosein Arabhaji
01

Projects

01 / Weather intelligence platform

Weather Fusion

A forecast is a claim, not a fact.

The problem

Every weather app is one provider's opinion presented as certainty. Ask three providers about tomorrow and you often get three answers, with no way to tell how much they actually disagree.

What it does

Fetches forecasts from several providers concurrently, then runs a consensus and confidence engine. Agreement raises confidence; divergence gets surfaced instead of hidden. An LLM layer turns the result into plain language.

Why I built it

I wanted the interesting work to be concurrency and data modelling rather than screens. Fan out to slow third-party APIs, keep the request path fast, and stay honest about uncertainty in the output.

Technologies
ServiceGo · Gin
PersistencePostgreSQL
CacheRedis
ClientNext.js · TypeScript

02 / Personal site

amirhosein.me

Small enough to keep changing.

What it is

The thing you are reading. A statically served single page on the Next.js App Router, with content kept in typed data and layout kept in components, so adding a project is an edit to one file.

Why I built it

A place to point people at that is mine rather than a profile page, and a small surface to keep my frontend sharp: metadata, sitemap and robots are generated at build time.

Technologies
FrameworkNext.js
LanguageTypeScript
StylingTailwind CSS
MotionFramer Motion
02

Experience

2021 – 2025

2024 – 2025

Tribes

Backend developer

Company site ↗

Remote and part-time, working across two clients with very different failure modes: a LegalTech platform where a document ending up in front of the wrong person is the whole risk, and a fundraising platform where a transaction getting double-counted is.

  • 01Built a secure document-handling backend for the LegalTech client in Django and DRF, with role-based access control designed into the data model so a permission check isn't something you can forget to add to a new view.
  • 02Developed a high-throughput transaction engine for the fundraising platform, using PostgreSQL schemas built to hold up under concurrent writes rather than just concurrent reads.
  • 03Went through a legacy client platform fixing the API bugs that were actually causing downtime, and cleaned up the backend paths those bugs kept coming back to.

2021 – 2025

Rentifa

Django developer
Chabok Gerayan

Company site ↗

Close to four years on one Django codebase, full-time until 2024 and part-time after, serving 10,000+ active users across multiple countries. Long enough to see which early decisions aged badly and to be the one fixing them.

  • 01Built out a multi-language database and API layer covering 5+ languages, so localized responses could be added without every new market turning into a special case.
  • 02Rewrote slow API endpoints: fewer queries, fewer joins, ORM calls that did less work per request. Response times dropped by about 40% on average.
  • 03Added multi-currency pricing and a multi-currency payment system for ads, plus object storage for media uploads, replacing what used to be handled ad hoc.
  • 04Reworked parts of the backend architecture, which brought a roughly 50% improvement in overall speed and stability, and shipped features like an SMS price-alert service that grew past 500 active subscribers and a vehicle comparison tool.

Education

2024 – 2026 (expected)

MSc Computer Science

University of Padova

2018 – 2022

BSc Computer Engineering

Shahrood University of Technology

03

Engineering

What I reach for, and what I use it for.

Backend

Where most of my time goes: request paths, domain logic, and the seams between services.

Python · Django
Go · Gin

Data

Schema design first, then indexes and query paths, then caching, in that order.

PostgreSQL
Redis

Frontend

Enough to ship a whole product myself, and to design APIs a client is happy to consume.

TypeScript
Next.js · React

Systems

Comfortable in a terminal on a real server, building, containerising and debugging what runs there.

Linux
Docker · Concurrency

Practice

The judgement part: what to build, what to measure, and what to leave alone.

API design
Backend architecture

Care about

Systems that stay correct under load, and permissions that stay correct under change.

Performance
Access control · RBAC

04

Now

updated Aug 2026

Building

Nothing shipping this week. most of my time is going into small personal projects between thesis work.

Studying

My MSc thesis, more than any single course right now.

Exploring

Distributed systems and system design, past what one course or project requires.

Away from the keyboard

The gym, a backlog of movies I'm behind on, and wandering around parts of my city I haven't seen yet.

05

Lab notes

One problem per note: what broke or puzzled me, what I measured, and what the answer turned out to be. Two or three paragraphs is a finished note. Not a blog, closer to a lab notebook that happens to be public.

06

About

Amirhosein Arabhaji, backend software engineer

I would rather understand a system than memorise a framework.

That is roughly how I ended up writing Go after years of Python: not because it was new, but because I wanted to see the concurrency I had been abstracting away. I am most useful on the parts of a system people avoid, like the schema everyone is afraid to change, or the endpoint that got slow for reasons nobody can explain.

Outside of that: long walks with a podcast, and a running argument with myself about whether the next side project should be smaller than the last one.

07

Contact

Open to backend roles and interesting problems

amirhosein.arabhaji@gmail.com
© 2026 Amirhosein ArabhajiNext.js · TypeScript · Tailwind · Framer MotionBack to top ↑