Building Web Applications with Go – Intermediate Level Course Syllabus
Full curriculum breakdown — modules, lessons, estimated time, and outcomes.
Overview (80-120 words) describing structure and time commitment.
Module 1: Virtual Terminal Application
Estimated time: 10 hours
- Build a web application for processing 'card not present' transactions
- Integrate Stripe's API for secure credit card payment handling
- Implement user authentication and session management
- Secure server-side routes using Go's net/http package
Module 2: E-Commerce Website
Estimated time: 20 hours
- Develop a customer-facing website for product and subscription purchases
- Process one-time and recurring payments using Stripe
- Manage user accounts with registration, login, and password reset features
- Use Go's html/template package for server-side rendering
Module 3: Invoice Microservice
Estimated time: 8 hours
- Create a standalone microservice to generate PDF invoices from JSON payloads
- Implement PDF generation using Go libraries
- Send generated invoices to customers via email
- Ensure the microservice operates independently and efficiently
Module 4: Application Deployment and Management
Estimated time: 10 hours
- Compile multiple binaries from a single codebase using GNU Make
- Organize and manage front-end, back-end, and microservices
- Apply best practices for deploying Go applications in production
Module 5: Security and API Authentication
Estimated time: 12 hours
- Implement stateful tokens for API authentication
- Manage user sessions securely
- Protect endpoints with middleware and role-based access control
Module 6: Final Project
Estimated time: 20 hours
- Build a secure, full-featured e-commerce application integrating all components
- Deploy the application using production best practices
- Earn a certificate of completion by submitting the final project
Prerequisites
- Familiarity with Go programming language syntax and basics
- Understanding of HTTP, web servers, and client-server architecture
- Basic knowledge of command-line tools and Git version control
What You'll Be Able to Do After
- Develop secure, production-ready web applications using Go
- Integrate payment processing with Stripe for one-time and recurring billing
- Build and deploy independent microservices in a Go ecosystem
- Implement robust user authentication, session management, and password reset flows
- Use server-side rendering and manage multi-service applications from a single codebase