Full Stack Web Development (FSWD)

Master Full Stack Web Development by learning frontend, backend, databases, and deployment. Build real-world applications with modern technologies and best practices.

Roadmap

Build first, learn as needed


WEEK 1

Linux Essentials for Developers

What you’ll learn

  • Understand the basics of Linux and its command-line interface.
  • Navigate the file system and manage directories.
  • Perform essential file operations and permissions management.
  • Use basic shell commands for system administration.
  • Manage processes and monitor system performance.

Tools / Technologies

  • Linux
  • Oracle VirtualBox
  • Vagrant

Concepts / Engineering practice

  • Virtual machines
  • Hypervisor

Syllabus

  • Introduction to Linux and its file system structure
  • Navigating the command-line interface (CLI)
  • File and directory management commands
  • User permissions and access control
  • Process management and monitoring system performance
  • Networking essentials and package management
  • Working with environment variables and configuration files

WEEK 2

Streamline Collaboration with Version Control

What you’ll learn

  • Gain a clear understanding of the software development process.
  • Learn how to collaborate effectively in a team without conflicts.
  • Develop new features without breaking the main codebase.
  • Manage different versions of software efficiently

Tools / Technologies

  • Git
  • GitHub

Concepts / Engineering practice

  • Git Workflow
  • Semantic Versioning

Syllabus

  • Introduction to Software Development
  • Understand the core Concepts of Version Control and Distributed Version Control Systems (DVCS) (Git)
  • Creating a Git repository to manage the codebase and enable collaboration.
  • Creating branches to initiate a new line of development.

WEEK 3

Convert Ideas into Design

What you’ll learn

  • Plan and structure the user interface (UI) effectively.
  • Develop a Design System for a seamless and visually engaging user experience (UX).
  • Understand and implement the three key design stages: Wireframing, Mockups, and Prototyping.

Tools / Technologies

  • Figma

Concepts / Engineering practice

  • Design System
  • WCAG

Syllabus

  • Create Low-Fidelity Wireframes
  • Develop a Design System
  • Develop High-Fidelity Wireframes (Mockups)
  • Build Interactive Prototypes

WEEK 4, 5 & 6

Transform Designs into Functional Code

What you’ll learn

  • Understand coding standards and industry best practices.
  • Develop web documents for authentication and chat microservices using structural elements.
  • Apply styles to web documents for a polished user experience.
  • Create interactive web documents with dynamic behaviors.
  • Utilize Web APIs to enhance functionality and connectivity.

Tools / Technologies

  • HTTP
  • HTML
  • CSS
  • Bootstrap
  • JavaScript
  • JQuery
  • Nginx

Concepts / Engineering practice

  • Internet
  • DNS
  • Web
  • Web Document
  • Web Server
  • RegEx

Syllabus

  • Develop web documents using HTML.
  • Apply styles to web documents using CSS properties.
  • Utilize CSS frameworks to enhance web document styling.
  • Add interactivity to web documents using JavaScript.
  • Learn different coding styles in JavaScript.
  • Use DOM APIs to prototype chat messages.
  • Write and implement unit tests for code reliability.

WEEK 7

Structuring and Managing Data Efficiently

What you’ll learn

  • Understand Database Management Systems (DBMS).
  • Design a database schema for authentication and chat microservices.
  • Apply the normalization process to structure a database schema effectively.
  • Develop and implement database schemas.

Tools / Technologies

  • MySQL
  • MySQL Workbench
  • SQL

Concepts / Engineering practice

  • Normalization

Syllabus

  • Design a database schema.
  • Apply normalization for efficient data structuring.
  • Develop and implement database schemas.
  • Perform testing such as schema, CRUD, performance testing, etc.

WEEK 8, 9, 10, & 11

Building Scalable Backend Microservices

What you’ll learn

  • Understand backend development, including key components and software architecture.
  • Design software architecture diagrams using the C4 model.
  • Develop authentication and chat microservices.

Tools / Technologies

  • draw.io
  • Python or Java

Concepts / Engineering practice

  • UML / C4 Modal diagrams
  • Connection pooling
  • OOPs Concepts
  • JWT Tokens
  • The Twelve-Factor App
  • RegEx
  • REST
  • SOLID Principles

Syllabus

  • Build the foundational application structure.
  • Establish database connections and integrate with the application.
  • Configure and manage application settings effectively.
  • Manage routing and handle incoming requests.
  • Implement form validation for data accuracy and security.
  • Develop the authentication microservice for secure user access.
  • Build the chat microservice for real-time communication.