DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Modernize your data layer. Learn how to design cloud-native database architectures to meet the evolving demands of AI and GenAI workkloads.

Secure your stack and shape the future! Help dev teams across the globe navigate their software supply chain security challenges.

Releasing software shouldn't be stressful or risky. Learn how to leverage progressive delivery techniques to ensure safer deployments.

Avoid machine learning mistakes and boost model performance! Discover key ML patterns, anti-patterns, data strategies, and more.

Related

  • DevOps: CI/CD Tools to Watch Out for in 2022
  • Top DevOps Career Opportunities in 2022
  • 7 Major Roadblocks in DevOps Adoption and How to Address Them
  • From Chaos to Collaboration: Transforming DevOps With RACI Matrices

Trending

  • How to Build Scalable Mobile Apps With React Native: A Step-by-Step Guide
  • Solid Testing Strategies for Salesforce Releases
  • How to Convert Between PDF and TIFF in Java
  • *You* Can Shape Trend Reports: Join DZone's Software Supply Chain Security Research
  1. DZone
  2. Testing, Deployment, and Maintenance
  3. DevOps and CI/CD
  4. Dedicated DevOps? I Smell a Rat…

Dedicated DevOps? I Smell a Rat…

Dedicating one team to DevOps or adopting the tools doesn't mean you're doing it right. Everyone from the CEO down needs to be on board to really do DevOps.

By 
Anouska Streets user avatar
Anouska Streets
·
Jul. 25, 17 · Opinion
Likes (10)
Comment
Save
Tweet
Share
7.1K Views

Join the DZone community and get the full member experience.

Join For Free

You can’t just hand a team some tools and expect them to "do" DevOps. Success depends on a coordinated cross-departmental effort involving people and cultural change.

DevOps has been around for several years now, so it’s striking to still see so much variation in how it’s understood and implemented across different software development organizations. DevOps has become a trendy but nebulous buzzword that means a multitude of things depending on who you ask. Some organizations that implement Continuous Integration and Continuous Delivery, for instance, say they do DevOps, and conversations I have with DevOps engineers and teams often immediately gravitate towards a long list of supporting tools – Jenkins, Ansible, Docker, and Terraform, to name just a few. What I rarely hear people talking about is people, organizations, or culture.

Are You Doing DevOps or “Doing DevOps?”

Whatever the name might suggest, DevOps isn’t just about development and operations; it’s about the high-performance, cross-departmental working of all critical functions. It’s an organization-wide movement, requiring everyone from the CEO downwards to buy into it if it’s to be successful. This means development, operations, product, security, marketing, legal, and even sales are each responsible for different elements of the successful delivery of working software.

I smell a rat when I hear organizations talk about having a dedicated DevOps function. DevOps isn’t a function you can devolve to a separate group or team and expect to reap the full benefits. Often these teams are in fact not even much more than a glorified operations function given a fancy name. Sure, perhaps they do some cool work to simplify the automated delivery of software for developers, but fundamentally there is still a handoff between development and software in production.

Don’t get me wrong, it’s definitely worth building up a team to provide high-quality tooling and automation to support DevOps ways of working. Netflix, for example, has an Engineering Tools Team that is responsible for some great open source contributions to DevOps practices, such as The Simian Army and Spinnaker. At FINkit, we have our Cloud Platform Operations Team that strives to make development on our platform as efficient and easy as possible by providing automation and tooling that supports the rapid development of software. Essentially though, these teams are not operations teams. There are no handoffs of software; they support the business to get things done.

How to Use People and Culture to Make the Most of DevOps

Make Change Easy

Let’s get the tooling and automation stuff out of the way. Yes, automate and codify everything you sensibly can. Think hard about your architecture and whether it can support many small changes a day – it’s far easier to "fix forward" on a small, well-defined and well-understood change than a huge change of potentially thousands of lines of code. This is one of the reasons a microservices architecture works well in a DevOps world.

Changes to code and underlying infrastructure should be easy to perform and audit. While CI for software services is commonplace, it’s far less common to see infrastructure managed as code. Codifying your entire estate makes it far easier to automate, test, change, and audit. There is an investment is putting this into place but you will reap the benefits in the long term. The automation and tooling piece of DevOps is essential to success, yes, but for me, there is much more to be done around people, collaboration, and culture to make it really fly.

Agree on Shared Goals

Everyone in the organization is responsible for the successful delivery of working software, so ensure that people and teams are set goals and objectives that align with your business requirements and with each other. For example, have objectives relating to production stability and performance for your developers, and perhaps add objectives concerning code review and quality for your ops guys.

Build Cross-Functional Product Teams

Break down silos and build product-centred teams that include all the roles and skills required to work autonomously with just some steering direction from senior management. Each product team should have the development, product, security, infrastructure, and testing resources required to complete a given product feature (ideally, all those resources will be in the same place). This approach has many advantages: knowledge is shared among team members who perhaps in the past would have been stuck in just their respective areas of expertise, it reduces handoffs to other teams (almost eliminating queuing when set up correctly), and it’s easily scalable.

Hire (and Trust!) Great People

Provide clear guidance and direction to your product development teams, then give them the freedom to deliver as they see fit. As your product grows, having autonomous, empowered teams will be essential to scaling success. This can be a tough one for management, who have to let go and give over some control. To some, this may feel like letting the foxes loose in the hen house, but this is a key element of the cultural shift towards true DevOps.

Encourage Accountability

You break it, you fix it: make developers accountable for the code they push into production. If you know you’ll be called out if there is an issue with your change, you might think twice about pushing that fix at 17:29 on a Friday afternoon.

Pursue Continuous Improvement

The hard work is never done! Identify key useful metrics, both technical (e.g. number of errors) or team-based (e.g. the time work items spend in wait status), and measure them. Review them regularly and identify where your constraints are. As per the Theory of Constraints, remember that investing in fixing anything except the source of a given constraint is waste.

Show Transparency

Make every stage of the process visible and accessible to all stakeholders. Embrace failures and learn from them. Be open about failure, encourage blameless post mortems, and publish lessons learned.

Ultimately, there are many ways to skin the DevOps cat – but the foundation of meaningful DevOps adoption lies in addressing people and culture first and foremost. Cross-organization buy-in and shared goals will really help you get the best out of all those amazing tools, pipelines, and platforms.

DevOps teams Software development Continuous Integration/Deployment IT

Opinions expressed by DZone contributors are their own.

Related

  • DevOps: CI/CD Tools to Watch Out for in 2022
  • Top DevOps Career Opportunities in 2022
  • 7 Major Roadblocks in DevOps Adoption and How to Address Them
  • From Chaos to Collaboration: Transforming DevOps With RACI Matrices

Partner Resources

×

Comments
Oops! Something Went Wrong

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!