Architecture Annealing

The term “Software Architecture” can evoke the impression that it describes a blueprint that needs to be completed before actual development work can start. This association is natural given the origin of the term: The architecture of a building better be complete before the construction begins. Unfortunately, this vision is also at odds with what... Continue Reading →

The Management Proliferation Cycle

I think that most practitioners in the technology space will have come across a project with an incredibly skewed managers-to-doers ratio. Symptoms are typically long discussions that are detached from the on-the-ground reality, difficulties to build consensus about the right approach because of the number of opinions involved, and a way too long wish lists... Continue Reading →

Impactful Work Versus Salary

The common wisdom is that working in fields with high social impact such as environmental protection or education requires lowering one's salary expectations whereas some of the fields that have the reputation of being lucrative financially also face the suspicion of exploitative culture or frequent moral hazards such as finance or the petrochemical sector. While... Continue Reading →

The Reorganization Pendulum

Let us talk about everyone’s favorite pastime: Reorgs! There are many reasons why they happen, some very valid (like economic necessity or making sure the right people end up in the right position) some a bit less (e.g. a new manager wanting to leave a scent mark or sidelining an underperformer without stepping on anyone's... Continue Reading →

On Greener Grass Design Decisions

When making technology choices, most of us have to learn the hard way that almost every single decision we take comes with a trade-off. Most of the time technology choice A will have some advantage over technology choice B and vice versa. Very rarely a choice will turn out to be “Pareto-dominant”, meaning superior along... Continue Reading →

On Referring to People as Resources

I would like to address a pet peeve of mine: The unfortunate habit in some circles to refer to people as “resources“ in staffing-related discussions. In the past, I have heard phrases like “We will need more Java resources“ or “Can we find more DevOps resources”. In this piece, I want to argue that, more... Continue Reading →

Code Quality Stress Tests

Famously, there is no really good way to measure code quality. Tales are being told of shops that lift metrics like code coverage to the status of a sacred yardstick that business decisions can be based on and the absurd consequences of such practices. The best real quality metrics that I have found so far... Continue Reading →

The Hype Trojan Horse

The newly formed German government has recently signed a coalition agreement that emphasizes a new digital agenda. One of the proposals is to investigate the use of blockchain technology for land title registers and priorities of the digital strategy include AI and quantum computing. At the same time, we observe that for contact tracing during... Continue Reading →

Blog at WordPress.com.

Up ↑