When software releases become ever more frequent, the traditional organizational matrix of discrete development disciplines (requirements, architecture, design, coding, testing, integration, infrastructure engineering, release, operations, support, etc.) collapses into today’s “DevOps” paradigm.
Software demand is increasing up to the point of continuous delivery and release; and only factors such as supportability, security, regulation, quality control, lack of financing or brand management intervene will slow us down.
The traditional response to the challenge is to create very broad cross-functional teams from across the matrix. But such teams can be very large if managers rely on functional specialists.
Easier to manage on continuous delivery teams are developers who are skilled over the entire software life-cycle, not just one discipline. But such broad skills are not often found in a cost-optimized functional matrix.
Consider the effect of these trends on who gets hired: Companies will want to hire persons knowledgeable in a particular application domain, but who are skilled from requirements through design, coding, testing; build/release, operations and support. Doesn’t sound like a new hire out of college, does it?
Software demand is growing so great, that there is not only no time to test, not only no time to buy, there may also be no time to hire: The use of contingent staffing to provide DevOps support is on the rise, and we should know — DevOps services is our company’s business!
Finally, if teams of functional specialists are going to master continuous delivery, then a much higher degree of automation among tools across the development spectrum will be necessary. More on that topic later.
Have any comments or questions? Feel free to Contact Us. We’d love to hear from you!