Let's face it: there are not enough opportunities for people with little commercial experience when at the same time there is massive undersupply of experienced developers. There is no way around it. Companies need to hire graduates and juniors and keep them as long as possible. Only that can keep the situation healthy and fair. But at the same time business is not a charity and we need people to be productive. There are many boot camps that promise you to get a job. Some of them work. I can believe someone after intensive React course can be productive for example for agencies. But that doesn't work for everyone. In most of our projects (in current and previous companies) we needed more flexibility and ability to learn than just given set of tools. There is a massive difference between being able to build a countless number of nice and performing UI using a predefined set of good tools and being able to build scalable and complex software systems. That's why React is good to find the first job that pays, but NodeJS is a way to get a well-paid job in the long run (even despite crazy React rates). Below I list things (virtues and knowledge) that if I find in graduate I vote for taking person immediately:
- git - what is a repo, what is a commit, how to do a diff and a pull request; what is a merge and what is a rebase; where changes are physically
- async - what are events, callbacks and promises; in which order code (written without async/await) is being executed when we use them
- native types - how casting and coercion works; what and how we can use map, forEach, filter and reduce on arrays
- CSS - what does it mean styles cascade?
- networking - what happens when you enter an URL in your browser? What is a DNS? What is CORS? When a browser performs OPTIONS request?
- stack - discuss in case of React/NodeJS application what happens in the browser, what on the server side? What reads/writes from/to the database?
- HTML - how it renders? What is a HEAD tag? How to find what files have been loaded in the browser and, if they are cached.
- Debugging - given error in the developer tools console I want a candidate to find where is line causing the error.
Last but not least important:
- humility, ability to take criticism and will to learn
- team focus and will to resolve conflicts ASAP
- understanding that development is not only new cool stuff but maintaining and paying legacy debt