Skip to content

frankstepanski/js-fullstack-course

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

267 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👋 Welcome to Full-Stack Software Engineering

Instructor Authored Beginner Friendly Industry Aligned Stack

Software engineering today is about building real systems, collaborating with others, and learning how to adapt as tools evolve.

This course teaches the foundations of modern full-stack development while also showing how engineers actually work in professional teams.

You’ll learn how to design applications, build user interfaces, create backend services, work with databases, test your code, and deploy software that runs in the real world.

Along the way you'll also learn how to use AI-assisted development tools, debug complex problems, and structure projects in ways that scale beyond simple tutorials.

By the end of the course you won’t just know syntax — you’ll understand how modern applications are built from end to end.

📘 Prerequisites

This course is designed for beginners.

You do not need prior programming experience.

You only need:

  • Basic computer literacy
  • Curiosity and persistence
  • Willingness to practice regularly

Software engineering is a skill learned through building, breaking, and improving code.

🚀 What You’ll Learn — A Complete Journey Through the JavaScript Stack

Frontend Development

Build the parts of a website users see and interact with.

  • HTML & CSS — structure and style modern, accessible, responsive pages
  • JavaScript — from fundamentals to advanced concepts (DOM, APIs, events, logic)
  • React.js — build dynamic, component-based interfaces using hooks, props, and state

⚙️ Intermediate & Advanced JavaScript

Go beyond “just making it work” and understand how JavaScript runs under the hood — both in the browser and in Node.js.

  • Object-Oriented Programming: classes, inheritance, reusable architecture
  • Asynchronous Programming
    • Callbacks
    • Promises
    • async / await
    • How the event loop enables non-blocking execution
  • JavaScript Internals
    • Call stack and memory model
    • Execution context and scope chain
    • Closures and persistent data
  • Developer Essentials
    • ES Modules vs CommonJS
    • Error handling
    • Browser APIs & Fetch
    • Debugging strategies with breakpoints and stack traces

🔷 TypeScript Fundamentals

Learn how professional teams add safety, clarity, and confidence to JavaScript codebases.

  • Why TypeScript exists and what problems it solves
  • Primitive types, objects, arrays, and functions
  • Type inference vs explicit typing
  • Interfaces and type aliases
  • Optional properties and union types
  • Using TypeScript with React components
  • Understanding compile-time errors vs runtime behavior

Emphasis is placed on using TypeScript as a development tool, not a replacement for JavaScript.

🧪 Testing Fundamentals

Learn how engineers verify that code works — and keeps working as applications grow.

  • Why testing exists and what problems it solves
  • Types of testing
    • Unit tests
    • Integration tests
    • Component tests
    • End-to-end (E2E) tests
  • Writing basic tests for JavaScript and React components
  • Understanding test assertions and expectations
  • How testing improves refactoring confidence and code quality

Testing is taught as a confidence and safety tool, not a requirement for perfection.

🖥️ Backend Development

Learn how to build the systems that power applications behind the scenes.

  • Node.js — execute JavaScript outside the browser
  • Express.js — build fast, maintainable APIs
  • Databases
    • SQL (PostgreSQL/MySQL) — relational schemas, joins, constraints
    • MongoDB — flexible document storage
  • Core Backend Concepts
    • RESTful API design
    • Authentication & authorization
    • Environment variables & secure configuration

🤖 Using AI Tools as a Problem-Solving Partner

Modern software engineers increasingly use AI tools to work faster and smarter. You’ll practice how to:

  • Use tools like GitHub Copilot, ChatGPT, Cursor, and Codeium to get unstuck and explore code solutions
  • Prompt AI clearly with context and constraints (e.g. "Write a function in JavaScript that...")
  • Review and refine AI-generated code, rather than copy-pasting blindly
  • Use AI as a research assistant — summarizing docs, explaining errors, or generating boilerplate code
  • Avoid over-reliance: always understand what code does before using it

AI tools are powerful collaborators — but your logic, judgment, and debugging skills still matter most. You'll learn how to balance speed with understanding as you grow from beginner to builder.

👥 Work Like a Real Development Team: Agile & Scrum

This course doesn’t just teach you code — it teaches you how professional engineering teams operate.

You’ll learn the foundations of Agile and the Scrum framework:

  • Sprint cycles
  • Daily standups
  • Sprint planning & retrospectives
  • Team roles: Developer, Product Owner, Scrum Master

💼 Career Readiness: Job Search Prep

Mastering code is only one part of becoming a professional engineer. You'll also build the confidence and skills to get hired.

✍️ Resume & LinkedIn Best Practices

  • Learn how to write strong bullet points using the impact → action → context framework
  • Highlight projects with live links, GitHub repos, and tech stack
  • Tailor your profile to reflect real-world development experience

🗣️ Interview Preparation

  • Technical interview strategies (whiteboarding, pair coding, debugging)
  • Common question types: data structures, system design, behavioral
  • STAR method for communicating clearly in interviews

Ready to build? Let’s get started — one line of code at a time. 💻✨

This curriculum repository is for educational use and is protected under a custom proprietary license.

License

License: Proprietary

© 2025 Frank Stepanski. All Rights Reserved.
This repository is protected under a custom proprietary license.
Forking and cloning are permitted for personal study only.
No redistribution, publication, modification, or teaching use is allowed.

See the LICENSE file for all terms and restrictions.

About

Beginner-friendly full-stack curriculum covering modern JavaScript, frontend to backend systems, and AI fundamentals through hands-on, industry-aligned projects.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors