DEV Community

Anita Olsen
Anita Olsen Subscriber

Posted on

What Qualities Make a Great Software Developer?

Software developers should know their chosen programming languages, be able to use them, debug them and have problem-solving skills.

What qualities, beyond technical knowledge and skills, should a great software developer have to not only survive, but also thrive in this ever-changing competitive technology landscape?

What qualities do you think make a great software developer?

Top comments (3)

Collapse
 
vbd profile image
Volker B. Duetsch

Some skills may sound rude but this is what I learned and experienced in now ~30 years of being a type of solution provider/problem shooter/dev.

  • at least a minimum of soft skills
  • should be open minded
  • should be willing to learn
  • should know how to learn
  • be able to ask questions and learn form the answers
  • be able to listen to someone else
  • should be patient
  • should accept that the knowledge can lose its value very quickly
  • should take notes for himself
  • be curious
  • team player to some extent
  • develop problem solving skills over the time
  • at least a bit patient
  • structured approach
  • self organisation
  • share knowledge and support others
  • give feedback and take feedback
  • do not take feedback as a personal insult
  • be able to communicate with none-devs at least to some extent
  • understand where his monthly salary comes from
  • don't over engineer - balance between technical perfection and pragmatic solutions
  • avoid FOMO
  • try to ignore imposter - i still can't manage it after all this time
Collapse
 
anitaolsen profile image
Anita Olsen • Edited

Wow, thank you so much for putting together this awesome list! โœจ

Collapse
 
wiseai profile image
Mahmoud Harmouch

Consistency in both learning and practice is the most important quality in software development, especially in web development, as emphasized in the MDN documentation being one of the three Cs. These principles are equally applicable to software development, where consistent coding practices and continuous learning are essential for building reliable and maintainable applications