Case study · Systems
From paper trails to one source of truth
A summer software-development internship at NaserSalem Motors (Sohag, Egypt, Jun–Aug 2022): designing and shipping a Django + PostgreSQL sales-and-inventory system with role-based access for staff and management.

Fig. 01 — Paper order slips giving way to one orders table with role-scoped views.
02 — The problem
Orders on paper, inventory in heads
The dealership tracked sales and stock the way small businesses often do: paper records, personal spreadsheets, and institutional memory. Reports disagreed with reality, reconciling them ate management time, and nothing was visible in one place. The job: replace that with a single system the staff would actually prefer over the paper it retired.
Non-technical daily users — the system had to be simpler than the paper process it replaced.
Sales staff and management need different views — role-based access from day one.
One summer from first commit to daily use.
03 — Process
Model the business, then the screens
STEP 01 · Model
Orders, stock and customers in PostgreSQL
The schema mirrored how the dealership actually operates — orders, vehicles, stock movements, customers — so the database enforced the consistency the paper system never could.
STEP 02 · Build
Django workflows with role-based access
Sales staff record orders and check stock; management sees reporting and oversight. Django's auth and admin carried the roles, keeping the surface small enough to learn in a day.
STEP 03 · Prove
Reports management could trust
With entry, automated data checks and reporting in one system, order-report accuracy improved by roughly 30% — the reconciliation arguments simply stopped having material to argue about.
Fig. 02 — System detail figure coming soon (internal system; the numbers are from my internship record).
04 — Outcome
One system, fewer arguments
The dealership went from reconciling paper against memory to reading one screen. For me it was the first time a thing I built became somebody's daily tool — and the internship that made me care about roles, failure modes and the unglamorous parts of shipping software.
Next project