Horizontal Developer

I emailed the title to myself Friday night with the intention of fleshing it out into a think-piece. Googling the term returned nothing, so I’m claiming this as the canonical definition.

It is best to contrast with the idea of the Full Stack Developer, which when Googled gives me the following from Laurence Gellert:

To me, a Full Stack Developer is someone with familiarity in each layer, if not mastery in many and a genuine interest in all software technology.

Layers in this case range from the hosting through to logic through to user experience and finally customer/business need. So familiarity with the technology used throughout the systems you use/write and why these are valuable.

The Horizontal Developer on the other hand is familiar with the range of processes required in the business. Their “stack” consists of being able to:

I have two questions:

  1. Could a company theoretically replace the whole set of [Product Owner, Product Manager, Team Lead, Technical Lead, Developer, …] roles with just Horizontal Developers.

  2. Is this just “being agile”, or is it more?