Reflections on software design profession – introductory thoughts

There! That singular group over there! Can you see them?

 

Yes! They all are there, in the landscape of software development practice, a singular group of software development practitioners, from past, present and future of this line of work.

 

I can see them; they are getting feedback and learning a lot! ...as always.

 

They all have endured the hard times, going through hype and the everlasting sequence of booms, titles and silver-bullets; finding ways to triumph over complexity no matter the shortages in good tools and good managers; they have always found the way of simplicity to good design style.

 

They are the professional software designers of all times, although they would want to be called simply computer programmers or some other precise term, but terms about roles in our industry are so overloaded with so many meanings that perhaps retire names instead of creating new ones would be better.

 

They have been the focus of my attention for several years now, aspiring to grasp their noticeable traits of professionalism. After all, they are the foundation for the future of software development industry.

 

I have found them in diverse places, online and in person, but an attribute remains constant: modesty.

 

They are actual geniuses, gifted of mind and character; and if you hear them, they are convinced about their ignorance, about the colossal size of the gap between them and the skills of their masters. That is why they are always getting feedback and learning from others team members.

 

I have also observed that this kind of designer is not necessarily innate, fortunately; that is, there is not a fixed number of inborn professional* software designers. The skills can be taught and be learnt, tough not overnight.

 

*Notice that ‘professional’ here means that her or his earnings or salary depends on the effectiveness of her or his design decisions at all levels and the actual accomplishments of executable software; in contrast with just making drawings or static documentation, or just managing people.

 

Since there are no hierarchical levels in their profession, since they all are just practitioners in constant learning, anyone can teach them something valuable. So, I have been trying and will try harder to give to others what they have given me.

 

I hope that in the shoulders of giants, many of us can cross the chasm of our own ignorance, and the software industry adolescence.