This course assumes:
- No prior coding experience
- Basic computer literacy
- Willingness to practice and experiment
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
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
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.
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.
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
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.
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
Mastering code is only one part of becoming a professional engineer. You'll also build the confidence and skills to get hired.
- 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
- Technical interview strategies (whiteboarding, pair coding, debugging)
- Common question types: data structures, system design, behavioral
- STAR method for communicating clearly in interviews
By the end of this course, you will:
- Build full-stack applications from scratch
- Design and deploy secure REST APIs
- Structure clean, maintainable JavaScript code
- Debug confidently with modern tools
- Implement unit, integration, component, and end-to-end (E2E) tests
- Present your work like a professional engineer
- Think like an engineer — solve problems you haven’t seen before
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.
© 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.