Table Of Contents
This might sound like a strange question, especially if you are a developer but I thought it is something that needs to be explained or defined for everyone to understand what the responsibility of a developer is.
I’ll start with the more common as well as funny angle when someone asks you what do you and they are not familiar with computers or anything technology related.
I’m sure a lot of us have been in this situation and it can be difficult to explain what you do and so we usually say something like “create or build things for the Internet”, which is the quickest way to answer the question without having to explain code, languages, servers, etc.
Then there’s the other side, where you are in the company of other developers and you get asked the same question or something similar.
When you answer, it can either turn into a debate or a knowledge share session. If it turns into a debate it is usually about the different types of languages, their benefits, disadvantages, or code editors.
At the end of the day, it usually results in one party believing that they are using the best language because of several personal reasons or code editor, or both.
In my opinion, a knowledge share session is a lot more beneficial as you will end up learning something you can use and hopefully be a better developer.
But whether it’s a debate or knowledge share I don’t believe it answers the question of what is a developer or what does it mean to be a developer.
It’s not all about languages or code editors, I believe there is a lot more to being a developer.
Developers should be more conscious about their part in creating and building things, this will result in better development for everyone especially users, the people that will use what you are developing.
For me, a developer is someone that is able to create something with the use of technology to help and benefit those who use it.
Unfortunately, there are a lot of developers who only worry about writing code, using the latest and greatest technology, and don’t know why or for whom they are developing.
As I mentioned in another post, I believe one of the reasons this happens is because teams are not in sync and included in the process.
Developers are only told that something needs to be built by a certain date.
If you are not included in the process as a developer, make sure that you ask questions, lots of questions because the more you know the better you can develop.
Why are you creating or building this?
Find out why you need to create this, perhaps you can offer suggestions and improve what needs to be built.
If you know the why, it is much easier to deal with how are we going to develop this.
For whom are you creating or building this?
As a developer, you need to know who is going to be using whatever you are building.
Usually, only UX designers are involved in discussions that deal with the users that are going to be using what is being developed.
If you ask any UX designer, this is extremely important knowledge because if you know whom you are trying to help you are able to make critical decisions from colors to font sizes.
This seems only relevant to UX designers but it will also help developers choose the right technologies.
What is the most effective technology to use for this?
When comes to this, I think developers are their own worst enemies.
One of the best things about development is also one of the worse things, how quickly things change and improve.
It might sound as though, I don’t want to learn any more or I’m against updated technologies, I’m not. I enjoy learning new things and I’m all for improved and better ways of doing things.
However, I think we as developers get so excited about something new that we forget to ask whether it will be the most effective option for what we are trying to create and build.
Even though the development community is always improving and making things better, sometimes because of who we are developing for, the latest and greatest technology is not the best option.
Don’t worry, if you can’t use it now, there will be many more opportunities to try it.
In summary, the purpose of a developer is not only to write code and learn technologies but it is also to bring value to others using their skills and understanding of technology.