svc/backend·Tehran, IR· UTC+3:30

MohammadReza Karimi

Python Backend Developer APIs · Automation · Data pipelines

I design and ship the parts of a product nobody sees: REST APIs, task queues, scrapers and bots that keep running long after launch. Django and DRF on PostgreSQL, Redis and Celery behind them, Linux underneath.

projects_shipped
0
years_experience
0
client_rating
0/10
system map live
python · django · postgres · redis · celery
scroll

02 / request trace

The stack, as a request sees it

Skill lists tell you nothing. This is one authenticated GET walking my usual production path. Pick a hop to see what I actually run there.

GET /api/v1/tickets/?status=open&page=1 200 · 49ms · illustrative
9 hops · cache miss path · p50 shown

03 / architecture

Five layers I own end to end

Every service I build stacks the same way. Hover a layer to lift it out.

04 / projects

Shipped, running, public

Four I keep pointing people at. Source is open on all of them.

05 / about

Who's behind the API

about.py python 3.12
class Developer:
    name = "MohammadReza Karimi"
    role = "Python Backend Developer"
    experience_years = 3
    focus = ["Django", "DRF", "Automation"]

    def what_i_do(self):
        return (
            "I build REST APIs with DRF, ship "
            "Telegram bots, write scrapers that "
            "don't break, and automate the "
            "boring parts of the business."
        )

What that means in practice

Comfortable owning a service from schema to deploy: migrations, queues, caching, logs, and the boring reliability work in between.

06 / signals

Open source & numbers

Published packages, public repos, and how I spend a build week.

published package

pyeitaa

A developer-friendly Python client for the Eitaa messaging platform. On PyPI, source on GitHub.

pip install pyeitaa
workload profile
at a glance

07 / contact

Let's build something

Fastest route is Telegram. The form lands in my inbox either way.

POST/contact application/json