Hello, community of developers! ReactJS and React consistently occupy leading positions in the IT marketplace. More and more vacancies appear on the labor market, and courses offer to quickly master a new profession. To prevent the readers from googling: “Who is React native developer”, I wrote this review material.
Who are React and React Native developers?
As strange as it sounds, React and React Native are completely different things. The first is a library that allows you to work with interfaces and create popular web applications. The second completely lacks layout tools – you shouldn’t expect cozy HTML and CSS. But there is no reason to grieve for a long time, since this technology makes it possible to create applications for iOS and Android. It is actively developing, so updates are often released – some of them significantly change the functionality, but always for the better. React Native compiles with native app components, adding a ton of features.
A programmer working with React, before and in the process of studying the library, manages to master a number of related technologies: HTML, CSS, JavaScript, npm, git, ES6, Babel, WebPack, Redux. You cannot become such a developer without knowing the basics – layout and JS.
Table of Contents
Requirements of IT companies for React developers of levels: Junior, Middle, Senior
Requirements for developers depend on the company. Therefore, the best option is to go through as many interviews as possible. Often, even this process itself significantly improves the beginner, because he understands what he is missing and can tighten the base until the next interview.
Before interviews, you should improve your skills in the technologies listed above and create a portfolio. It is often beneficial for the employer to take on the team of charged newcomers who are ready to develop and try to move towards the goal independently.
Do not forget about soft skills – the development takes place in a team, which means that the pumped-up skills of interaction, load distribution, conflict resolution will be as relevant as possible.
Junior React developer
Usually such programmers are issued just beginners. They know the base and may even have worked as layout designers or JavaScript developers. There are little chances that they already have some kind of portfolio. It is important for a junior to find an internship or a job where he will be accompanied by a mentor – in this case, he will pump faster and be able to move to a new level. At this stage, you need to continuously develop and try to delve into the selected technologies as much as possible. You can become a junior React developer in a few months or six months, if you take some courses.
Middle React developer
A middle-level specialist is a person who is ready to turn from a “hand” into a “brain” and begins to move in this direction. That is, he already sees the needs of the customer and can solve them. Development of web applications and other products becomes a task for him, mobile app developers starting with understanding the goals of the client.
Often it is at this moment that there is an urgent need for knowledge of the English language, as a specialist begins to be entrusted with presentations of the work done, but this greatly depends on the company – some may not work with a foreign market, while others may entrust presentations only to seniors.
Senior React developer
In addition to the ability to create a well-built architecture, he also needs soft skills. Team building, mentoring and management skills will be especially relevant. Often it is a trained programmer, and not a separate mentor, who becomes a teacher for beginners.
What should an advanced React developer know?
In addition to the library itself, a specialist must be proficient in technologies such as HTML, CSS, JavaScript, npm, git, Babel, WebPack, Redux. Skills of working with other tools can also be useful, but this already depends on the job. But the main thing is not the hard skills that a person has already mastered, but how quickly he can learn new things. So, if a developer has improved this skill, he can prepare for any position or come to the company and learn a lot in the course of work. A react developer’s salary directly depends on how quickly he absorbs information.
Tips for an advanced React Developer
- The main advice is not to go into fanaticism. Either approach is good for one, but not the best for another. The desire to learn new things and the speed of perception also help – if you keep the first and pump the second, a React programmer will cope with any task.
- Always be curious. And most importantly, don’t be afraid to program and make mistakes.
Read the official documentation, watch for changes in standards. Update what is in your head – forget the unnecessary, add up what is relevant.
Don’t be afraid to ask more experienced colleagues questions. The only thing that is important to understand is that the questions should be as specific as possible. Experienced people, as a rule, are happy to share their experience, but only if they understand and see that a person is asking questions seriously and is really trying to figure out a particular problem, and not just trying to solve it with someone else’s hands.
- Take care of the depth of knowledge more than its breadth. Depth is the foundation. The stronger the foundation, the better and more durable the temple of your knowledge built on it. Expertise is possessed by someone who understands the deep essence of things, and does not have only a superficial idea of them. There are things that don’t change even over time. These are the most important ones.
- In the modern frontend world, new technologies, techniques, tools and approaches appear almost every day, so it is very easy to fall out of its current context, which can drastically reduce competitiveness and productivity.
Today there are more than enough channels for monitoring: this is the aforementioned digest, and RSS / Twitter feed with a subscription to thematic (micro) blogs, and periodic mailings, and link aggregators such as echojs.com, frontendfront.com or heydesigner.com. For fans of social networks, there are reddit.com/r/Frontend, hashnode.com and medium.com (with filtering by the desired tag), public pages and channels in slack or telegram. Also, we must not forget about podcasts that have been mushrooming lately – Web Standards, Frontend Weekend, Five-Minute React, Five-Minute Angular, Fronters, devschacht and many others.
- Be active. Try to be one step ahead and do a little more than the task requires (if possible and the budget allows, of course).
Have you made a website with the prospect of future support or while working on a large project? Add a style guide and make life easier for all developers on the project. Finished the layout faster than you planned? Add at least basic accessibility support, check the print styles, and make sure your animation runs at 60 FPS. Master and offer to add offline support, evaluate the possibility of creating a PWA and compete for 100 points in google page speed.
- Educate yourself. Self-learning is good, but teamwork can only be learned by working on real projects. But it is worth remembering that work is not always a guarantee of the growth of knowledge and experience. For example: if you work as a layout designer, then you are unlikely to learn how to make applications in React correctly.
Therefore, if you want to grow not only in terms of $, I would recommend not to stop studying. And in order to learn deeper the layout, JavaScript, frameworks and various new technologies – you can create your own pet-projects in parallel. Solving real-world problems that really mean something to you is the best path to becoming a good developer. And if you manage to release your project in production and support it, then this is 2x boost experience.
- Do not be afraid to take the responsibility. Last but probably the most important tip. You can perfectly master any technology, become the god of CSS, JavaScript ninja and be a cool specialist in React. But if you don’t get into your own lifemates, regularly break the deadlines, substituting the whole team, do not signal on time about problems on the project, disappear from the workplace without explanation, run away to conditional training during a critical situation on the project, and so on – then in such situations, the value of your knowledge will rapidly roll to zero. Unfortunately, the usual set of words at the end of every second resume (about responsibility, perseverance and resistance to stress) in fact turns out to be just a set of words, and finding a truly responsible and reliable specialist is still a quest.
Conclusion
To summarize everything, I hope these tips will help you to become an advanced developer, but they don’t solve all problems. Front-end development is constantly changing. And the training will never end. This means that no matter how many books you read, no matter how many meetups you visit or make projects, the training must continue if you want to stay in touch with the world of advanced development.