Chapters of From Frontend to Full-Stack Backend

Week 4 - Capstone + NestJS + System Design + DrillChapter 22 of 282 min read

Capstone begins - requirements and schema on paper, before code

Picking one of three options, feature lists, database schema design, API lists

From today, the final week - and this final week's result is what will go into your portfolio and be told as a story in interviews. But let me start with a warning: good developers pick up paper before they open code. If requirements stay unclear, you end up rewriting three times while writing code - and that rushed project never finishes.

The first job - picking one option and writing it down

Three capstone options are given above this page - a Khabar Dhandha order backend, a job board API, a real-time chat backend. Whichever you take, today write these three things on paper or in a note:

  • Who the users are - divided by role (like customer and admin, or recruiter and applicant)
  • The feature list - what each role can do, one line each
  • The database schema - which tables/collections, their relationships, embed or reference
// Example: a draft schema for Khabar Dhandha
users     (id, name, phone, passwordHash, role)
menus     (id, name, price, photoUrl, category, isAvailable)
orders    (id, userId, status, total, zone, address, createdAt)
orderItems(orderId, menuId, nameSnapshot, priceSnapshot, qty)
zones     (id, name, deliveryCharge)

After that, make the API list - method + URL + for whom. That list is the map for the next two days of work. Do not ask for all features at once - first make a minimum list that finishes the main journey (for Khabar Dhandha: seeing the menu, placing an order, changing status), extra features later. A finished small project is better in every way than an unfinished big project.

The mistake everyone makes

Jumping straight into code. Two days later it turns out the core decision in the schema was wrong - then all the written code has to be thrown away. One hour of thinking on paper saves two days of rewriting. Another mistake: trying to grab all features on day one - in the end none of them becomes complete.

Today's practice

Pick your chosen capstone and write three things on paper - the role and feature list, the database schema, the API list. Then mark the main journey separately - only that much is the goal this week.

How to say it in an interview

Test yourself: 'Before starting any project, I arrange requirements, roles, schema and the API list on paper. That way the decisions get tested before writing code, and the work stays within a measured boundary - what comes first, what comes later, it stays clear.'

All chapters of From Frontend to Full-Stack Backend