React Developer: essential skills and the future of the role

Fotografia de Marina Pinho
Written by

Marina Pinho

Communication Manager
Este artigo também está disponível em português. Read now

Frontend, frontend… the art of creating websites that are not only functional, but also appealing and intuitive. But what does a Frontend Developer really do? What are the main challenges of this role? And how can someone follow this career path? In this interview, we talk with Maicol, a Frontend Developer at Dellent, passionate about technology and everything that involves turning ideas into functional interfaces. Throughout the conversation, he shares his professional journey, the experiences that led him to specialize in React, what excites him most about frontend development, and how he sees the evolution of the field with the advance of Artificial Intelligence. A relaxed conversation, but one filled with practical insights about code, design, and the future of web development.

Tell us a bit about your professional journey. How did you start in frontend development?

I started almost 13 years ago. Everything began when I was working at a printing company and wanted to become a designer there. I completed a degree in Graphic Design, and that’s where I first came into contact with HTML and CSS. From that point on, I was torn between following a graphic design path or frontend development. I started working as a designer, but I was always coding things on the side. The transition to frontend happened naturally, before I realized it, I was spending more time programming than creating layouts or design pieces.

When did you realize React would be your focus? Why did you choose it?

Angular.js appeared when I was already working with Frontend and WordPress, and it solved many problems we had, especially for those building features that opened only in pop-ups on websites. When it appeared, I fully embraced Angular and became a big fan of the framework, until Vue.js and React came along. 

I worked with all three for some time, but I noticed that the community was increasingly adopting React, and I realized I had to focus on just one to truly become a specialist. I ended up choosing React, and I don’t regret it to this day. 

The community ended up preferring React because Angular had several difficulties early on. When Angular 2 was released, developers who were already working with the previous version had to relearn almost everything, because the framework was completely different. React didn’t go through that, it evolved naturally, without forcing developers to relearn everything with each new version. Additionally, React’s syntax is more declarative and straightforward, you don’t need to “decorate” the code so much to make things work. That simplicity made it a favorite for many people.

Today there are other great tools, like Vue.js, which I see as an interesting mix between Angular and React. I also like Svelte, which has been growing a lot. Still, for me, React remains the best choice, especially because it offers many possibilities. What you learn with React for the web can be applied to mobile app development with React Native. The approach and concepts are the same, with only small differences. The community really valued that as well.

Programador concentrado a escrever código num portátil, com monitor externo ao lado e espaço de trabalho organizado e moderno

What kind of projects did you work on before reaching where you are today?

I’ve worked on a wide range of projects. From simple landing pages and institutional websites to complex backoffice systems with detailed graphical reports and large data filters. One of the most interesting projects was a desktop system built in React for a network of beauty and cosmetics stores in Brazil.

This system allowed the management of appointments, products, and even direct orders to the franchisor. The company was called Sobrancelhas Design, it had several franchises and needed a centralized solution to manage everything. Franchisees could install the application on their desktop and control the entire operation from there: scheduling, billing, stock management, and product orders.

The main group would send us requirements for new modules, and we developed and integrated everything into that system. Because it was built in React, several tools emerged from that project and were later reused internally and in other areas of the group.

What excites you most about frontend development?

What excites me the most today is seeing what I’m building. When I create something and can actually see the result, even when it seems impossible and I’ve spent days or hours trying, that’s what makes me happiest.

It’s not always about the delivery moment; sometimes it’s the project itself. Right now, we’re working on a very challenging project, and I’ve already built four or five POCs (proofs of concept) to test feasibility. At this point, I already want to deliver it exactly as it is.

Do you prefer working on logic, design, or the connection between both?

The connection between both. With only design or only logic, you don’t have a final product, just a feature or a concept. When you bring them together, that’s when you truly have a complete product.

Everything has its importance, but what I really enjoy is taking a layout, coding it, applying the logic, seeing everything work… and hoping there are no bugs [laughs].

Is there a project or feature you built that you’re particularly proud of?

Yes, there’s a project from 2019 that I’ll always remember. It was a React Native application created for students aged 8 to 12. It was a game, very similar to Duolingo, where users progressed through levels. For example, they could enter the Mathematics area, answer 10 questions, earn powers, buy secret questions, there were tons of features.

For me, it was one of the best projects I’ve ever worked on. We had a very tight deadline to launch the first version because the school year wouldn’t stop, and the release had to happen. Suddenly, we started receiving feedback from almost all students, and in the analytics we saw people playing for nearly 20 hours. The engagement rate was extremely high. For me, it remains one of the best projects to this day.

What kind of project are you currently working on? Is it a product, platform, or internal application?

Currently, I’m working on a product that allows the client to manage the information they publish on their website. I manage a CMS that we developed and, in addition, we’re building a studio associated with that system.

The idea is that instead of accessing the CMS and filling out multiple forms to publish an article, for example, users can do it directly on the final website, with drag-and-drop functionality, image editing, and immediate preview of changes.

It’s a system that sits before the website and feeds all its content. It has a dashboard and a backoffice where articles, partners, categories, and tags can be managed, everything that is then reflected on the website.

