Monday, September 30, 2019

Upgrading the technology stack

If you develop software chances are that eventually your state of the art technology stack will fall behind...something that once was great stuff becomes old and outdated.

Using always cutting edge technology is simply impossible in a bigger company and bigger projects...as with every technology stack update you introduce regression...and since the customers have no direct benefit from this...eventually the company will cut the effort for staying up to date.

Something that works should not be changed unless there is a good reason for it.

And so we end up using Ant+Ivy and CVS and Java 8 in 2019...where everyone is using Maven and Gradle and Git and Java 11...and you have to argue constantly why...

Upgrading the technology stack of a department is not that simple...we have to move slowly and cautiously...and we will get there...and products will not suffer.

..and everyone will be happy...except those who will not.

Tuesday, September 10, 2019

Key persons

A key person is someone who's presence is absolutely required to resolve an issue...develop a feature...decide something.

When such a person is missing...is out of office by some reason...things tend to get stuck.

To avoid these situations the software development processes have evolved and they came up with the idea of cross-functional-teams and peer programming. These make sure that a knowledge about some topic is shared at least between two people...preferably with the whole team... nice and easy...no more key persons...done.

Thing is that there is a certain type of knowledge that cannot be shared...and this is experience...the luggage you are building during your professional career...and in some cases this is the key knowledge that makes the difference between you and Joe/Jane.

...but assuming that everything would be a shared knowledge ...and every team member could pick up your work and be able to continue it...how valuable would a person be in a team? ... what would be the difference between you and a factory line worker? ... companies would love that...right?

As much as some companies would like...there are roles in this domain where people are not interchangeable...although knowledge is shared...you will not be the same as Joe/Jane...and these persons will be the most valuable asset in the company.

There will be always a certain type of persons with that key knowledge...and you have to live with that.