Full Stack Software Developer

Whether you're new to web development or want to build on existing skills, this full stack developer course will teach you how to create and maintain full-service websites. You will learn all the significant aspects of front-end, back-end, and full-stack development through several milestone exercises and a hands-on project. Throughout the course, you will build a website that hosts learning games. By course completion, your website will allow users to log in, play games, track their progress, see leaderboards, and manage their accounts.

18 Months / 650 Course Hrs
Open Enrollment
Offered in partnership with your preferred school

George Mason University

Change School
Learning method

for additional information

Course code: GES375

What you will learn

  • Build a fully functioning database-driven website from the ground up
  • Use modern JavaScript libraries to make single-page web applications
  • Build a secure user authentication system and to manage user data

How you will benefit

  • Build a functional website to add to your developer portfolio
  • Join existing development teams as front-end or back-end developers
  • Support non-web-based software built with Python
  • After learning several different programming languages, you will be able to pick up new programming languages more easily if you have a need (or interest)
  • Because you will have learned SQL, you will be able to run reports against a major database

How the course is taught

  • Self-paced, online course
  • 18 Months to complete
  • Open enrollment, begin anytime
  • 650 course hours
  1. Things Every Developer Should Know
    1. Zip Files
    2. Showing Extensions in File Listings
    3. Taking Screenshots
    4. Using a Command Line Shell
    5. Relative and Absolute Paths
    6. Environment Variables
    7. Browsers
    8. Visual Studio Code
    9. Using Stack Overflow
    10. Asking Good Questions in Your Course
    11. Exercise: Ask a Question
  2. Introduction to HTML
    1. A Quick Overview of Web Development
    2. Introduction to HTML
    3. Paragraphs, Headings, and Text
    4. HTML Links
    5. HTML Images
    6. HTML Lists
    7. HTML Tables
    8. Sectioning a Web Page
    9. Audio and Video
  3. Introduction to CSS
    1. Crash Course in CSS
    2. CSS Fonts
    3. Color and Opacity
    4. CSS Text
    5. Borders, Margins, and Padding
    6. Backgrounds
    7. Display and Visibility
    8. Pseudo-classes and Pseudo-elements
    9. Styling Tables with CSS
    10. Positioning
    11. Transforms and Transitions
    12. Layouts
    13. CSS Lists as Hierarchical Navigation
    14. Media Queries
  4. Introduction to JavaScript
    1. JavaScript Basics
    2. Variables, Arrays, and Operators
    3. JavaScript Functions
    4. Built-in JavaScript Objects
    5. Conditionals and Loops
    6. Event Handlers and Listeners
    7. The HTML Document Object Model
    8. CSS Object Model
    9. Errors and Exceptions
  5. Advanced JavaScript Concepts
    1. Node.js
    2. Scope, var, let, and const
    3. Arrow Functions
    4. Rest Parameters
    5. Spread Operator
    6. Array Destructuring
    7. Template Literals
    8. Objects, Context, and the this Object
    9. Array map() Method
    10. Array filter() Method
    11. Array find() Method
    12. JavaScript Modules
    13. npm
    14. Customize hands-on JavaScript project
  6. Creating, Styling, and Validating Web Forms
    1. HTML Forms
    2. JavaScript Form Validation
    3. Styling Forms with CSS
    4. Regular Expressions
    5. Node.js and Server-side Form Validation
    6. JSON
    7. Project
  7. Vue.js
    1. Getting Started with Vue.js
    2. Basic Vue Features
    3. Directives
    4. Implementing Game Logic
    5. Transitions and Animations
    6. Vue Routing
  8. Bootstrap Training
    1. Getting Started with Bootstrap Basics
    2. Bootstrap Layout
    3. Creating Responsive Navigation
    4. Bootstrap Typography
    5. Tables
    6. Bootstrap Forms
    7. Images
    8. Bootstrap Components
    9. Bootstrap Utilities
    10. Bootstrap Flex
    11. Project
  9. PostgreSQL
    1. Relational Database Basics
    2. Simple SELECTs
    3. Advanced SELECTs
    4. Subqueries, Joins and Unions
    5. Conditional Processing with CASE
    6. Inserting, Updating and Deleting Records
    7. Creating Tables
  10. Introduction to Python
    1. Python Basics
    2. Functions and Modules
    3. Math
    4. Python Strings
    5. Iterables: Sequences, Dictionaries, and Sets
    6. Virtual Environments, Packages, and pip
    7. Flow Control
    8. Exception Handling
    9. Python Dates and Times
    10. File Processing
    11. PEP8 and Pylint
  11. Advanced Python
    1. Advanced Python Concepts
    2. Regular Expressions
    3. Working with Data
    4. Testing and Debugging
    5. Classes and Objects
    6. Project
  12. Django Training for Python Developers
    1. Getting Started with Django
    2. Git, GitHub, and an App with a Model
    3. Template Filters and Tags
    4. Static Files
    5. Django Admin and the User Model
    6. URLs and Slugs
    7. Sending Email with SendGrid
    8. Forms and Widgets
    9. ModelForms
    10. User Registration
    11. Messages Framework
    12. Media Files
    13. Making Queries, Ajax, and View Functions
    14. Pagination and Ordering
    15. Advanced Querying and Search
    16. Deploying your Website to Production
    17. Customizing Django Admin
    18. Additional Topics
  13. Introduction to WordPress Training
    1. Getting Started and Setup Options
    2. WordPress Dashboard
    3. Posts
    4. Comments and Feedback
    5. Appearance
    6. Pages
    7. Reader Page
  14. Project

