Full-Stack Development Handbook
This document defines how we build, collaborate, and ship software.
1οΈβ£ Development Philosophy
Agile & Fast-to-Market
We do not build software in isolation for months. We build small, test fast, and improve continuously. The goal is not perfection β the goal is progress.
Delivering early allows:
- Real user feedback
- Reduced wasted effort
- Faster learning cycles
- Better product-market alignment
Minimum Viable Product (MVP)
An MVP is the simplest version of a feature that delivers value. It is NOT incomplete software β it is minimal but functional software.
- Is this solving the core problem?
- Can this be simplified further?
- Are we over-engineering?
- Can we ship this within the sprint?
Overengineering slows teams down. As an intern, your job is to learn how to balance quality and speed.
2οΈβ£ Version Control & Collaboration
Why Git is Mandatory
Git is not just for saving code. It enables:
- Tracking history
- Safe collaboration
- Code review workflows
- Rollback to stable versions
Branch Architecture
We follow structured branch separation:
- main β Production-ready code only
- current β QA testing branch
- dev β Active development
main is strictly prohibited.
Branch Naming Convention
Branches must describe what they contain:
feat/321-add-user-authentication bugfix/412-fix-login-validation hotfix/501-fix-production-crash wip/601-refactor-dashboard-layout
Commit Standards
Each commit must explain what was done AND why.
Format: <Action performed>, resolves #<issue-number> Example: Add JWT authentication middleware, resolves #321
Pull Request Workflow
- Create branch from
dev - Make small, clean commits
- Push branch
- Create PR β target
dev - Request review
- Address review comments
- Merge only after approval
PR reviews are not criticism β they are collaborative improvement.
3οΈβ£ Frontend Engineering Roadmap
Phase 1: React Fundamentals
You will build a Todo Application from scratch. This teaches state management, component architecture, and CRUD logic.
- Components & Props
- useState & useEffect
- Event handling
- API calls
- Folder structure best practices
Phase 2: Next.js + TypeScript
Next.js introduces production-level structure including:
- App Router
- Server vs Client components
- API routes
- Authentication flow
- Environment variables
Phase 3: Figma to Production
You will learn how to convert design files into pixel-perfect responsive applications.
- Reading design systems
- Spacing & layout principles
- Responsive breakpoints
- Clean reusable components
4οΈβ£ Backend Engineering Roadmap
Phase 1: Python Core
Before building APIs, you must understand Python fundamentals, OOP, and project structure.
Phase 2: FastAPI
FastAPI is used for building high-performance APIs.
- Routing
- Pydantic validation
- Dependency injection
- JWT authentication
- Database integration
Backend Architecture
We follow structured architecture:
- Controllers β Handle requests
- Services β Business logic
- Repositories β Database interaction
5οΈβ£ Docker & DevOps
Why Docker Matters
Docker ensures that your application runs the same way on your laptop, staging server, and production server.
Core Concepts
- Images
- Containers
- Dockerfile
- docker-compose
- Environment variables
docker build -t app . docker run -p 8000:8000 app docker-compose up --build
Every backend service must be dockerized before deployment.
π Learning Resources & References
πΉ Git & Version Control
πΉ React
πΉ Next.js & TypeScript
πΉ Figma & CSS
πΉ Python
πΉ FastAPI
πΉ Docker
6οΈβ£ Engineering Standards
- Write clean, readable code
- No console logs in production
- Follow naming conventions
- Self-review before PR
- Ask when stuck β donβt silently struggle