Assessment platform
An exam platform the institute runs itself, from question bank to results.
Next.js · React · TypeScript · PostgreSQL · Prisma · Auth.js
Read the full storyA whole administration, out of paper and into one system
An administration system that replaced paper at a technical institute.
In 2023 a technical institute asked me for a system to run its daily administration. Everything was on paper: documents, attendance, records, the archive. Each sheet moved by hand between the director, the deputy, the general supervisors and the teachers, and when the one person who knew where it was happened to be away, the work stopped until it was found.
The problem was not a lack of computers. The work itself was built on paper changing hands. A document would be needed and nobody could say who had it. A record went into a cupboard and only the person who filed it could find it again. And each role saw its own part of the work and nothing else, so nobody held the full picture.
I did not start from the brief. I sat with each role on its own: the deputy, the supervisors, the teachers. I asked each one what they do in a day, which papers pass through their hands, and where each paper goes next. Then I built the system on that same movement: a document comes in, passes through the people it must pass through, and ends in an archive that can be searched. Permissions follow the institute's real chain of responsibility, not a ready-made split into admin and users.
The system went onto the institute's own machines, so its records stay inside the building. And before it was finished I put a working version in front of the staff, because the real risk was never the code. It was one question: would people who had spent years on paper actually use it?
Documents, attendance, records and the archive in one system. What was spread across drawers and cupboards is now one screen, opened by whoever has the right to.
A document passes through the same roles it used to pass through by hand: director, deputy, supervisors, teachers. The carrier changed. The path did not.
Permissions are built on the institute's real chain of responsibility. A supervisor sees what falls under them, a teacher sees what is theirs, and nobody opens the rest.
Every document and record can be reached by searching. Finding a paper no longer depends on the memory of whoever filed it.
The system is installed on the institute's own machines. Institutional records never leave the building and never pass through a server the institute does not own.
The desks. I sat with each role separately before writing a single line.
The director described the problem from the top: right, but incomplete. The people who know where the work actually gets stuck are the ones holding the paper every day: the deputy, the supervisors, the teachers. A system that fights their habits does not get used.
A slower start, and whole days of interviews before the first screen. The accounts did not always agree, so I had to go back and ask again.
The real chain. Every role in the system matches a real role in the institute.
An admin-and-users split means half the people see more than they should and the other half less than they need. In a real institution trust comes in degrees, and a system that ignores those degrees gets worked around fast: the paper gets printed and the old way comes back.
More roles meant more screens and more cases to build, and a change in the institute's structure needs a change in the system.
The institute's machines. The records stay inside the building.
These are institutional records: files, attendance, decisions. The institute wants to know exactly where they are and who can reach them. The only answer everyone accepts is: in this building, on these machines.
Installing and updating became my job, and every update is a session on their machines instead of one deployment to a server.
Show it early. A working version went in front of the staff before the system was complete.
The real risk in this project was never technical. The risk was delivering a correct system that people who had used paper for years would quietly ignore. The early version showed what no interview says: where they stop, what confuses them, which screen needs simplifying.
They saw an unfinished system, and I heard remarks about gaps I already knew about. Some of the changes they asked for undid work I had already built.
I sat with each role separately: the deputy, the supervisors, the teachers. I asked about an ordinary day, which papers pass through, who signs them and who files them. I came out with a map of how the work really moves, and it was not the description we started from.
I drew the system on the paper's own movement: who brings a document in, whom it passes through, where it comes to rest. Permissions were laid on the institute's chain of responsibility before any screen was drawn.
I built the system and put a working version in front of the staff before it was done. Watching them use it changed more details on the screens than in the structure, which is exactly what the early version was for.
I installed the system on the institute's machines and trained each role on its part: the director, the deputy, the supervisors, the teachers. Then the paper stopped.
Delivered in 2023, and the paper stopped. I installed it on the institute's machines and trained each role on its part. The director, the deputy, the supervisors and the teachers now work in one system, and a document is found by searching for it, not by asking after it.
Revenue and growth belong to the client. I do not publish numbers I did not measure myself.
An exam platform the institute runs itself, from question bank to results.
Next.js · React · TypeScript · PostgreSQL · Prisma · Auth.js
Read the full storyA marketplace where hiring and freelance work run on the same four steps.
Next.js · React · TypeScript · PostgreSQL · Prisma · Neon
Read the full storyAn idea, no technical co-founder, no obvious next step. That is the normal starting position.
Tell me about your idea