loading...

Must have skills for Frontend Devs in 2021

nikscode profile image Nikhil Updated on ・3 min read

Frontend Development is definitely not the same that it used to be a decade ago. Last year, I interviewed for a bunch of top tech companies and I realized that every recruiter is looking for this set of skills. I had experience with most of them as I worked on a variety of projects in the last two years.

Alt Text

Based on my experience, these are the must-have skills for Frontend Developers in 2021.

  1. ES6 - Javascript made some monumental changes in ES6(ES2015) which introduced a whole lot of new features and syntactical changes. Some of them include Arrow Functions, block-scoped variables, promise methods, template literals, and so on. Now, almost every application is written in ES6. You can check out all ES6 features here. By the way, ES11 was launched recently.

  2. SCSS/SASS - Plain CSS is almost out of fashion. SCSS/SASS offers far more flexibility over CSS and it dramatically decreases lines of code that you write. It also makes CSS functional as you can pass on arguments and generate a dynamic CSS. Click here to understand more about SASS.

  3. React/Vue/Angular - These three have been the most used Javascript frameworks in recent years. Based on my experience, React in your resume gives you an extra edge. I have worked on all three, on products with over 100 million users. Using one of these definitely makes it easier to write complex applications.
    They also implement certain design patterns in the background, which overall decreases our lines of code and makes coding easier. They create a separate instance of the Document Object Model which is faster and lighter than the real DOM.

  4. Typescript - Typescript is a programming language maintained by Microsoft that builds on Javascript by adding type definitions. Some of the advantages of Typescript is Static Type Checking, Class and Module support, ES6 to ES5 conversion, the resemblance with backend languages, etc. The relationship between TS and Angular goes a long time back. But advantages offered by TS has made it a favorite in React Projects as well.

  5. Testing Frameworks (Jest, Jasmine, Mocha, etc) - With time, Testing frameworks are gaining more and more popularity. Whether it's a unit test or scenario test, it full proofs your application before going to the customer. It also eases the headache of package upgrades. Working in Microsoft has made me realize that the bigger products rely heavily on tests. Having experience with one of these is definitely good for your development process.

  6. GIT / SVN - It's a no brainer. GIT / SVN is used for tracking code changes by single/multiple contributors during an application development process. It also offers you the flexibility to revert, cherry-pick changes to the code. GIT is a distributed version control system while SVN is a centralized one. All organizations use these(or similar) in order to manage their codebase and you should definitely learn if haven't already.

While these are must-have skills for a Front End Engineer in 2021, the core still remains the same - HTML, CSS & Javascript. None of this matters if we don't have command over Javascript and how it works.

Feel free to add other must-have skills in the comments. You can also checkout Journey to Microsoft : React, Vue, Angular & Risks in 3 Years

Follow me on Twitter as I keep sharing information on JS, Job Market & Interviews.

Discussion

pic
Editor guide
Collapse
jfbrennan profile image
Jordan Brennan

The greatest front-end skill anyone could have right now is good design judgement (software, not UI). The community has gone off the rails due to React herd mentality, just like it went off the rails in jQuery’s heyday.

The community is producing tons of poorly designed software because most everybody has React goggles on (just like the jQuery age)! Next.js for static sites is a prime example.

Not every problem is a nail, so put your hammer down and leave it there. The web is a GIANT toolbox, try more appropriate tools!

Collapse
nikscode profile image
Nikhil Author

Software Design is really important but learning all of the above is important as well. Most newbies/midlevel devs will be working under senior developers / leads so they don't have worry much about design. Yes, if you are an individual developer then you definitely need to learn all

Collapse
anthonybrown profile image
Tony Brown

absolutely positively correct!

Collapse
aarone4 profile image
Aaron Reese

So exactly the same skills as 2019 and 2020. But this is a good thing. It indicates that the technology has reached a level of maturity and changes are now incremental rather than structural. With the exception of WASM there are no fundamental technology changes on the horizon so devs can start focusing on delivering business value rather than just technical competence

Collapse
nikscode profile image
Nikhil Author

Something new can always be learned. These are the must-haves. I do agree that
once we have enough experience with all the above, we can definitely focus on delivering value.

Collapse
jkhaui profile image
Jordan Lee

100% agree.

Collapse
indoor_keith profile image
Keith Charles

Accessibility standards (both in implementation and testing of said implementation)! It's about to be 2021 and we've come up with plenty of ways to make sure we're accounting for the less-abled to comfortably enjoy online content as well. We need to put more effort into a11y and semantic html. 💪🏼

Collapse
andrewbaisden profile image
Andrew Baisden

Testing is becoming more and more required yet I still think many developers leave it till last as they prioritise on learning the core concepts of programming languages.

Collapse
nikscode profile image
Nikhil Author

Absolutely on point. It's very important.

Collapse
emibcn profile image
emibcn

Another thing gives an extra point to a developer is -a minimal- knowledge in pipelines (GitLab Pipelines, GitHub Actions, Jenkins, ...). I think knowing how your app is used and deployed, how to install dependencies, how to build, etc is very important nowadays: we all know the in-famous "it works on my PC", ¿right?.

Collapse
nikscode profile image
Collapse
austinnoronha profile image
Austin Noronha

Absolutely right, these skills are must have. But most importantly there is a one gray area that we miss and that is Testing. We should also focus in involving testing in each development cycle.

Collapse
nikscode profile image
Nikhil Author

Yes, testing is very important. That's why I already covered it.