aslamjon.uz

Frontend / Full Stack Engineer · Samarkand, Uzbekistan

I build products that keep working when the internet doesn't.

5+ years with React, TypeScript, NestJS and PostgreSQL. Most recently on an ELD compliance SaaS for US trucking companies; before that CTO and sole engineer on a point-of-sale product used by small shops, and frontend team lead on large ERP and LMS platforms.

Career receipt
ASLAMJON IBRAGIMOV
Years shipping software5+
Shops that ran on my POS8+
Sales transactions / month19,000+
Products in catalog30,000+
Frontend engineers led5
People using my side projects1,700+
ASLAMJON.UZOnline

Selected work

Products and systems I designed and built end to end.

CTO & Software Engineer · Xaridor2024 — 2026

A point-of-sale system that doesn't stop when the connection does

Problem

Small grocery shops lose sales every time the internet drops — and in their neighbourhoods, it drops often.

What I built

An offline-first desktop app in Electron.js and React that keeps checkout running with no connection and syncs automatically when it returns — plus the NestJS/PostgreSQL backend behind it and the Linux server it runs on. I built the product on my own, end to end.

Where it stands

Reached 8+ paying businesses, 19,000+ transactions a month and a 30,000+ product catalog.

Electron.jsReactTypeScriptNestJSPostgreSQLPrismaLinuxnginx
Frontend Team Lead · PDP2021 — 2024

A data grid the ERP was built around

Problem

Teams needed to edit thousands of ERP records without ever leaving the table — and every department wanted different columns.

What I built

A fully dynamic editable grid: row virtualization for thousands of rows, inline editing with rich field types (select, datepicker, rating, emoji), columns added, hidden or removed at runtime, and auto-save. Plus the modular architecture of the ERP frontend around it.

Where it stands

Adopted as a core building block across the ERP. Led a 5-person frontend team.

ReactReduxTypeScriptAnt Design
Frontend Engineer · ISM (Dubai, remote)2025 — 2026

Writing a chart engine from scratch when no library could do the job

Problem

The hours-of-service log is the main screen of an ELD system — a US truck driver’s 24-hour day drawn as a connected step line across four duty statuses, with violations, breaks and running totals on top. It carries legal weight, so it has to be exact. Recharts and Chart.js could not support the interaction the design called for: hovering a segment had to highlight that exact time range, place tooltips on both of its edges, and update the duty-hour total below.

What I built

A framework-agnostic TypeScript class that generates the entire SVG itself. It takes the API data, a timezone and a hover callback, then does the rest: mapping time to coordinates, connecting status segments, placing labels so they never collide, and rendering. Building it in React would have cost performance and control, so it deliberately depends on nothing. I also built the admin and superadmin panels, fleet-monitoring dashboards fed by in-truck IOSiX devices, a Gemini-powered assistant that explains engine error codes to dispatchers, and a maintenance scheduler.

Where it stands

The Flutter mobile team tried to draw the same chart natively, could not implement the full design, and ended up loading mine in a WebView — it is still running in production, on the screen every driver and dispatcher opens daily.

TypeScriptSVGReactMUIGemini API
Side projectSmart Flashcard

A spaced-repetition scheduler I designed before I knew the name for it

Problem

I learned English words in a notebook and forgot them — I could recite a list in order, but shuffle it and I was lost. Paper flashcards fixed the order problem and let me study anywhere, but created a worse one: the words I already knew kept coming back as often as the ones I did not, and once the stack grew, scheduling them by hand became impossible.

What I built

A scheduler that measures a word’s position in repetitions, not in calendar days. Each finished batch raises the learner’s counter by one; answering “I know this” pushes a word three repetitions further out, “I don’t” pulls it three closer, and every word whose counter falls behind the learner’s comes back. Because nothing is tied to a date, the whole timezone problem disappears — a person studying at 3 a.m. across a date boundary gets exactly the right words. Around it: US pronunciation audio cached on the server and fetched only when missing, a curated 4,000+ word dataset with images and example sentences, shared decks so learners never re-type words someone has already added, and a leaderboard with progress nudges to keep people coming back. It runs as a Telegram bot and a web app.

Where it stands

It is public and running, with no marketing behind it — I built it for my own problem and left it open in case someone else had the same one. The first scheduler is deliberately simple, and I now know where it falls short, so I am rebuilding it on NestJS and PostgreSQL with a stronger model and a Telegram Mini App sharing a single frontend codebase with the web version.

Node.jsExpressMongoDBReactTelegram Bot APINestJSPostgreSQL
card.aslamjon.uz
Side projectTicket UZ

Catching train tickets the moment they come back

Tickets sell out, then quietly reappear — someone cancels, or the railway adds a wagon. Almost nobody is watching at that moment. This bot watches, and tells you instantly. 1,700+ people use it, and the number keeps growing on its own.

Node.jsTelegram Bot APIPostgreSQL
@ticket_uz_bot

Also built

Smaller builds and client work — happy to go into any of them.

  • metalmart.uzBackend and admin panel for an online metal-products marketplace — catalog and order management.
  • Construction workflow desktop appDesktop tool for construction development companies, bringing transparency and forecasting into their workflow.

What I work with

Strongest on the frontend, comfortable owning the rest of the stack down to the server.

Frontend

  • React
  • TypeScript
  • Redux
  • MUI · Ant Design
  • Responsive UI

Backend

  • Node.js
  • NestJS · Express
  • PostgreSQL · MongoDB
  • Prisma
  • REST APIs

Desktop & bots

  • Electron.js
  • Offline-first sync
  • Telegram Bot API
  • Gemini API

Infrastructure

  • Linux (Ubuntu)
  • nginx
  • VPS administration
  • Git

A bit about me

I started at PDP Academy in Tashkent, joined the company that taught me, and grew from junior developer to leading a five-person frontend team on ERP and LMS platforms.

For two years I ran the engineering side of a POS product of my own — interface, API, database, server. Building something end to end, with real shops depending on it daily, is where I learned the parts of engineering that a frontend role alone never teaches you.

I am open to frontend and full stack roles — remote, hybrid, or on-site in Tashkent.