Historically, we have seen many small waves of innovation hit the information technology industry. Typically, these waves focused on either infrastructure (mainframe to distributed to virtual), application architecture (monolithic to client-server to n-tier) or processes/methods (ITIL, TOGAF, Prince2, COBIT to Lean, Agile, Scrum). What is radically different now is that we find ourselves in the midst of a ‘perfect storm’ that encompasses all three areas at once, which is why labels such as ‘Digital business transformation’ and ‘digital disruption’ are no exaggeration.
Some examples are:
- IT infrastructure as we know it is completely disrupted by lightweight container technology (best known by market leader Docker and its technology)
- Public cloud solutions (e.g. Amazon AWS, Google Cloud, MS Azure) are now sufficiently mature to convince even larger enterprises to go cloud-native and reduce in-house IT operations
- Agile software development teams transform from happy folks gathered around a Scrum board with multi-colored post-its to high-performance feature teams for which “Done = live” and “infrastructure as code” are central credos instead of marketing buzz
- Monolithic and traditional application architectures landscapes that typically accrued substantial technical debt over the past years, transform to distributed micro services-based models to allow value-added business logic to be quickly added or changed by those agile autonomous teams, to better serve the end users
- Organizations start to realize that bringing a new feature into production is something that should be possible within minutes, multiple times a day, without disrupting any business continuity. As a result, all waste in IT Development and Operations is removed by fully automating the lifecycle adopting reliable continuous delivery and deployment practices
Combining these ingredients helps organizations in arriving at a complete Rethink — or Reset — of this IT structure and capability. Agile product teams are able to utilize a modern, cloud-based and fully automated end-to-end stack to deploy their software products multiple times a day if needed. In parallel cloud operations teams, ensure the evolution and 24×7 quality of this stack to fully support the teams and to allow organizations to spend a maximum percentage of time and money to innovation, new products and services, and understanding end customers and market trends.
DevOps aims for a simple, yet important goal to make IT easier, faster and cheaper, to provide more value faster to the business/consumer/user. And that is the end game after all. DevOps, a philosophy that arose from an urgent need for better alignment, collaboration, and empathy between IT Development and IT Operations teams or departments, is now increasingly used to denote precisely the aforementioned key ingredients that constitute the New IT wave. Enterprise-wide DevOps stands for rethinking traditional IT practices and capabilities, including a product, process, and people perspective. DevOps is the ultimate search for flow in the delivery of IT services. Many firms are in dire need to find this flow before it is too late.
Many definitions of DevOps exist, and many of them adequately explain one or more aspects that are important to find flow in the delivery of IT services. Instead of trying to state a comprehensive definition on our own, DASA DevOps prefers highlighting six principles it deems essential when adopting or migrating to a DevOps way of working.
1. Customer-centric action
2. Create with the end in mind
3. End-to-End responsibility
4. Cross-functional autonomous teams
5. Continuous Improvement
6. Automate everything you can
DASA is the DevOps Agile Skills Association. This association is an open, global initiative to develop standards for DevOps competencies that will benefit the individual, team, and organization. DASA has set out to promote a knowledge and skills framework for DevOps based on the set mentioned above of principles for DevOps.
DASA develops and evangelizes a vendor neutral DevOps qualification program for professionals, generates interest and awareness for the need for knowledge and skill development, promotes open source certification for DevOps knowledge and skills and ensures the quality of training for the market through a logical and threshold-driven qualification program.
Anyone can participate in defining role-based competencies, learning paths and qualification schemes. All existing learning content that maps against the DASA knowledge and skill areas has value. DASA will map content and demonstrate relevance and will maintain an open and logical operating model for training delivery.
DASA firmly believe, and we see this reflected in the market, that the transition to DevOps goes hand in hand with a redesign in IT roles and responsibilities. Many traditional IT functions will soon be deprecated as we move towards DevOps teams in which team members become more all-around professionals with engineering skills, soft skills and a prime focus on all the DevOps principles mentioned in this article.
The key to working in this new environment is to recognize that there is a skills and knowledge set that needs to be present in every DevOps team. The distribution of these skills and knowledge may be different per team. However, each team will need to ensure that there is enough of each skill and knowledge area to ensure the service is delivered as required by the customers of the service.
Over the past couple of years, DASA has seen DevOps teams in various phases of development. Experience has shown, and in discussion with other DevOps practitioners confirmed, that there are specific skills and knowledge that can be discerned.
The 12 competency areas that constitute our DASA’s competence framework are divided in eight Knowledge Areas and four Skills Areas. The Knowledge areas are:
1. Business Value Optimization
2. Business Analysis
3. Architecture and Design
4. Test Specification
6. Continuous Delivery
7. Infrastructure Engineering
8. Security, Risk and Compliance
The Skills Areas are:
2. Team Building
3. DevOps Leadership
4. Continuous Improvement
The challenge for both the IT organization and the DevOps team is to ensure that the team has the right amount of each of these 12 competencies. And as the lifecycle of the IT service develops the balance of the required competencies is likely to shift. The goal is always to achieve a balance between Knowledge, Skills, and Behavior, of which the latter directly follows from having acquired the proper knowledge and skills that stimulate empowerment, mastery and purpose.
The interesting challenge for many IT organizations is: how do I go from my current population of specialists to a population of engineers with one of the two broad areas of expertise, supported by the skills. The answer of course lies in stimulating IT engineers to develop towards the inevitable new paradigm of IT. Will this be easy? No, but it will be the most exciting journey of personal and team growth that most IT people will ever have experienced. The good thing, though, is that organizations that have dared taking this step, report significant gains in productivity, quality, business success, and employee happiness.
NOTE: The contents of this blog has been derived from DASA DevOps white papers called “EMBRACING DIGITAL DISRUPTION BY ADOPTING DEVOPS PRACTICES” by Rik Farenhorst (Xebia) and Niels Loader (Quint Wellington Redwood) of April 2016 and “THE NEED FOR NEW SKILLS” DASA DEVOPS COMPETENCE FRAMEWORK by Rik Farenhorst (Xebia) and Niels Loader (Quint Wellington Redwood) of February 2017.