You are in the right place because Dragana Žabaljac is here to help us answer that question and understand why React.js is great and what skills a good React developer should have.
What is your typical day at work like? Can you describe it to us?
First thing I do when I come to the office is have breakfast with my friends. We prepare it together, make some coffee and motivate each other to be more productive.
Then, I like to check with team members if there is anything I can help them out with. If yes, we brainstorm ideas and potential solutions for tasks, and if not, I usually play some music and continue working on solving some new interesting issues I came across.
How do you cooperate in a team and what are you working on?
The team is pretty versatile, there are people coming from different parts of the world and everyone contributes to the great atmosphere in their own way. Some of us started hanging out outside our working hours and we easily became friends.
The project is very interesting, not only for us but for everyone else since we’re working on a new technology stack. If we manage to do it right, everybody else could be migrating to that, so it really motivates us to give our best 🙂
Our client is Rituals cosmetics who has shops across the country, however, their shops are small, and there are a lot of products. To solve this problem, they decided to present their products on the endless aisle! This is a web app we make and which presents products, animations and details so that you could actually see what you buy. This is really one great idea on how to increase sales and provide users with great experience in a completely new way.
Can you tell us what are the advantages of using React.js?
Of course! Many people emphasize how React is their favorite web framework, and I couldn’t agree more. There are a few things I like about it:
- Speed: React allows developers to write individual parts and changes made in components which won’t affect the rest of the logic in the application. It boosts the speed of the process, since the work can be easily separated between developers.
- Flexibility: React code is easier to maintain than other frameworks, and is flexible due to its modular structure, which saves a huge amount of time and money.
- Performance: The core of the framework offers a virtual DOM and server-side rendering, which makes complex apps run extremely fast.
- Usability: Once you have learned JS, learning React is a piece of cake. I would say it can take a solid JS developer a day or two to understand basic concepts of React.
- Reusability: We can separate code in smaller components. But what if you could reuse all of those components in other parts of the app, and even in mobile development? Yes, React is that great.
For the past year I’ve been focusing more on Next.js, a React framework which makes React even more amazing. Next.js allows developers to build full stack applications using a single toolset while delivering an improved user experience that results in a faster initial render of a page.
What skills are necessary to be a good React developer?
Well, it is very important to start with the basics of programming – HTML, CSS and JS. While you are reading documentation and many other different resources, it would be good to apply that knowledge right away. In that way, you will know whether you have really understood something, and even if you haven’t, to solve the issue on time.
When you finish with the basics, you can move on to the process of learning to React. It is desirable to constantly keep up with the latest technologies because everything changes very quickly and improves, but you should also know that the person who knows absolutely everything probably does not exist. 🙂
Besides technical skills, it is very important to develop your own skills. Problem-solving skills, communication, organisation, demonstration of initiatives, teamwork – all of these are the things we are currently improving, and we can advance a lot.
What advice would you give as an experienced React developer? Would you recommend some learning material?
- Don’t skip reading official documentation. My mentor Dejan explained to me that only if you follow official docs you can understand everything in depth. React documentation provides you with very detailed explanations, examples and various interesting tasks to do.
- Always use git to save and track changes in the created code. In that way you can easily take a few steps back and reconsider the things done. Also, it’s especially helpful when there are several people working on a project with a lot of different features.
- Never stop developing and learning. Follow trends, learn about new technologies and code as much as possible. You can’t learn programming without spending many hours practicing.
- Work with someone. Let that person review the code you’ve written and give you feedback. It’s #BetterTogether.
- Refactor. Go back to some old code you wrote earlier and rewrite it. You’ll learn a lot, and you’ll notice how much progress you’ve made.
- Don’t code everything from scratch. Use the proven libraries and frameworks, you will be more efficient and less repetitive.
If you like Dragana’s working day routine and would like to work on international projects with well-known clients, we are a perfect match. Check out our vacancy. We can’t wait to meet you!