Table of Contents
Welcome to the IT Jungle!
The IT sector is a career paradise where many of us have found our calling and a way to make a comfortable living. But letās not forget that nature can be cruel, and this sector, a hostile place.
Professionals from all over the world, with different technological skills, compete in a market that is increasingly global and saturated for the job opportunities that any programmer aspires to.
In this place, itās easy to make friends, but even easier to become prey for another animal who, like you, wants to become the king of the jungle.
Iām Carlos Sala, a software developer, and today weāre going to take a tour through the world of programming; both in the academic phase, in the institutions that train future programmers, and in the subsequent work environment within technology companies.
What types of programmers are there? What are the most common problems that arise among colleagues in the same field or company? These, and many other questions, will be answered throughout this safari.
Grab your backpack because weāre starting!
The Wildlife: Types of Programmers
Just as we canāt tell a story without knowing the characters, letās begin by introducing the main types of programmers, according to their skills, that we can find in this ecosystem.
Iām sure you already knew some of these, even if itās just from watching a documentary on Discovery Channel.
Frontend Developer
The first of them all is the frontend developer. The most common of developers.

These programmers, if we can call them that, are responsible for building the visible part of websites or mobile applications using libraries like React, Vue, Angular, or Flutter. They are designers turned developers, who have learned a bit of JavaScript, HTML, and CSS.
One of their most striking characteristics is that they always come equipped with their Mac covered in stickers of the technologies they control. Without it, they feel naked and show it off to prove to everyone that they are into programming. Like when a child dresses up as an adult.
Contrary to what may seem from the outside, developing the client side of a web or mobile application presents challenges such as user interface quality standards or functionality when we lose internet connection on the device itās running on. So having one of these specimens with several years of experience on the team is absolutely necessary to ensure these requirements are met.
Backend Developer
Did you hear that? Itās the growl of a backend developer.

Hidden in the shadows, backend or web server programmers are responsible for programming APIs and microservices in languages like Python, PHP, or Java. Connecting to and querying databases is also the responsibility of this solitary specimen.
At birth, backend offspring are abandoned by their parents to fend for themselves. It is believed that this is one of the reasons they end up embracing the darkness behind servers. But only they know what truly goes on in their heads.
The solitary life of these programmers leads them to consume substances to alter their state of consciousness and self-harm. It is common to see adult specimens with scars all over their bodies.
Game Developer
Donāt make a sound! That thing you see there is a game developer.

Game developers live in hermetic communities where they only interact with others of their kind. Within these communities, game devs are organized according to the game engine they use, be it Unity, Unreal Engine, or any other.
Game dev specimens are very different from each other because who hasnāt wanted to create video games at some point in their life? Ultimately, these types of programmers write code because they have no other choice, but their life goal is to make those game ideas they dream about come true, becoming game designers.
They are generally very territorial animals, so I recommend not approaching them if youāre not part of their guild.
Artificial Intelligence Developer
Next up is the artificial intelligence developer, in Latin homo cerebrus. We can unmistakably identify them by the bulb on their head, commensurate with the size of their brain.

These programmers have a pathological fixation with Python and reject all other languages. Their skills are more mathematical than programming, with the latter being limited to memorizing machine learning algorithms and understanding the concepts that revolve around this discipline such as: neural networks, natural language processing, or generative models. This remix of terms sounds more complicated than it really is, as most of these developers make use of libraries like TensorFlow that offer higher levels of abstraction and expose an easy-to-use API.
Trying to converse with an artificial intelligence developer about anything other than their work is mathematically impossible; youād better invest your time elsewhere.
DevOps
Last but not least, we have the DevOps.

The DevOps folks are responsible for improving development processes, continuous integration, and software delivery, through the use of Docker, automation tools, and scripting. The figure of DevOps in a company is crucial for freeing developers from such tasks and enhancing productivity, as well as for solving problems in the infrastructure of systems.
When they are born, DevOps are normal programmers, but at some point in their maturity, they decide to leave the nest and abandon programming. DevOps are the most coveted profiles by companies, as they are not a very numerous species.
Itās worth noting that due to the stress of being present in all projects of the company and the irregular shape of their skulls, they live in a permanent state of anger and are very emotionally unstable.
Hybrid Programmers
In addition to these 5 species, there are a few more, less representative of the sector. So we wonāt mention them to make this any more complicated than it already is.

