C of CALMS for DevOps in Action
This content first appeared on this LinkedIn article.
For driving DevOps in an organization, CALMS model is one of the most used framework and my favorite one too. Of the five pillars of CALMS(Culture, Automation, Lean, Measurement, Sharing), the first one plays undoubtedly one of the most important aspect as well as is result also. We have been hearing “DevOps is not a job but is a culture”.
The way of communication inter and intra team, pace of activities being performed both humanly and in development to production cycle, way of handling problems, deployment frequency to lead time all are bind by the culture in organization.
Sharing of responsibilities and development of cross-skilled team along with effective communication directly impacts the key to success — “Push change fast, iterate” as stated by Y Combinator. Frequent fire-fighting and hard to change not only backwards the company but also demotivates team members. Keeping business, development, operations in sync is hard without a good company culture which need not to be similar to any so called big companies but should clear the obstacle of change, plant the ownership feeling among team members. Few things I would like to mention for establishing a good culture:
- Collaboration and communication is the key. Let people know each other and do active communication online or offline irrespective of their department/team. Organizing social activities, all hands, games helps in giving personal touch which ultimately creates friendly environment adding energy to team and foster for proactive development. Choosing of communication platform — Slack, Telegram, Whatsapp, Google Hangouts etc. depends on company architecture, size and also guidelines.
2. Take ownership of the product and celebrate personal and company/product achievement. When product is launched or change is shipped successfully, it’s everyone’s success but not only of dev or QA or operations or designers. Also, if there is problem its everybody’s responsibility to collaborate for fixing and retrospect to avoid similar problem in future.
3. Knowledge and experience sharing: Strict segregation of boundary can’t help in adopting DevOps culture. If developers don’t know how their code is running in production and if operations don’t know what changes are being shipped, the environment can’t tuned which in turn makes product unsuccessful. Building cross-skilled team thus solves the problem. Sharing of internal tools and system design, software architecture always helps in setting a good collaborative culture.
4. Invite blameless culture: Everybody does the best they could do. When there is bugs or downtime, it’s not about who created bug but how everyone collaborate to fix it faster and maintain quality along with stability. Effective utilization of logging, tracing, monitoring and metrics with collaboration & sharing bases the foundation of blameless culture.
5. Get together in daily standup, involve in sprint planning so that everybody related can know where their product & business is going towards and what is accomplished. Discussion of problems faced, new architecture introduction increases interaction and involvement for getting ahead with suggestions, improvements adding motivation.
So, what is your experience in the role of Communication for a basis to DevOps culture? Feel free to share your thought.
Images: accelerateqa.com, pixabay.com