Ethereal wide background with subtle blue gradients and floating geometric shapes, reflecting the multifaceted skills of a full-stack developer.

Who is a Full-Stack developer? [meet the Primotly team #3]

17/01/2023

Hi, Primotly here! And this is the third part of our series of articles in which we present a behind-the-scenes glimpse of working in IT. Today you will meet Maciek. He will tell you about the work of a full-stack developer.

The "Meet the Primotly team" series features interviews with experts working in various areas of web development. This is a great way for beginning developers to find the inspiration or spark to push them toward specific technologies and competencies. For people who are looking for an IT job, this will be a great way to get to know our work culture and Primotly team members better. Two other articles have already been published as part of this series:

Today's guest will talk about a career path that combines both roles.

Maciej Kemnitz has been a member of Primotly for the last 4 years, acting as the company's front-end tech lead. He has over 9 years of experience working with web technologies. He has helped build company websites like znanylekarz.pl (docplanner.com) and slowhop.com. He is passionate about the business aspect of web applications.

2-in-1: A full-stack developer

Can you briefly explain what a full-stack developer does?

A full-stack developer deals with the programming of the whole application. It can be said to be a combination of front-end developer and back-end developer. My duties also include writing things in the database and configuring the environment. However, a full-stack developer does not handle DevOps duties. I have to know the configuration files on the front end and the technologies that support programming in React. DevOps, on the other hand, will be responsible for deploying and uploading data to the server.

In what types of organizations and companies is a full-stack developer best suited?

I think it is impossible to exclude any type of organization here. A full-stack developer is actually able to fit in anywhere. Of course, everything has its pros and cons, and sometimes it works better to separate the roles into front-end developer and back-end developer. I am sure that working with a full-stack developer can definitely save time. One person does the front end and the back end, so the whole process is faster and requires fewer iterations. A full-stack developer can navigate through the entire application. Knowing all the dependencies in the project makes it easier to propose the right solutions. On the other hand, broad knowledge means that a full-stack developer may have less knowledge in very specialized areas.

Why did you decide to be a full-stack developer?

At the beginning of my career, I only did the back end. And one day I was offered to do the front end as well. I thought I would give it a try. It turned out to be quite easy for me to expand my competence.

Which is more important: the back end or the front end?

Is it easy for a back-end developer to learn the front end?

Switching from the back end to the front is not that difficult. It is worse when you have to deal with the opposite situation. Because the back end is a much broader concept. I just started working on tasks as a full-stack developer. I gained knowledge on the fly. As a senior, I didn't have much of a problem with it because I knew the technologies. I just had to learn the front-end framework. It may have gone a little slower in the beginning, but I certainly can't say that it was accompanied by some transitional period of increased learning.

Which is more exciting - the front end or the back end?

The most exciting thing is to do your job well. For me, it makes no difference whether it's front end or back end. Previously I worked with PHP language, which is only on the back end. I found this knowledge very useful, but today I am unlikely to develop in this direction anymore. Now I'm glad that I'm working with JavaScript and TypeScript because it gives much more possibilities – both on the back end and the front end.

What are the benefits of working with a full-stack developer instead of a separate front-end developer and back-end developer?

The first advantage is that there is no need to share resources. One person replaces two. A full-stack developer knows the whole application structure, so it's easier to find bugs. It's also easier to propose business solutions when you see the big picture. When you know what is happening on the front end and on the back end, you can more easily plan the entire path for the digital product. When resources are shared, you can sometimes choose the wrong solutions because one developer knows very little about his colleague's code. Full-stack developer’s work can also take less time because of less communication.

Advantages of working as a full-stack developer

What do you like most about the work of a full-stack developer?

The coolest thing about my job is doing the whole functionality of a website or application. When you work only on the front or back end, there is not so much satisfaction when the project is finished because you only did some part of the whole. The front end and back end are not coded in parallel, so when you only do one of the two, you then have to wait for someone else to do their job to see the end result. As a full-stack developer, I have everything under control, and when I deliver the final product, I know that everything works as it should.

Is it easy to find a job as a full-stack developer?

What are the opportunities on the job market today for a full-stack programmer? Are there more or fewer offers when compared to back-end or front-end developers?

As a full-stack developer, you can do front end and back end, so theoretically, both types of jobs apply to you. Hardly anyone will decide to reject a full-stack developer just because he combines 2 types of competencies. This is certainly an added value and not a disadvantage. It seems to me that a full-stack developer is more often needed by small companies, where the position is not split between 2 employees. In large companies, it is more common to hire a single front-end developer and a single back-end developer. As for the number of job offers – most are separated for front-end developers and back-end developers. Offers aimed specifically at full-stack developers are less frequent. Often the criterion for admission is knowledge of specific technologies. There is such a thing as a JavaScript programmer. This language is used for both the front end and the back end, but not all technologies offer such versatility.

What are the characteristics or competencies of a good full-stack developer?

I think a good full-stack developer must have a lot of back-end knowledge. Without this, it will be difficult to progress. The ability to think analytically and logically is also very important. On the other hand, you need to be very familiar with the application architecture and have an aesthetic sense. In short – you need to combine the qualities required on the front end and the back end.

What career path should a novice programmer take to become a good full-stack developer in the future?

As soon as you start working with the code, try to understand the whole application, its functioning, and the flow of information. If you work as a front-end developer, get interested in how the back end works. It is worth noting here that a full-stack developer works best in the web world. So it's worth getting familiar with how HTTP works in the first place. In my opinion, it is better to start with the back end if possible. Once you understand how it works, the front end will go easy for you.


Technologies that full-stack developers should know

What technologies does someone who wants to become a full-stack developer need to know?

Even if we only talk about the web, it will be difficult to give a clear answer. This world of coding is highly divided. First of all, you need to have a good understanding of how the Internet works. You may simply know Python, which will work well on both the front end and the back end. The same goes for JavaScript. However, few technologies work on both the front end and the back end. All of these languages are often mixed. What else? It is certainly useful to know HTML and CSS. It's also good to have some DevOps knowledge - like what AWS is and what services it provides.

And how does a full-stack developer get along with React and Symfony?

React is one of the most popular front-end libraries nowadays. It has a large community and support, so it's a great choice for a variety of projects. You can easily integrate React with Symfony, which is a major PHP framework. Symfony also has a large community, as well as good documentation, and not so many bugs. It’s a very powerful tool that provides everything you need to do both front end and back end. However, you have to keep in mind that this is where the other technology, PHP, comes in. I think it will be much easier for a full-stack developer to work with React and Node.js.

What goes into your basic technology stack in Primotly?

  • JavaScript / Node.js

  • HTML

  • CSS / SaaS

  • MySQL

  • NestJS

  • React

Where do you get the knowledge that a full-stack developer needs?

React – overview of the React documentation and related resources.

Symfony – documentation.

Node.js – API reference documentation, ES6 features, and Guides.

Stack Overflow – A public platform building the definitive collection of coding Q&A.

What kind of projects do you like the most?

I really like building marketplaces because, on the one hand, there are users, SEO, and nice app design, and on the other hand, there are many algorithmic issues hidden underneath. The invisible back end has to work great for marketplace management to be effective. This combination of knowledge from different worlds is the most interesting thing about it all

If you feel that we fit together, be sure to check the Career tab, see the current job offers or just send us your CV so that we can get to know each other better!

Ma
A man posing confidently in a white shirt featured in a professional context.
Maciek Kemnitz
Full-Stack Developer

Latest articles

Illustration of a fractional CTO working on a laptop with flowcharts and code screens, highlighting CTO as a service benefits

Business | 29/05/2024

Why Do You Need a CTO in Your Company?

Łukasz Kopaczewski

Businesses, regardless of their size, are increasingly relying on innovative technological solutions. In this context, the role of the CTO becomes not only important, but even essential for any organization that wants to grow, remain competitive and achieve long-term success. So let's take a look at the main reasons why the presence of a CTO can be a key factor in creating and strengthening technology strategy and achieving a company's business goals.

Read more
Illustration of a team dealing with legacy code, featuring three people collaborating with gears and a rocket launching from a computer, symbolizing strategies for handling legacy code effectively.

Development | 24/05/2024

How to Work with Legacy Code? Strategies and Tips

Jakub Wachol

Many organizations run on software that was written in technologies that are obsolete or using approaches that are no longer used today. While these may seem like marginal situations, they happen quite often. It is in such cases that the problem of how to deal with legacy code arises.

Read more
Illustration of a woman analyzing financial data with charts, coins, and arrows symbolizing the concept of Fixed Price contracts in technology.

Business | 15/05/2024

Fixed-Price Contract: Benefits for Your Company

Łukasz Kopaczewski

When looking for a Software House to cooperate with, you need to consider many factors. Some of the most important are the price of the services and the method of billing. The two most popular types of contracts are Fixed Price and Time and Material, although you may also encounter a mixed model. Today we will look at the Fixed Price model, which offers stability and predictability to clients.

Read more