Full-Stack Software Engineer
Full-time course of 3 months
A full-stack software engineer gets a project done from start to finish. In this 3-month, full-time course, you’ll acquire this highly sought-after skill-set by learning to use the essential tools of front- and back-end developers, while creating your own web app and API.
Expected starting salary: 45,000€
Module 1 : Become a Full-Stack Engineer
This course starts with a solid introduction to software engineering and gets practical right away as you get your hands dirty writing JavaScript programs and discovering essential JavaScript techniques and features including arrays, looping, and objects. You will learn about the tools web developers use to create websites, write in markdown and enter the world of the Git version control system. At the end of this module, you will have built your first Node.js app versioned with Git/GitHub.
Module 2 : Web Development Fundamentals
It’s time to get familiar with front-end web development. The best way to do that is by creating your first web page. In order to go live, your site needs to be hosted somewhere, so you will learn about different approaches to hosting, such as using GitHub pages with a custom domain name. You will learn CSS to improve your ability to make your websites beautiful and functional. Adding interactive experiences to your website will show you why you started to learn JavaScript in the first place. This is also the time to learn how to make your website viewable on all kinds of devices using different layouts and positioning. Finally, you will refactor your website according to the best accessibility practices (a11y). The product of this module is your very own portfolio project based on HTML, CSS and JS.
Module 3 : Test-Driven Development and APIs
JavaScript is as complex as it is powerful and to harness more of its magic, you will become a master of classes, modules, and error handling and get acquainted with the fundamentals of Test-Driven Development (TDD). It’s also time to learn about APIs (Application Programming Interfaces) so that your website can deal with data stored on remote servers.
Module 4 : Web Apps with React and Redux
Now that you know how Javascript makes your app interactive and dynamic, you will learn how this principle gives birth to the concept of single page applications (SPAs) as opposed to static websites. You will learn to use Javascript’s perhaps most popular library, React. Learn about props, state, hooks and do testing with Enzyme and Jest. To manage the state of your application, you will learn to use Redux and continue to build your website using Git and GitHub. At the end of this module, your personal React and Redux Portfolio project will be showcased on your personal Github page.
Module 5 : Back-End Development with Express.js
Remember the app from the first module? It is time to revisit Node.js, the popular back-end environment that helped you to get started with your first app. You will learn to create back-end servers and APIs using JavaScript in the form of Express.js. You will widen your set of TDD techniques to handle full-stack web applications. You will create, retrieve, and update data in SQL databases. This is key because the internet is a giant network of information exchange. At the end of this module, you will have created your first data-intensive web application.
Module 6 : Databases with PostgreSQL
It is time to deepen your knowledge of databases. You will learn how data is stored and you will use PostgreSQL to display it on the web. PostgreSQL will be your go-to resource to implement relational databases that you have designed yourself optimizing for database performance. At the end of this module you will have familiarized yourself with the techniques for efficiently accessing data and maintaining optimal performance. As always, your progress will be reflected in your GitHub account in the form of your own e-commerce REST API using Node/Express and PostgreSQL.
Module 7 : Connecting Front-End to Back-End
Now that your GitHub page shows that you master the art of both front- and back-end engineering, it is time to combine both to a cohesive full-stack application. You will learn how to use PostgreSQL to connect JS and SQL in web apps. This is a full-stack project, and you are fully responsible for it, so this is a good moment to learn how to make it secure and reliable. Get familiar with the more advanced concepts of TDD so that you can test your web application as a whole.
At the end of this module, you will have built your own React client app as the front-end to your e-commerce REST API from the previous module. Congratulations on your own PERN (Postgres, Express, React, Node) full-stack experience!
Module 8 : Technical Interview Preparation
We have reached the end of this course. You have proven that you can create your own full-stack project from scratch and you are ready to take on your first job as a full-stack engineer. The only barrier between you and this job is the technical interview. This last module will equip you with everything you need. Not only will you learn what to expect in such an interview, and which soft skills employers are looking for, but you will also dive deep into linear data structures and algorithms.
Now you are ready to seek out your job opportunities. At the same time, you will work on your own PERN app, which you will deploy on Heroku.
Tech Expert Academy
Instructor
Your coach will be an experienced professional who is passionate about creating and teaching.