DEV Community

Raju
Raju

Posted on

Learning in Public: Building a Pizza Delivery App with MERN and Microservices

For a long time, I was searching for more than just tutorials — I wanted to learn how to think like a software engineer.

Despite completing my Master’s in Software Engineering, I recognized a gap in consistently applying concepts to build scalable, real-world systems.

Like many developers, I found myself jumping between resources, without building anything substantial end-to-end.

So, a week ago, I made a deliberate decision to change that.

I committed to a structured learning path through Coder’s Gyan by Rakesh Kohali and started building a Pizza Delivery Application from scratch using the MERN stack — with a focus on real-world implementation and engineering best practices.

🔧 What I’ve worked on this week:

Instead of just following tutorials, I focused on building with intent and making engineering decisions:

• 🏗️ Designed a microservices-based architecture for scalability
• ⚙️ Set up a Node.js backend with TypeScript for maintainability
• ✨ Enforced code quality using ESLint and Prettier
• 🔄 Automated workflows with Git hooks (Husky)
• 🧩 Structured an Express.js application with proper configuration
• 📊 Implemented centralized logging (Winston) and robust error handling
• 🧪 Applied Test-Driven Development (TDD) to guide feature development
• ✅ Wrote automated tests using Jest and Supertest
• 🐳 Containerized services using Docker (Node.js + PostgreSQL)
• 🔐 Designed and built an Authentication Service using TDD
• 🔑 Implemented secure JWT-based authentication for user management
• 📡 Tested APIs using Insomnia

💡 Key takeaway:

Understanding concepts is not enough —
real growth happens when you design, build, and justify your decisions.

🎯 I’m currently focused on becoming a Backend Engineer, specializing in Node.js and microservices architecture.

Going forward, I’ll be sharing:

  • 🧠 How I’m building each component
  • 🚧 The challenges I face
  • ⚖️ The decisions I make and why

Building in public, one step at a time 🚀

📊 Tracking my coding progress:
For those interested in my daily commitment, here’s my WakaTime dashboard showing hours coded and projects worked on — WakaTime Profile

Top comments (0)