What sector does the client operate in? And what is your team’s role in that context?

The sector is telecommunications, and my team’s role is precisely to ensure the connection between editors and the final website. We create all the tools editors need so everything works smoothly, allowing users to access the site, read articles, view news, and receive recommendations through the algorithm.

Today, we not only develop the CMS but also other internal tools that support the entire process and make it possible for content to reach users seamlessly.

How is your day-to-day work structured?

Our team doesn’t have daily stand-ups, which I found strange at first, but communication is so good that it’s really not necessary. We’re constantly updating each other via Slack.

We work with tickets that are opened for us, but we don’t strictly follow Scrum. For the new product we’re developing, we’re still in the discovery phase, so the tickets are more focused on that stage. Once the product team defines the final concept, we’ll probably move closer to a kanban-style approach for better direction.

We have a defined task routine, but urgent items can always arise. We don’t follow a sprint-based logic, it’s more of a continuous flow, almost waterfall-style: tasks come in, and we execute them.

What stack are you using?

In these projects, we use React with Next.js. For the CMS, we used a tool called Payload CMS. We also use Redis for internal caching, where we need to manipulate certain information, and RabbitMQ for messaging. For example, when someone edits something, a message is triggered so listeners can update accordingly.

We also use Svelte, which is a “competitor” to React. We’ve worked with Solr as well, which acts as a type of cache, but later we switched to Varnish, which handles caching directly. Instead of the frontend consuming the CMS directly, it first goes through Varnish, which generates the cache and avoids unnecessary CMS calls. That sums up most of our stack.

Do you work closely with designers and backend developers? How does that collaboration work?

We have a design team, although they don’t work directly with us on a daily basis. They open many usability-related issues, especially for the CMS, and collaborate more closely with the frontend team. Our work also goes through them whenever changes or improvements are needed, but it’s not a very close collaboration on this project.

Designers are responsible for creating the final website layout, which the frontend then consumes and codes. Since we work heavily with JavaScript, our role is quite close to fullstack: we build many applications, manage our own databases, and handle data manipulation so the frontend can consume it directly and the product works correctly.

Overall, it’s a large team. It works roughly like this: it starts with the editor, then the requirements team, followed by the design team (which also does some frontend with HTML and CSS), then our team focused on JavaScript, and another frontend team working with Golang. There’s also a team responsible for content imports, since many articles come from external partners and need to be processed before returning to the CMS. And, of course, there are security teams as well. It’s a lot of people [laughs].

How do you think your work contributes to the client’s project? What impact do you feel you’re having?

I believe my impact lies in delivering everything editors need, in a simple way, to publish content on the new site. That alone is a major contribution. Beyond that, I try to build more practical and efficient solutions.

We’ve implemented several ideas, especially related to AI. Given how we work with articles, AI fits perfectly, suggesting tags, improving text, and even browser extensions to support editors.

We map these ideas, and personally, I love building small projects and POCs to validate whether they truly make sense. In fact, the new product emerged precisely from that kind of experimentation.

Pessoa a programar num portátil com código visível no ecrã, num ambiente de escritório com monitor externo, caneca e planta decorativa.

What skills do you think are essential for someone who wants to follow this career?

A lot has changed, but today I believe frontend developers can’t be lazy. Even when the work is tiring and repetitive, building similar features over and over, or dealing with small bugs that don’t break anything but shouldn’t be ignored, frontend requires constant attention and care.

Another essential skill is actively seeking feedback. That’s very motivating, especially for those starting out. Even comments like “we can improve the layout” or “the usability could be more intuitive” are what help you grow.

So, the fundamentals are: don’t be lazy, pay attention to small details, stay up to date (because frontend changes constantly), and know how to handle feedback and use it to improve.

Having design sensitivity is also very important. Understanding concepts like grids, spacing, and composition helps a lot when coding, because you’re building based on solid principles. And English is essential, it’s where you find most advanced content and references in the field.

What advice would you give to someone learning React now?

I’d say that once you learn React, you should also try to learn React Native, because in my opinion, you’ll already have about 80% of the journey completed. Ideally, you should focus on these two technologies and also learn how to deploy applications, because that knowledge allows you to build many projects almost independently.

And of course, don’t limit yourself to that, the main focus should always be JavaScript. React is just a tool that uses it, so learning both together is crucial.

Do you think the frontend developer role will change with the evolution of AI?

I think it already has. We still write a lot of code, but I believe beginners, more junior profiles, may feel some fear or rely too heavily on AI without questioning or understanding the code.

I use AI a lot myself. We’ve always used the web or Stack Overflow to find solutions or understand why something wasn’t working; today, I do that with AI. I use it as a research tool or to help when I’m focused on logic and need to build functions I already know how to do but want to save time. I ask the AI, review the output, and validate that everything is correct.

I believe that in the future, maybe not in the immediate future, we might reach a point where we simply describe what we want and see code generated automatically. But if we did that today, the result would be a broken project. We’re not yet at that level of reliability.

---

Do you enjoy working in Frontend? Explore all our projects here.