But what I find appropriate to mention is that there are hybrid programmers with characteristics of two or more of the types we just mentioned. These are capable of performing tasks in each of the fields in which they have skills, but they usually have less specialized knowledge in all of them.
A good example of these hybrids are full-stack developers, a mix between a frontend and a backend programmer who is capable of developing websites or applications from the client to the server.
The Ego of Programmers
In addition to the characteristics weāve seen that each of these types of programmers has, thereās one they all share in common: they all believe their specialty is the most complicated in the sector.

It doesnāt matter which of the different species of programmers you talk to. Each will always find an argument to defend that their work requires the most qualified professionals and will downplay the importance of other roles. For example:
- The frontend developer will argue that the UI of a project is the part that is directly in contact with users and therefore requires the most care.
- On the other hand, the classic argument of the backend is to talk about the complexity of queries in relational databases and architectures like microservices.
- Game developers often belittle any other programmer outside their guild by saying that āthose are boring jobs.ā
- Those dedicated to artificial intelligence, under the excuse of having to use mathematics, although they actually use libraries transparently, believe their field is the most important. In addition to the concept of artificial intelligence, everyone talks about it outside and within programming.
- DevOps, directly, as they used to program before and now create more sophisticated scripts, feel their role is an evolution compared to programmers.
Who Is Right?
In reality, none of them are wrong when discussing the difficulties they encounter daily in their work, but theyāre leaving out the variable that everyone else also has problems like yours that youāre not considering because of ego.
With premises like these, imagine the tone of the conversation between one programmer of each type when the question arises: āwhatās more difficult?ā Since, in turn, itās implicitly asking, āIs your job easier than mine?ā which can easily be interpreted as a provocation or lack of respect.
Consequences of ego among coworkers
As someone whoās been specializing in frontend for a few years, I can tell you that itās very common for a coworker to jokingly make a comment like āyour job is very easy, you just have to style buttons with HTML and CSS.ā And we know that between jokes, thereās usually a coded message.

These frictions between coworkers within the same company, although more common among junior programmers, are best resolved as soon as possible by talking to the other person clearly and telling them that their comment bothered you. If at some point you have to work side by side on the same project, it will be important for the relationship to be healthy so that there are no communication problems when you try to talk, for example, with the DevOps person to solve a problem with continuous integration.
Defend your territory in the jungle without using the violence.
Competition in Programming
I would love to say that disputes among programmers only occur between species, but the truth is that these conflicts often arise among members of the same group, but for different reasons.
Life is a Competition
From what Iāve observed in my years of experience, competition during the study period and in the workplace environment is what motivates one monkey to outdo another.

If this were a candyland, all programmers would shake hands and form a circle while singing, but the reality is quite different.
Since we are teenagers, we compete with our grades for a spot in the university we want to attend. Once in university, thereās competition to be hired by the company you want to work for, and when we start working, weāll continue bickering with our coworkers every time thereās an opportunity for a promotion to a position of more responsibility and there are several candidates.
Watch your back and accept the rules of the game because in the real world, thereās no happy ending where we can all be winners. The more sought-after the position, the more tension and dirty tricks there will be among competitors, as is the case, for example, in the gaming industry, where anyone would sell out for the game designer position.
Donāt Compare Too Much
Since we have to compete one way or another with our peers, letās do it respectfully and intelligently.

I know this phrase is a clichĆ©, but avoid comparing yourself to your colleagues. And if you do, let it be with the intention of learning from those with more experience. It serves as a driving force for me to acquire new knowledge when I feel like Iām falling behind among my peers.
Obviously, when you compare yourself to another programmer, there will be things that one knows and the other doesnāt because each has a different background. You could only be totally aligned if you had identical lives in the past and had the same capacity for learning. Which is totally impossible. So stop calculating how much better or worse your colleague next to you is based on the years of experience each of you has because youāre fantasizing without sense.
Programming in Perspective
Even with its ups and downs, the career of a programmer is very stimulating for those of us who enjoy constantly learning new things in our work.

Weāll have arguments with our colleagues, and some will stab us in the back to blame us when weāre not around, but doesnāt the same thing happen in any other professional sector or aspect of life?
I hope youāve enjoyed this safari guided through the world of programming. Once again, Iām Carlos Sala, a software developer, and see you soon!
