Blog

Subscribe and stay up to date with our latest posts.

  Subscribe
X

Advanced Ultimate
Go Training

September 2019

Miami, FL

Why is DevOps Important?

Author image

Jérôme Petazzoni

1. What are four keys for great DevOps?

Collaboration: DevOps requires collaboration, both within teams and between teams. Good communication between teams implies to break down silos, which can be harder than it sounds in organizations where a leader and their team are rewarded for individual achievements, discouraging them from collaborating and sharing information with others, and often encouraging politics at the expense of the company’s success.

Blameless Culture: It also requires to internalize that we learn from our failures. Instead of promoting a culture where mistakes can seriously hinder one’s career and are therefore often shoved under the rug, we need to embrace a blameless culture where each failure becomes an opportunity to improve, and improve continuously.

Extensive Automation: This, in turn, can be achieved by extensive automation, because automation ultimately gives us ways to recover faster from failures: roll back a bad deployment, rebuild production after a catastrophic outage, etc.

Metrics: Finally, our results and progress should be tracked measurably, so that we have concrete metrics on how well we serve our customers and ourselves, and work to improve these metrics.


2. Why is DevOps critical today?

In short, because enterprises and organizations who embrace and implement DevOps principles are more successful. This is proven and backed by significant research, detailed for instance in Nicole Forsgren’s book.


3. What are four DevOps mistakes you frequently see?

  • Buying “DevOps in a box”. DevOps is not a product that we can buy.
  • Equating DevOps with a specific tool, framework, or language. Tools can help us to implement DevOps, but they’re not everything.
  • Lack of commitment from leadership.
  • Building a “DevOps team” that will work in isolation from the rest of the company, hoping that eventually they will ship “some DevOps” that the rest of the company can use.

DevOps is first and foremost about people and culture. It requires sometimes profound organizational changes affecting the whole company.


4. How is DevOps changing right now?

The idea of DevOps itself is pretty stable, but how we implement it evolves. At any point in time, there is a set of tools that is particularly adapted: cloud computing, containers, serverless … But it’s not as much the tools themselves than the processes and culture around them that matters.


5. What are four tips for launching a DevOps team?

  • Tip #1: Do not launch a DevOps team! DevOps is a company-wide effort.
  • Tip #2: If you launch a DevOps team anyway, it should embed itself in various other teams to help them to evolve their processes, rather than implementing and imposing processes defined from scratch.
  • Tip #3: Train employees to use modern tooling, but keep in mind that adopting tools is not sufficient to implement DevOps.
  • Tip #4: Make sure that leadership sets an example. In many organizations with influential and charismatic leaders, no culture change can happen without their involvement.

Go Training

We have taught Go to thousands of developers all around the world since 2014. There is no other company that has been doing it longer and our material has proven to help jump start developers 6 to 12 months ahead of their knowledge of Go. We know what knowledge developers need in order to be productive and efficient when writing software in Go.

Our classes are perfect for both experienced and beginning engineers. We start every class from the beginning and get very detailed about the internals, mechanics, specification, guidelines, best practices and design philosophies. We cover a lot about "if performance matters" with a focus on mechanical sympathy, data oriented design, decoupling and writing production software.

Capital One
Cisco
Visa
Teradata
Red Ventures

Interested in Ultimate Go Corporate Training and special pricing?

Let’s Talk Corporate Training!

Ultimate Go Programming LiveLessons

Ultimate Go Programming LiveLessons provides an intensive, comprehensive, and idiomatic view of the Go programming language. This course focuses on both the specification and implementation of the language, including topics ranging from language syntax, design, and guidelines to concurrency, testing, and profiling. This class is perfect for anyone who wants a jump-start in learning Go or wants a more thorough understanding of the language and its internals.