July 21, 2020
I attended a virtual meetup for international travelers last weekend over zoom. In the meetup, there were people coming from different industries such as teachers, scientists, sound engineers, software engineers, advertising agents, accountants etc. Getting to know what do people do by the title itself is an important networking skill as everyone likes being recognized for their contribution to the society.
An incident in the meetup caught my attention. There was a person who introduced himself as “Head of Software Architect”. Someone asked him “Oh you design house? Cool!”. He was like “No, not architect. Software architect.” Then the person was like “Oh you are a coder?” I couldn’t forget the face of the software architect. He was immediately triggered and tried to explain that “I am not a coder!” What’s funny was that I was pretty sure the person who asked the question on whether he is a coder thought it was a cool term instead of derogatory term.
Now what is a software architect? And why do they hate being called a coder? Today, I will introduce the common terminologies used in the technology world and their differences using our house as parody.
Imagine the process of building a large apartment. Who are the ones involved?
Property Developer – Firstly, we have the property developer who will acquire the land and make the development plan on whether they would like to develop it as a residential building or commercial building. To sell it or to rent it out.
Architects / Interior Designers – Then we have the architects who design the building outlook and oversees the constructions and the interior designers who design and decorate the house interior to make your house beautiful.
Construction Workers – Lastly we have the construction workers who put in the labor work to build the house as told such as stacking the bricks to make the walls, fixing the metal rods, etc.
In the technology space, coder is an equivalent term of the construction worker. To an outsider you may use all the terms such as coders, software engineers, programmers or software developers interchangeably. But to them the insiders, it is considered a shame to be called a coder as it implies their work is mostly hard labor and it undermines the value of their brain input.
Designing a software program, be it a web application, a mobile app, or a software installed in your computer, involve a large and complex system architecture.
Now, let’s look at some of the terms used commonly in the software development world.
Software Engineers / Software Architects – The terms are borrowed from the “Brick and mortar” world of architects and engineers. These are of the highest level among everyone working with software, typically known as the most expert coding dude in the hierarchy. They answer directly to the project owner, which is similar to the property developer in the property development world mentioned above. They know not only many programming languages, but also engineering and project management. They are capable of designing and implementing the overall architecture of the application.
Software Developers – In between Software Engineers and programmers. They are normally less experienced than the software engineers, but more experienced than programmers. Most of them are in charge of overseeing the implementation of a software development cycle, including translating what the software engineers designed to actual codes and communicating these requirements with other programmers.
However, as the web and mobile applications become larger and more complicated, various terms evolved for software developers. Below are the terms that you need to know to communicate with web-based or mobile applications software developers who work in the start-up companies and other tech companies such as facebook, google, linkedIn etc.
*Take note that they are not the one who design those icons and how they look. The ones who design those icons are normally User Interface (UI) Designers. And the ones who design which page you will go to upon clicking the “like” or “subscribe” button is called User Experience (UX) Designers.
Back End Developers – They develop the database of the system that stores our user ID, password and all the “under the hood” infrastructure hidden from us (Just like the bricks inside the wall). Normally they speak mysql, php, java, python, ruby (If they are developing under open-source system) or .net (If they are developing under Microsoft system).
Full Stack Developers – This is a beautified term to mean that the developers are equipped with everything the front end and back end developers know. Imagine you meet an app developer, you ask him “Are you front end or back end?” Instead of saying “No, I know both”, he would answer “No, I’m full stack”. That sounds cooler isn’t it? Just joking.
Here is a funny video explaining the Mysterious Life of Software Developers
Programmers – They are more experienced code writers who know at least 2-3 programming languages. They can apply their algorithmic knowledge to create more sophisticated levels of software coding.
Coders – Basically means anyone who can write some codes. They are considered the least trained or experienced level of programmers. However, take note that this term is seldom used by people inside the tech industry. They will call the programmers at the entry level as the “Junior Programmer” or “Junior Developer.” Using coder is an immediate implication that you are an outsider to the tech industry.
And you know the irony? We later found out that the person who called the Software Architect as coder is a computer science student himself. So don’t beat yourself up even if you heard about the above terms for the first time in your life. These are the technical jargon invented by the programmers in the start-up world as the industry grow bigger over time. Some might not agree with how they used the terms.
But think about the most valuable companies in the world at the moment of writing – Amazon, Apple, Google, Microsoft, Facebook, Alibaba.. They invented all the technologies we are using right now and contribute tremendously to our daily lives while the pandemic is forcing everything else to shut. Of course their engineers have the right to invent the terms as how they like to be called. Their world. They rule.
Hi all, I am Catie, one of the editors in the 3D Academy Blogs. I’m interested in any topic about start-up, swimming, gym, figure skating, learning new things and traveling. I will be sharing as much as I can on this channel about things I love. If you have any suggestion, feel free to reach me at firstname.lastname@example.org. Looking forward for the feedback :)