Nat Dunn

Nat Dunn founded Webucator in 2003 to combine his passion for technical training with his business expertise and to help companies benefit from both. His previous experience was in sales, business and technical training, and management. Nat has an MBA from Harvard Business School and a BA in International Relations from Pomona College.


There are no prerequisites to take this course.


Hardware Requirements:

  • This course can be taken on either a PC or Mac.

Software Requirements:

  • PC: Windows 10 or later.
  • Mac: macOS 11.0 or later.
  • Browser: The latest version of Google Chrome or Mozilla Firefox are preferred. Microsoft Edge and Safari are also compatible.
  • Adobe Acrobat Reader.
  • Software must be installed and fully operational before the course begins.


  • Email capabilities and access to a personal email account.

Instructional Material Requirements:

The instructional materials required for this course are included in enrollment and will be available online.

According to Indeed.com, the average full stack developer salary is $117,473 per year in the U.S., based on 23,000 salaries reported as of March 21, 2023.

Le Wagon states that a full stack developer works with the back end or server side of the application and the front end or client side. Full stack developers have to have skills in various coding niches, from databases to graphic design and UI/UX management, to do their job well.

Becoming a full stack developer means being well-versed in back-end processes such as working with databases like MongoDB and MySQL, using open-source server environments like Node.js, calling APIs, and other server-side functionalities. You should also be skilled in front-end languages and libraries, such as HTML, CSS, JavaScript, and its frameworks and libraries, including Angular and React.

Becoming a full stack developer does not require years of on-the-job experience before you apply. Some positions may require you to have a degree. Displaying your programming skills will be beneficial regardless of how you acquired them, as you need to prove to employers that you have the experience and know-how to take on the job. This can be done through thorough education or previous experience in a related development job. Some employers may also require that you have at least three years of experience with certain coding languages like HTML, CSS, and JavaScript and that you keep up with the latest advances.

Indeed.com reports that the work duties of full stack developers and software engineers sometimes overlap, and the distinctions between these roles may vary by project or industry. Both roles both work to achieve project goals and meet client objectives.

Full stack developers often hold leadership roles, while software engineers may work under the supervision of full stack developers and use their expertise to develop specific project features. As a full stack developer, you may work as part of a team or as a freelancer or contractor.

According to the U.S. Bureau of Labor Statistics (BLS), the employment of web developers and digital designers is projected to grow 23% through 2031. This equates to about 21,800 job openings each year, on average.

The BLS also reports that in 2021 alone, there were 197,100 jobs for web developers and digital designers.


The time allotted for course completion has been calculated based on the number of course hours. However, if you are unable to complete the course, contact the student advising team to see what options you may have available to work out a suitable completion date. Please note that an extension fee may be charged.

Our courses are designed to accommodate various learning preferences. Depending on the course structure, you may get different forms of support. Self-paced courses are designed to be user-friendly and independent, minimizing the need for external support. In courses with instructors, our direct platform support feature includes opportunities for questions, discussions, and remediation, with email and phone support available for select courses. Our student advising team is available to guide you on program requirements and administrative requests, but they do not provide assistance with course content. Our goal is to provide you with the necessary support for success, whether it's through self-paced exploration, direct communication, or guidance from our advising team.

Upon successful completion of the course, you will be awarded a Certificate of Completion.

This course will provide you with the skills you need to obtain an entry-level position in most cases. Potential students should always do research on the job market in their area before registering.

This course is non-credit, so it does not qualify for federal aid, FAFSA and Pell Grant. In some states, vocational rehab or workforce development boards will pay for qualified students to take our courses. Additionally, some students may qualify for financial assistance when they enroll, if they meet certain requirements. Financing is available from select schools. Learn more about financial assistance.

If you have questions that are not answered on our website, representatives are available via LIVE chat. You can also call us at 1-877-221-5151 during regular business hours to have your questions promptly answered. If you are visiting us during non-business hours, please send us a question using the "Contact Us" form.