The Problem

Many companies, especially large ones, have (tech) teams and hierarchy focused on improving the products that the teams are shipping (verticals), rather than the skill-sets of the team-members (or team as a group) themselves (horizontal).

This results in often poorly architected products, poor delivery cycles which don’t improve, poor core development – in which future changes or improvements to the product get implemented as “patches” rather than gracefully extending code.

Eventually this causes longer delivery cycles as patches become harder to write and control as time goes on.