S.
Home
AboutProjects
Blog
LabGalleryContact
HomeProjectsBlogContact

© 2026 Shohjahon Rajabov. All rights reserved.

Blog

Writing

Notes on engineering, performance, and whatever else I'm building or thinking about.

8 posts
InfrastructureApril 18, 2026·2 min read

What three Telegram bots taught me about state

The anonymous chat bot worked perfectly on my laptop and fell apart the first time I ran two processes. Here is what I changed.

aiogramRedis
EngineeringFebruary 10, 2026·1 min read

The caching bug that made me stop trusting TTLs

A product price kept showing the old value after an update. TTL-only caching was the problem; tag-based invalidation was the fix I still use - including on this site.

RedisPython
EngineeringNovember 20, 2025·1 min read

Patterns I use with async SQLAlchemy 2.0

The repository pattern, dependency injection, and a few sharp edges from the async path.

PythonPostgreSQL
EngineeringSeptember 15, 2025·1 min read

How I structure large FastAPI projects

Routers, services, repositories, and the rules that keep a FastAPI codebase from becoming a mess as it grows.

PythonFastAPI
EngineeringNovember 6, 2024·2 min read

The aiogram 3 template I reach for on every new bot

After scaffolding the same Telegram bot three times from scratch, I stopped and turned it into a template: feature routers, FSM flows, middleware, and a Docker setup that just runs.

aiogramPythonDocker
SecurityJuly 31, 2024·3 min read

JWT auth in FastAPI: access, refresh, and the parts tutorials skip

Most FastAPI JWT tutorials stop at 'here is a token.' The parts that actually matter show up later: refresh rotation, HTTP-only cookies, and how to log someone out.

FastAPISecurityJWT
EngineeringMay 23, 2024·2 min read

What a college management system taught me about data modeling

Students, teachers, courses, grades, attendance. It sounds like a beginner CRUD app until you actually model it - and the join tables turn out to be where all the real decisions hide.

DjangoPostgreSQL
EngineeringFebruary 10, 2024·2 min read

Django's admin is underrated: turning it into a real back office

For internal tools I rarely build a custom dashboard first. A properly customized Django admin gets a working back office in an afternoon - here is how far I push it before reaching for anything else.

DjangoPython