Description
In this course, you will:
- Get an overview of the field of web development to understand what you’ll be studying.
- Learn to build a structure for a website using HTML.
- Learn how to apply styles to HTML documents using CSS.
- Get acquainted with text editors and Chrome DevTools to develop websites locally.
- Learn how to deploy websites using GitHub Pages and the command line.
- Explore intermediate topics in CSS to customize styles and implement navigation elements.
- Learn how to utilize responsive web design practices using CSS grid, flexbox, and media queries.
- Use JavaScript to create basic programs that can store and manipulate various types of data.
- Explore JavaScript to create more complex programs using arrays, loops, objects, and iterators.
- Explore Git and GitHub to version control your programs.
- Build a Node.js console app that generates random messages each time a user runs the program and version your project with Git/GitHub.
- Implement JavaScript to add interactive experiences to a website.
- Get acquainted with the best accessibility (a11y) practices to ensure that your websites are usable to everyone.
- Bring together what you have learned in the previous lessons and build a project off of Codecademy.
- Level up your JavaScript by learning how to implement classes, modules, and error handling.
- Learn various JavaScript testing methodologies, such as Test-Driven Development (TDD), using Mocha and Chai.
- Learn about APIs (Application Programming Interfaces). Working with APIs will enable you to work with data stored on remote servers.
- Be introduced to web applications and learn about single page applications (SPAs) and how they are different from static websites.
- Be introduced to React, a popular JavaScript library, to build scalable front-ends for your website through the creation of components.
- Dive further into React and learn about props, state, hooks as well as testing with Jest and Enzyme.
- Learn how to manage React application’s states with Redux.
- Learn how to collaborate on a project using Git and GitHub through forking, branching, merging conflicts, and making pull requests.
- Bring together what you have learned in the previous lessons and build a project off of Codecademy.
- Start learning about back-end development and programming servers.
- Learn about the popular back-end environment, Node.js and how to create back-end servers and APIs in JavaScript using the popular Express.js
- Learn how to protect your resources with authorization and authentication techniques.
- Learn about TDD techniques for full-stack web applications.
- Get acquainted with the concept of databases and how they help store, retrieve, and manipulate data.
- Learn how to craft more sophisticated SQL queries and calculations to build data-intensive applications.
- Learn how to design relational databases that you can then implement in PostgreSQL.
- Learn about database performance and techniques for efficiently accessing data and maintaining optimal performance.
- Much of the internet is the flow of information. Learn how databases store data so that it can be displayed on the web using PostgreSQL.
- Learn how to develop APIs using Swagger tooling and the OpenAPI specification.
- Build an e-commerce REST API using Node/Express and PostgreSQL.
- Learn about the different ways to combine your front-end and back-end systems to create a cohesive full-stack application.
- Use Render to deploy full-stack applications.
- Learn intermediate concepts in web security and look at prevention techniques for common threats.
- Learn to secure your data using Transport Layer Security (TLS), Role-Based Access Control (RBAC), and more!
- Explore common threats that web applications face and how to mitigate them.
- Learn about operating systems by taking a deep dive into each of its main functionalities.
- Learn the fundamentals of DevOps, a culture supported by practices and tools.
- Expand the e-commerce REST API with a React client app, creating a PERN (Postgres, Express, React, Node) full-stack e-commerce experience.
- Know what to expect when interviewing for engineering jobs.
- Begin interview preparation by learning the fundamentals of linear data structures.
- Continue interview preparation by learning advanced applications of data structures.
- Continue interview preparation by learning the fundamentals of algorithms.
- Continue interview preparation by learning the fundamentals of search algorithms.
- Review some key technical interview topics as well as soft skills which employers are looking for in potential candidates.
- Build a PERN app of your choosing and deploy it to Heroku.
Syllabus:
- Overview of Web Development
- Fundamentals of HTML
- Fundamentals of CSS
- Developing Websites Locally
- Deploying Websites
- Improved Styling with CSS
- Making a Website Responsive
- JavaScript Syntax, Part I
- JavaScript Syntax, Part II
- Git and GitHub, Part I
- Portfolio Project: JavaScript Syntax
- Building Interactive Websites
- Making A Website Accessible
- Portfolio Project: Personal Portfolio Website
- JavaScript Syntax, Part III
- JavaScript Testing
- Async JavaScript and HTTP Requests
- Web Apps
- React, Part I
- React, Part II
- Redux
- Git and GitHub, Part II
- Portfolio Project: Reddit Client
- Introduction to Back-End
- Build a Back-end with Express.js
- User Authentication & Authorization
- Back-End and Feature Testing
- Database Basics
- Working with Databases
- Designing Relational Databases
- Advanced PostgreSQL
- Adding a PostgreSQL Database
- API Development with Swagger and OpenAPI
- Portfolio Project: E-Commerce App (REST API)
- Connecting Front-End to Back-End
- Deploying Web Applications
- Web Security Fundamentals
- Data Security
- Common Attacks on Web Applications
- Fundamentals of Operating Systems
- DevOps Fundamentals
- Portfolio Project: E-Commerce App (Client)
- What To Expect in a Technical Interview
- Linear Data Structures
- Complex Data Structures
- Algorithms
- Search & Graph Search Algorithms
- Interview Skills
- Portfolio Project: Open-Ended PERN App