Software quality is in decline #LinkedIn import

Cogs working together

If you are really passionate about your craft, you may have noticed that not all the people you work/interact with share your level of dedication, involvement, passion, ownership, etc.

Some people just wing it all the time ..and that’s alright, I guess, up to a certain point. People find themselves in all sorts of different situations and there are multiple stages in one's life; we can’t expect everyone to be at full throttle all the time.

But what we do matters and by either route we choose to take, doing our best work or just showing up and doing the minimum requirement to get paid 💰, we are putting stuff out-there into the world, which has an impact on the present and the future.

Disclaimer:

I do not mean to say that passion is enough. There are, of course, many many other factors that go into building quality products and services, such as competence, communication skills, openness, creativity and many others.

A few other examples of factors that, in my view, contribute to software decline are:

  • customers, that often tolerate crappy software. Granted, some end users don’t have much say in it, like for example the employees of a business that got a "great deal" on a license. If the software gets the job done, but is a pain to use, that’s a great deal for everyone - except for the user 😕.
  • the markets that are highly competitive and the businesses that want to hit the market fast (or first). With little incentive from the customers, many businesses choose to do things fast, in order to be competitive, even if that means putting out software of a lesser quality than taking the time to do the things right.
  • the complexity in any decent-sized project today is pretty daunting and it is often very hard for one individual to fully understand everything or stay up to date with all the diferent tools and technologies that go into it. Strong team communication, involvement and knowledge sharing help a lot here and if the team was built with this synergy in mind, these things should take care of themselves.
  • managers that are often incentivised to meet crazy deadlines, vs taking the time to build a strong, united and capable team.

Conclusion:

When hiring, we should look for passion in people at least as much as we look into their ability to spit out code or bring profit 📈.

When doing the actual implementation, we should focus on giving our best, stay up to date with the state of things, continue learning and honing our skills and find a way to derive meaning from our work.

We can trust that what we do matters, because other people get to use it - and as you might already know, using a product that just works beautifully and shows great attention to details, makes you know that someone, somewhere, cared about your experience. And then maybe, just maybe, by creating awesome experiences for someone, through our work, we might just encourage them to do the same for others, through their work.

PS 👉🏼 There's this video I watched a week ago, where a guy named Jonathan Blow talks about his experiences with buggy software; it kind of got me triggered to write this post and share my perspective on the matter. Check it out if you've got 10 mins to spare✌🏼.