DEV Community

Cover image for Which attributes make a good developer?
Hannu-Daniel Goiss
Hannu-Daniel Goiss

Posted on

 

Which attributes make a good developer?

I guess most of us are involved in software development either as developers or as testers, project managers, consultants, product managers,...

Which attributes make a good developer? What has made a difference in your personal experience?
Some of the attributes on my list that make a good developer are:

  1. They write clean code: It is important to have code, which is not just understood by whoever developed it, but also by others. Good code is self-explanatory and easily maintainable. Any other developer must be able to pick up in the future and either add new features or resolve bugs. Code is useless if this is not the case.
  2. Attitude: Have you heard the saying "you attract what you are"? People with (1) a "can-do attitude", (2) a willingness to learn, (3) an open-minded mindset, and (4) a desire to improve will also attract people with the same attributes. If you want to improve, you need to first work on yourself. While teams should of course be balanced and contain a wide attribute of characteristics, certain attributes should be common. This goes along with the next point.
  3. They work in teams: problems nowadays cannot be solved by one person alone. This involves working with others to achieve common goals as well as sharing knowledge and growing new-joiners and more junior developers.
  4. Willingness to learn something new: We live in a fast-paced world. This is even more true for developers. Good developers have a constant desire to learn something new, be it new development frameworks, new programming languages, new technologies,... Any developer knows that in a few years his knowledge will be outdated, hence he must keep learning.
  5. Experience: Every experience makes you grow. When I was younger, I thought that I knew everything. Turns out that I didn't and now I know that I still don't know everything and I will never. While I didn't learn everything, I understood that I get better with every experience I make. This applies to everything in life, not just development.

What do you think? What would you add to this list? Or what are bad attributes for a developer?

Top comments (15)

Collapse
 
anshuman_bhardwaj profile image
Anshuman Bhardwaj

first of all, thanks @hannudaniel for curating this list.

To sum up:

  1. Communication is the key in any job, over my career I've come to realise is doing anything even as simple as changing text of a button comes down to how well you can communicate with your manager, your team, your client and most importantly the user.
  2. Compassion, sometimes developers tend to overlook peer's contributions. One should always be humble and treat everyone with compassion.

A bad developer on the other hand, is one who

  1. Never documents or leave helpful comments in code. No matter how good it's going, there will always be a time when you have to look back, for testing or maybe debugging. So always leave comments or better write proper documentation.
  2. Thinks they know everything. Believe me you don't and you won't. Also, it's not expected for you to know everything. You must know how to find the answers.
Collapse
 
hannudaniel profile image
Hannu-Daniel Goiss

yes, I agree with that sum-up. about this statement: "Believe me you don't and you won't. Also, it's not expected for you to know everything." --> yes, it's not expected to know everything. but there are a lot of people, who think they do know everything. And that's not a good mindset.

Collapse
 
anshuman_bhardwaj profile image
Anshuman Bhardwaj

yes, Indeed people should be humble. I work with experts like literally experts and I am amazed by how humble they are with suggestions and learning new things. Senior engineers should support young minds and help them learn rather than putting pressure on them.

Thread Thread
 
hannudaniel profile image
Hannu-Daniel Goiss

100% agreed!

Collapse
 
huylong profile image
huylong

Thanks for your sharing

Collapse
 
tratatuy profile image
Tratatuy
  1. Docs - yes, but clean code explains itself and don't need comments.
  2. You just described "stupidity pike", many developers face that but how they can handle it depends of personality and manners.
Collapse
 
anshuman_bhardwaj profile image
Anshuman Bhardwaj

That's true, clean code doesn't need comments but adding some really helps for new developers, specially young minds.

Collapse
 
bioleg profile image
Bioleg

You forgot about correct use of google 😅

Collapse
 
anshuman_bhardwaj profile image
Anshuman Bhardwaj

Good catch, the list is extensible.

Collapse
 
hannudaniel profile image
Hannu-Daniel Goiss

that one is important! 😅

Collapse
 
marissab profile image
Marissa B

I'll chip this in: A willingness to share what you know. I'm not talking about spoon-feeding info to newbies, but being willing to step someone through a process you made or explain a solution to something is great. I've met some old-timers who acted weird or passive-aggressive when asked to share info.

Collapse
 
hannudaniel profile image
Hannu-Daniel Goiss

I've also met a lot of old-times, who are either only spoon-feeding or actively trying not to share info. that's one of the worst kind of behaviour... :/

Collapse
 
huylong profile image
huylong

Thanks for your sharing

Collapse
 
freita_browning profile image
Freita Browning

Thanks for catching that, the list is extensible.

An Animated Guide to Node.js Event Loop

>> Check out this classic DEV post <<