13 : JavaScript Development
Published: 2020-04-23 01:40:02

The idea of “Full Stack JavaScript” is that all software in a web application, both client-side and server-side, should be written using JavaScript only.
Full Stack JavaScript Developer
A full-stack JavaScript developer is a person who can develop both client and server software.

In addition to mastering HTML and CSS, he/she also knows how to:
Program a browser (like using JavaScript, jQuery, Angular, or Vue)
Program a server (like using Node.js)
Program a database (like using MongoDB)

---- 
JavaScript experts are versatile
JavaScript is an extremely versatile language. Once you’ve mastered it, the possibilities are endless: you can code on the client-side (frontend) using Angular and on the server-side (backend) using Node.js. You can also develop web, mobile, and desktop apps using React, React Native, and Electron, and you can even get involved in machine learning.

---- 
If you want to become a frontend developer, JavaScript is a prerequisite. However, that’s not the only career path open to you as a JavaScript expert. Mastering this key programming language could see you go on to work in full-stack development, games development, information security software engineering, machine learning, and artificial intelligence — to name just a few!
Ultimately, if you want any kind of development or engineering career, proficiency in JavaScript is a must.

---- 
JavaScript experts are in-demand (and well-paid)
JavaScript is the most popular programming language in the world, so it’s no wonder that JavaScript is one of the most sought-after skills in the web development industry today.
According to the Devskiller Global Technical Hiring & Skills Report 2019, 70% of companies are looking to hire JavaScript experts. Enter the search term “JavaScript” on job site Indeed and you’ll find over 40,000 jobs requiring this skill (in the US). Run the same search on LinkedIn and the results are in excess of 125,000.

----- 
At the same time, the global demand for JavaScript seems to outweigh the expertise available on the market. According to this 2018 HackerRank report, 48% of employers worldwide need developers with JavaScript skills, while only 42% of student developers claim to be proficient in JavaScript.
Not only are JavaScript experts in demand — but they are also well-paid. In the United States, JavaScript developers earn an average yearly salary of $111,953 per year. We’ve covered this topic in more detail in our JavaScript salary guide, but as you can see, learning JavaScript can really boost your earning potential as a developer.
Should you learn vanilla JavaScript first?
When it comes to learning JavaScript, it can be tempting to skip ahead to those time-saving frameworks and libraries we just talked about — and many developers do. However, there are many compelling arguments for learning plain JavaScript first.

---- 
While JavaScript frameworks may help you get the job done quicker, there’s only so far you can go if you don’t understand the core concepts behind these frameworks. Frontend developer Abhishek Nagekar describes how not learning vanilla JavaScript came back to bite him when he started learning the JavaScript frameworks Node and Express:
“As I went to write more and more code in Node and Express, I began to get stuck at even the tiniest problems. Suddenly, I was surrounded with words like callbacks, closures, event loop and prototype. It felt like I got a reintroduction to JavaScript, but this time, it was not a toddler playing in its cradle, it was something of a mysterious monster, challenging me on every other step for not having taken it seriously.”

----
The above Tweet references a long-running joke within the developer community, and although it dates way back to 2015, it’s still highly relevant today. If you want to become a developer who can innovate, not just execute, you need to understand the underlying principles of the web — not just the shortcuts. This means learning vanilla JavaScript before you move on to frameworks. In fact, understanding plain JavaScript will help you later on when it comes to deciding whether to use a framework for a certain project and if so, which framework to use.

---- 
Ultimately, if you want to work as a web developer, it’s inevitable that you’ll encounter JavaScript at almost every turn. Learning plain JavaScript first will make you a versatile engineer who can work on both the frontend and the backend, and it’ll equip you to solve complex problems independently — a key skill in the industry.

----

1. Mathematical Problem Solving (middle school level)
2. JavaScript Data Structures and Algorithms (CS Fundamentals)
3. Vanilla JavaScript Projects (Front end engineering)
4. Functional Programming JavaScript Projects (Based on Backend, Database knowledge)