Learning a new framework or technology is always fun for me. But I was thinking about how I’ll describe someone to learn React JS in 2020? So I came up with a list of things need to learn to get a React JS job in 2020! Interested to know? Scroll down or do whatever you wish (tried to be funny as always, but I know I’m bad with jokes so don’t mind please).

So Why React JS?

React is dominating the industry and there are so many jobs on React so learning React will help to get a job quickly. There are so many benefits of learning React JS in 2020. I’ll list some 

  • Easier to learn
  • Re-use components
  • One directional data flow
  • Great performance
  • Great eco-system
  • Amazing Community
  • Very popular

Pre-requisite

Before learning React JS I’ll suggest learning a huge list. Well, this list things are easy so you can maybe learn whole things in 2-3months! Well, you can learn it within 1 month, but I’ll suggest spending 2-3months on these topics then drive in to React JS. The list is – 

  • HTML5
  • CSS3
  • JavaScript Basics
  • ES6 and more about JavaScript
  • NPM
  • WEBPACK
  • JSX
  • FETCH/AXIOS

After completing all these, I’ll suggest driving into React JS. React JS is so fun to learn so if you know the topics I mentioned then you’ll find that this is so easy. React is like you’re writing the HTML & CSS in JS. There are some logics too. Let’s drive into React JS to see what we need to learn to get a job in 2020?

React JS Basics

First, we need to start reading the documentation. React documentation is very good. You can easily understand the topics from the react documentation. There are so many free basic courses on React JS. You can start this course at egghead. 

https://egghead.io/courses/the-beginner-s-guide-to-react

Or you can try 

https://scotch.io/starters/react/getting-started-with-react-2019-edition

REDUX

After learning React JS for some days you’ll face one problem for sure. State management with react is really easy but sometimes it’s messy, because of one-directional data flow we go down and down with components, but sending the same data to the parent is hard sometimes. This needed to write a lot of extra code to pass that data to the parent and with more team members, it’s harder! So here comes the REDUX magic. REDUX makes a single store where all state saved and we can use it from any component in react. I know it’s hard right now to understanding (if you are a beginner) but you need to understand the redux well because most of the company wants Both(REACT & REDUX).

There are some libraries I can mention which will helps you to work with redux. They are 

  • Redux (This is primary needs)
  • React-redux (This is for redux in react)
  • Redux-logger (A middleware to log the changes)
  • Redux-persist (Storing state in local storage)
  • Reselect (Selector)
  • Redux-thunk (For async operations)
  • Redux-saga (For async operation)

About the redux-thunk & redux-saga, both do the same work. While redux-saga gives some extra benefits still it’s better to work with redux-thunk. See details – https://blog.isquaredsoftware.com/2020/02/blogged-answers-why-redux-toolkit-uses-thunks-for-async-logic/

React Hooks

React hooks introduced in React 16.8. React hooks comes with some features which help us to stop writing class component just for using states and other features. 

You can start with the conference video 

Then you can have a crash course in

Also, look into this

Testing

Nowadays learning to test is needed for getting a good job. The beginners will think why should we write more codes to test codes? Of course, we can do this manually, but sometimes we can’t find all the bugs by manual testing. Also, it’s time-consuming and needs an extra person to check it. But easily by writing codes, we can solve this issue. There are some cases where people write test cases before writing codes. Sometimes code creates some mysterious bugs which we can’t solve just with one look, sometimes we need to spend many times to check and find out the bug. So with writing test cases, it’s easier to find bugs and work with. To learning react testing starts with

https://reactjs.org/docs/testing.html

Then look into 

https://testing-library.com/docs/react-testing-library/intro

There is one youtube playlist you can check too

TypeScript (Optional)

TypeScript is an open-source programming language developed and maintained by Microsoft. It is a strict syntactical superset of JavaScript and adds optional static typing to the language. TypeScript is designed for the development of large applications and transcompiles to JavaScript. [Wikipedia]

Typescript is needed for many jobs now a days. It’ll help to not going to some mysterious bugs in futures and have some other advantages too. 

I’ll suggest reading the official document first then 

and finally, this one will be a great introduction 

Gatsby (Optional)

Gatsby is a free and open-source framework based on React that helps developers build blazing-fast websites and apps. [Official sites]

I’ll suggest looking into this & the official document

Next JS(Optional)

Production grade React applications that scale. The world’s leading companies use Next.js to build static and dynamic websites and web applications. [Official sites]

I’ll suggest looking into this & the official document

Job Search

After learning all of these concepts we’ll come down into job search. Before applying for any job I’ll suggest making

  • A good resume
  • Portfolio
  • Linkedin Profile
  • Open-source Project (Contribution)

These three can lead you into any good job. Linkedin is a great place to talk with recruiters and get hired by companies. Open source contribution can lead to a job because recruiters look into them too. So do some open source contribution if you are interested to learn more skills and apply them in real-life projects. Use job sites to search for jobs in your region. But if you are interested in the remote job then there are so many remote jobs nowadays, if you are interested you can look into it. Now search a company that you’ll like to work and look if they have any position on React JS. If they have any just apply there with a good cover letter. The cover letter should different for each company.

Interviews

This part is tricky, getting job calls to need a good portfolio or some good one source contribution or else a recommendation. But doing good on the interviews get the job. So for the interview, I think everyone should a little bit focus on problem-solving skills & algorithms. You can practice algorithms in some coding sites, look into those and choose whatever you like and start solving some problems. 

Read this 

then this one too

https://github.com/yangshun/tech-interview-handbook

It’s not that easy to find a good job in 2020. But if you learned through someone else experience and spend time to be ready for the job then you’ll find the path is really easy. Normally we don’t prepare in a good way, so we don’t feel good when we face the situation. If you are prepared well then you’ll be confident in the job and grab the job easily! It’s on your determination and remember everyone fails. Finally, this is not a sprint, it’s a marathon! 

Extra benefits of react

If you are interested to learn about the mobile app. Then you can learn react-native which will be super easy for you because already you learned about the react. So if you wanted to be an app developer then you also can try to follow this path. 

Some Interesting Projects

Finally, I’m leaving some interesting projects idea you can check it. 

Recap

https://www.instagram.com/p/B9rcB_7ArTk/

I’ve started a programming community on discord. Click to join.

I’ve two free PDF tutorials for you

I also provide paid one-to-one mentor-ship about programming. Knock me up for classes if you need any.

Don’t afraid to ask me anything, message me anytime on social media.

Find me on social media – twitterlinkedin, instagram

References

https://reactjs.org/

https://www.gatsbyjs.org/

https://nextjs.org/

https://reactnative.dev/