I have come across this interesting paper. [what is it? answers of experienced sw developers] The result of the research lists the qualities of good software engineers grouped under three categories.
the items in the list are [yogun/kisa/mostly relevant to my experience]. As a software developer, you will find the items very familiar. but having them listed and defined nicely can give you[or me/ or us] a clear direction and open a path to more specified actions.
[My motivation: keeping myself reminded of these items, so in any random time at work, I can base my decisions, like what activities I should care more and how to handle them]
how to achieve this: defining them in my words, providing examples]
while I am sure that I will add more explanation and enrich the examples over the time, for now I tried to write at least one sentence for each at the begining.
Pays attention to coding details, such as error handling, memory, performance, style
— too obvious, too broad, and to be honest, doesn’t sound cool 🙂
Mentally capable of handling complexity; can comprehend multiple interacting
— this is related to abstract thinking capability. the most obvious example would be, given an example case (let’s say a payment UI and process, when they close their eyes, one should be able to imagine UI – server – payment system – db – other related service interactions for some basic flows. payment process – can be declined- when it’s not, this and that interactions happen.
Continuously improving: improves themselves, their product, or their surroundings
— again too obvious, I think this requires a some degree of passion to their jobs and/or the project they work. you can appreciate if one doesn’t have, but this is something you can’t achive with a brain on standby at work. this requires active participation. our brain tends to be lazy, wants to keep its sweet carbs inside. also, this is not a develper’s quality, my experience shows that it depends on your mood, the project, your salary, how you like your managers etc.
Honest: provide credible information and feedback that others can act on
this is important. actually, the ones that touches the softskills impress me much more than others.  important quality for a develper, the environment should support this.
- Mine ones:
- discussion with geniune good intentions
- discussion without fighting
- discussion with the posibility of learning
- discussion with the hope of improving my self
software developer based in England, worked on electron microscopes, banking&finance, service management, ecommmerce etc. mostly worked on .net, likes C#, some angular, little docker & google cloud experience