One system for a concrete plant
An ERP that runs sales, cash, logistics, the lab, stock, HR and accounting for a ready-mix concrete producer, with a driver app and a live link to the batching plant.
- Client
- Hadid Beton
- Year
- 2025 to now
- Type
- ERP & CRM, Mobile apps
- Role
- Head of IT: discovery, architecture, design, engineering, deployment


Overview
Hadid Beton produces and delivers ready-mix concrete. As Head of IT I designed and built the ERP the whole company runs on: orders and clients, the cash desk and bank, mixer and pump logistics, the laboratory, raw-material stock, HR and payroll, and accounting. Drivers use a Flutter app, and management reads the numbers without asking anyone to compile them.
The problem
Concrete is sold by the cubic metre, mixed to a recipe and delivered within hours. When orders, batches, deliveries and payments sit in different notebooks and spreadsheets, nobody can say what a delivery earned, which client owes what, or where fuel and material went.
The challenge
Every department has its own vocabulary, and all of them write to one set of books. Money has to be exact, the batching plant's software can't be changed, and people in the yard work from a phone between deliveries.
My role
- Mapped each department's process with management and turned it into modules and rules
- Designed the data model, accounting rules and REST API
- Built the Django backend and the React web app
- Built the Flutter driver app with GPS and maps
- Wrote a read-only agent that syncs finished batches from the plant's batching computer
- Deployed and maintain the servers and backups
- Wrote the 156-screen user manual
Approach
Departments as modules, one set of books
Sales, cash, logistics, lab, stock, HR and accounting are separate modules with clear ownership. They share one database, so an order already knows its batches, its deliveries and the payments against it.
Read the plant, don't replace it
The batching plant keeps its own software. A small agent reads finished batches from its database and posts them to the ERP, so production figures arrive without anyone retyping them.
Proof the client can check
Every lab test gets a public QR certificate. A client scans the delivery note and sees the grade, the volume and the lab's notes for their own order.
Key features
- Orders, contracts and client balances
- Cash desk, bank reconciliation and chart of accounts
- Mixer and pump logistics with per-trip pay
- Lab tests, mix recipes and public QR certificates
- Raw-material stock and supplier balances
- Fixed assets and depreciation
- HR, vacancies and payroll
- Excel report builder
Architecture & technologies
- Django
- Django REST Framework
- Channels
- PostgreSQL
- Redis
- React
- Flutter
- Python
Design & UX
- Each department gets its own menu in its own terms, over one data model
- Uzbek Cyrillic interface, matching how staff write
- Driver app with the delivery address on a map and GPS tracking
Outcomes
- The whole company, from the yard to accounting, works in one system
- Production figures arrive from the plant automatically instead of by hand
- Management reads profit, debts and volumes on one dashboard, month by month