The Software Engineering Learning Plan  

Time to read: 3 min | 23 May, 2020 | Stacy Kutyepov

Recently, I have been getting a lot of questions on Instagram about the learning path I’m taking in Software Engineering. This post might answer many of these, but in particular, it would be useful for people who want to dive into Frontend Development, and learn JavaScript language on their own.


Step number one is to learn HTML & CSS.


HTML is a Markup language which displays content in a web browser, and CSS stands for Cascading Style Sheets, which is used to style content on the web page. Saying in few words, you display a text with HTML and make it pretty using CSS.

There are plenty of free resources on the web, but I’m sharing the ones I have used personally.

I would recommend to take freeCodeCamp Responsive Web Design Certification, because it covers all the necessary topics for beginners, also you could follow their 11 hour HTML&CSS full course on YouTube, in case you prefer to see all the practices in action. After you complete these courses, you would get enough knowledge to build some projects and move forward. It is important to practice what you have learned.


Try to spend 30% of your time learning, and 70% — practicing.


In the meanwhile, check out a game for mastering CSS flexbox — flexbox Froggy. Flexbox makes it much more simple to build flexible and responsive layout structures, plus it’s a super fun game!

Contacts-app

Step number two is to add a programming language.


JavaScript is a great choice in 2020. You need it if you want to make your website or web application interactive.

I really recommend to learn basics from Udemy Free Courses, for example “Complete JavaScript Course for Beginners” by Jonas Schmedtmann. It’s informative and well explained, and I’ve taken it too. In my opinion, some of the topics need to be upgraded, but because it’s free, I’m so grateful. There is also a newest version of the same course which can be purchased on Udemy.

I didn’t take it, so don’t really know what’s the difference. I would like to mention, that the choice of the course is completely up to you, I’m just telling which ones I’ve taken and my personal opinion. If you’re thinking about a different one, just make sure it has some interesting projects in it, because you need to get as much practice as possible. In the meanwhile, it’s good to learn more about JS Data Structures and Algorithm Scripting.

For this, I have chosen freeCodeCamp course, JavaScript Algorithms and Data Structures. It’s important to solve algorithms in order to become better in problem solving and also know how to work with different types of data. In the course you get information gradually and apply it in small coding challenges. It would be a great addition to the video course you are taking. Try to make a small project, just so you practice what you have learned. Make sure you understand all the concepts and you know how to set up your mind into a programming mode.

Don’t start with a difficult one, unless you really know how to make it. Otherwise you’re risking to spend so much time on it and at the end leave it unfinished.


Next step and the last one would be learning different frameworks and libraries.


Frameworks help you to work faster and more organized, they are also used to develop complex web applications, and SPAs (Single Page Application). I would say that once you have a basic to intermediate understanding of JavaScript, you should pick a framework to incorporate into your learning plan. The choice of a framework is completely up to you and your path as a developer.

Some of the most popular JavaScript frameworks for Frontend Development:

Contacts-app

Vue.js — an open-sourse model-view JS framework for building user interfaces and SPAs.

React.js — a JavaScript library for building user interfaces;

Ember.js — a framework for building modern web applications;

Backbone.js — an uber-light framework that allows you to structure your code;

Angular — one framework for mobile & desktop apps;

Thank you for reading, and I really hope this guide will help you on your learning journey! I would like to thank Stas for his review and suggestions for this post.


Plan Overview:

HTML & CSS;

JavaScript and Algorithms Scripting;

Build Your Own Project;

Learn a Framework.