Answers: <p>TL;DR: Since upper management is usually fickle and prone to anger, I'd suggest trying to bend his mind a bit to get a different perspective, while changing things for the better, gradually.</p>
  
  <p>(I am assuming that his trouble is mainly with the reluctant <em>devs</em>, not his other <em>ops</em> colleagues who seem to do classical operations mainly.)</p>
  
  <p>IMO, even if you have DevOps going, that does not necessarily mean that every developer needs to be a full fledged DevOps guru. I find it rather normal that there will be one or two real experts in a given group of people, and the rest more or less tag along. As long as the workload is not too big for that guy, and as long as he manages to encapsulate his knowledge in scripts etc. instead of building his own silo, it is fine with me.</p>
  
  <p>The one thing that should <em>not</em> be happening is that the DevOps guy does his automation, and everybody else tries their hardest to avoid said automation (i.e., go past the CI/CD pipeline and do stuff manually in one of the environments). This, IMO is the main thing that has to stop. One solution for that would be to push very hard for the cattle-not-pet approach, i.e. relentlessly tear down VMs or containers left and right as soon you can, and spin up new ones continuously.</p>
  
  <p>Second, of course everybody needs to be <em>aware</em> of what the automation is doing, and at least in theory, with some digging around maybe, be able to start the automation machinery (i.e., if everything runs from a commit/push, then the devs need to be aware and very much up to date with the fact that there will be stuff happening in the background when they commit). The CI(/CD) pipeline needs to be quite visible and should be a thing everybody is constantly aware of (i.e. when a dev breaks it).</p>
  
  <p>Third, the "one guy" of course has to watch out that he does not do menial, everyday tasks for his colleagues (e.g., creating Dockerfile after Dockerfile for <em>their</em> artifacts...).</p>
  
  <p>Fourthly, the solutions the DevOps guy creates of course have to <em>actually be superior</em> to the manual approaches of the past in some measurable way. In that case, it should be possible for him to <em>demonstrate</em> his improvements; i.e., demonstrate how things get easier for everybody, or how it seems to be impossible to introduce bugs in the later stages of the pipe etc. If this does not seem possible, then the DevOps guy needs to take a good long hard look at what he is doing. If it is possible, that calls for brownbag sessions and plenty of evangelisation in his team. </p>
  
  <p>Obviously, in such a reluctant environment, you will probably not be arriving at a wholly automated CD solution, or at trunk based development anytime soon. But I would not worry too much about being singled out. He is the expert, and if he is doing his job well, the whole team will very gradually improve. </p>
  
  <p>And finally, if after years and years of toiling there is just no visible improvement with his colleagues, it is always possible to look for other avenues (be it inside or outside the company). Having all that DevOps experience under his belt is excellent base for looking for a job, these days...</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-08T21:30:53.477Z
Answers: 2017-11-08T21:30:53.477Z
Answers: AnoE
Answers: <p>I see a lot of great answers here talking about DevOps as a culture, suggestions about how to work with management, and help defining the do’s-and-do-nots of a DevOps team or engineer. I think each of them is great, and really illustrative of many answer can be 100% right, and still be very different, or even completely ambiguous, from each other... That’s DevOps!</p>
  
  <p>This answer is just my unique perspective from experience, and may not be indicative of norms or best practice... </p>
  
  <p>But what your DevOps colleague was complaining about <strong>is the very nature of what makes DevOps challenging and difficult</strong>, especially when appointed the role of DevOps engineer, and not simply being a cultural mindset.</p>
  
  <p>Personally, I <strong><em>like</em></strong> being a lone wolf, because I still make valuable contributions, but also get to set my own limits, whilst persuading others to help themselves, thereby helping me, breakdown IT silos.</p>
  
  <p><strong>Some silos remain intact</strong>, and that’s okay, it’s DevOps mission to work around that and try to make that silos as insignificant or invisible as possible.</p>
  
  <p>It’s possible your coworker may be realizing, or hasn’t yet realized, that <strong>he or she does not like being a DevOps engineer</strong>.</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-10T16:47:04.943Z
Answers: 2017-11-10T16:47:04.943Z
Answers: NonCreature0714
Answers: <p>Relatively speaking, the concept of devops is new and still defining itself in my opinion.  I currently fulfill a devops engineer role. For me, this means I facilitate and develop the tools and processes used by both our dev and ops teams freeing them to focus on the product that generates revenue for the company.  The ops and dev teams spin up their own servers and such as needed.  I just hook up the CI for our products, ensure our processes makes sense and seek out what process can be improved/automated.  I meet with all of our departments, from sales, to warehouse, to developers and operations (QA and release managers) to see what they are doing and how I can improve their process.</p>
  
Answers: CC BY-SA 3.0
Answers: 2018-03-19T21:14:57.090Z
Answers: 2018-03-19T21:14:57.090Z
Answers: xtreampb
Answers: <p>For me, DevOps means that the development and operation of a software system becomes the responsibility of one team, instead of separate dev and ops teams. <strong>This is a two-way street.</strong> The best teams are made up of "<a href="https://en.wikipedia.org/wiki/T-shaped_skills" rel="nofollow noreferrer">T-Shaped</a>" people who are experts in one field and familiar with several related fields.</p>
  
  <ul>
  <li>Team members with Ops experience are expected to do what they do best (i.e. Ops), to teach the fundamentals of what they do best (i.e. Ops) to the others, and to learn and do jobs in related fields (i.e. Dev tasks). </li>
  <li>Team members with Dev experience are expected to do what they do best (i.e. Dev), to teach the fundamentals of what they do best (i.e. Dev) to the others, and to learn and do jobs in related fields (i.e. Ops tasks).</li>
  </ul>
  
  <p>So to make the DevOps engineer feel less like a lone wolf, invite him to teach the developers how to <strong>run</strong> the systems, while acknowledging that he is the expert how to <strong>design</strong> the infrastructure. </p>
  
  <p>Get him involed in high-level architecture from the beginning, so that he can introduce the concerns of his specialty. (Before we had DevOps, our architecture drawings always glossed over "little things" like load balancers and redundant servers. Now such things are part of the very first sketches.) </p>
  
  <p>Expect the Devs to take some of the daily routine Ops tasks, both to build redundancy into the team and to spread the "drudge" jobs fairly. </p>
  
  <p>Expect him to contribute to the Dev effort if there are no Ops-like tasks to be done. Some DevOps I know seem to find database work a natural extension of their area of expertise, not sure if that can be generalized.</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-10T19:47:22.373Z
Answers: 2017-11-10T19:47:22.373Z
Answers: o.m.
Answers: <p>My first thought is "why is the he the only person doing ops, on a dev team,  especially when he gets to work with loads of automation?".  I think there's an opportunity there to address the lone wolf syndrome; particularly in a dev environment, infrastructure-as-code provides a great framework for sharing the load.  Ops people should be experts in determining and defining infrastructure needs for application, but they should also be able to build a platform to let dev roles do as much as they can independently.</p>
  
  <p>It sounds like a silo within a team; old habits die hard.  A coder may not feel comfortable spinning up and hardening a server, but in a pure devops model, they should have the tools to do so.  An ops person in a devops team shouldn't responsible for delivering infrastructure for the app itself, but they should provide some insight into what is needed and some guidance on how the app developers can do it themselves.  It's almost a meta-infrastructure model; ops engineers build infrastructure that can build infrastructure on demand when requested by the development team.</p>
  
  <p>Consultation, communication, and blending of responsibilities are all crucial to the success of a devops team.</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-13T09:26:00.063Z
Answers: Some of this is very soft software focused. I work with embedded software (or firmware or software running on/with specialist hardware) and many of the IaC models and tools do not fit well.  Sometimes the DevOps guy is the only one who knows where that hardware is.  I was 1 of the 4 out of ~60 engineers who could go find things in the lab.  In those cases this answer is hard to implement.  We did work out ways to let people power cycle units remotely but that was about all we could come up with.  Any more suggestions would be welcome.
Answers: TafT
Answers: CC BY-SA 3.0
Answers: 2017-11-14T17:56:50.213Z
Answers: You’re right; I tried to frame my answer based on clues in the question (namely, the post mentioned automation); it applies less in your situation.  That said, every situation is different, so every path is different.  The principles of building automation and emphasizing self service and looking at the entire value steam still apply, even if the implementation differs.
Answers: Stuart Ainsworth
Answers: CC BY-SA 3.0
Answers: 2017-11-08T20:06:30.467Z
Answers: 2017-11-08T20:06:30.467Z
Answers: Stuart Ainsworth
Answers: <p>I think the first flaw is in this sentence:</p>
  
  <blockquote>
    <p>He reports to the Development Manager, but works more closely with the
    Infrastructure Manager.</p>
  </blockquote>
  
  <p>DevOps is a cultural shift aiming at removing silos. If silos remain, then this engineer is whatever you want to name call him; an engineer doing operational development, an automation expert, a developer automating infrastructure - but this engineer is not a DevOps engineer.<br>
  In fact, <a href="https://devops.stackexchange.com/questions/157/what-is-the-difference-between-sysadmin-and-devops-engineer">"DevOps Engineer" is not a real role</a>, it's more a 'chapeau' as it can encompass developers, system administrators, QA testers and architects working in a common team.</p>
  
  <p>A problem I often see is that people fall into the buzzword usage of DevOps, seeing it as a job title, but they don't really understand what DevOps is. By viewing DevOps this way, they often end up isolated and feel alone, blaming failures and shortcomings on being a "lone wolf" without managerial and organizational buy-in.</p>
  
  <p>As you describe it this engineer is the only one doing Ops in a Dev team. That doesn't make him a "DevOps engineer". (Whatever that means in his organization) He's working in isolation because the job is presented as "DevOps Engineer" but it seems tha other people in his team doesn't wish to work on operations.</p>
  
  <p>Let's be honest, there will always be ops and dev, the main idea behind devops is sharing the responsibilities such that there's no handoff of a product from dev to ops or just supplying a platforms by ops for dev. The primary goal is bringing more collaboration into a team. Calling this role a "DevOps Engineer" is breaking this idea by suggesting in the name you can do both at the same level of expertise - which is rarely true.</p>
  
  <p>The first thing to do in my opinion would be to present the operational tools to the team and give everyone a basic knowledge on the tools, then transfer the responsibility of configure/code the operational tools to the whole team. The main idea behind this is moving from "the one doing all the ops things" to "the one which supports and give references implementations to the team".</p>
  
  <p>This complements the other answers by providing something actionable in an simpler way as a first step than a management reorganization.</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-09T15:13:54.573Z
Answers: One of the tough things to reconcile about a devops implementation is org charts.  Silos typically form around management, and if you have a Dev mgr and an Infrastructure mgr, getting those teams to communicate sounds good, but there's a reluctance to consolidate.  Culture is tough to change, and org charts demonstrate culture vividly.
Answers: Stuart Ainsworth
Answers: CC BY-SA 3.0
Answers: 2017-11-10T09:40:29.917Z
Answers: @StuartAinsworth indeed, that's why I didn't talk about modifying the organization but more to on-board the rest of the team.
Answers: Tensibai
Answers: CC BY-SA 3.0
Answers: 2017-11-09T14:14:13.477Z
Answers: 2017-11-13T16:26:45.687Z
Answers: 2017-11-13T16:26:45.687Z
Answers: Tensibai
Answers: <p>The most important thing for DevOps Engineers in this kind of situations, is to get (a) <strong><em>Management Commitment</em></strong> and (b) <strong><em>Required Budgets</em></strong>. Read on for some more details on both ...</p>
  
  <h1>Get Management Commitment</h1>
  
  <p>Once that is in place, things become easy for such DevOps engineers. Especially whenever resistance (from all sorts of parties) comes into the game. Trust me, there will be such resistance, which challenges such as:</p>
  
  <ul>
  <li>Why do we have to change? I want to keep doing what I did for X years already!</li>
  <li>I do not want to loose the (technical) power I have, and complete all sorts of workflow procedures, to get a silly fix in production that should take me like 5 minutes instead of 5 hours (or days ...).</li>
  <li>... (I could add another dozen bullets here ...).</li>
  </ul>
  
  <p>Whenever those challenges come up, all a DevOps engineer should have to say is like:</p>
  
  <blockquote>
    <p><strong><em>I'm sorry, I'm just doing my job ... based on instructions from upper management.</em></strong></p>
  </blockquote>
  
  <h1>Get Required Budgets</h1>
  
  <p>An effective way to get Required Budgets, is to create/submit an appropriate business case which explains the tangible and intangible benefits of various DevOps practises by applying them to some real world cases that apply to the company itself. </p>
  
  <p>Below are some real world cases I experienced myself, as an SCM consultant hired by some companies where these things had happened. I know, SCM is only part of DevOps, but it's the area where I have <em>some</em> expertise ...</p>
  
  <h3>1. Benefits of automation</h3>
  
  <p>Due to some strike from only 2 (!!!) computer operators (who did not type the console commands anymore that they where expected to type), trains had to be halted somewhere half the way between 2 factories (since the system at the factory where the train was heading to was down, crucial data about handling the train was not available).</p>
  
  <p>By implementing an SCM system, many operator commands were automated.</p>
  
  <h3>2. Reduce software license costs</h3>
  
  <p>Some software vendor had decided to increase some yearly fees for the (outdated) SCM software, which management didn't agree to. Therefor they created a special project to get it replaced by some alternative SCM software. </p>
  
  <p>The budget of the project was equal to the yearly fee they didn't want to keep paying. That included flying in engineers from other continents (like me) to make the project succeed.</p>
  
  <h3>3. Reduce operating costs</h3>
  
  <p>Some major insurance company was using some FTP software to transfer software fixes to about 13.000 midrange computers (AS/400s) throughout the country, and this whenever "a" fix became available. The cost of 1 such transfer was about 4 USD (13.000 x 4 = 52.000 USD for a single transfer ...). The software consisted of 120.000 components, developed/maintained by about 150 developers. Do the math about the probability that 1 developer made 1 (tiny) mistake in any of these 120.000 components, which made it to production, and required an urgent fix, which would cost another 52.000 USD (just for the transfer!).</p>
  
  <p>By implementing an adequate SCM system (with managed test environments, approvals, etc), this company achieved a major cost reduction. Think about it, if the SCM system could prevent the need for only 20 transfers of urgent fixes, it resulted in a cost reduction of 52.000 x 20 = 1.040.000 USD (quite a budget to implement an SCM system, they only needed a fraction of that amount to get the job done).</p>
  
  <h3>4. Reduce costs of unavailability</h3>
  
  <p>If the above cases are not convincing enough, then think of the system(s) of a major credit card company being unavailable around the world. I've been told that 1 second of unavailability costs them 1.000.000 USD.</p>
  
  <p>That's probably also the reason why, for a very long time, such companies have sophisticated DevOps tools in place, for many decades already. Because each second they are not in business costs them a fortune.</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-09T22:49:46.620Z
Answers: I think you're missing some steps. If the dev team isn't *already* deploying multiple copies of the application (at least a test environment before prod), then *that* should be the mandate. Then they can maybe struggle with that on their own for a while if they really want to spend the time. This makes a Dev Ops expert *helpful* to these people; they can turn a painful process into a smoother one, instead of resorting to "management says so." That's where the entire idea of Dev Ops comes from, after all: eliminating the pain of deploying and managing multiple environments.
Answers: jpmc26
Answers: CC BY-SA 3.0
Answers: 2017-11-08T18:25:23.993Z
Answers: 2017-11-09T13:43:26.757Z
Answers: 2017-11-09T13:43:26.757Z
Answers: Pierre.Vriens
Answers: <blockquote>
    <p>What could be done to help DevOps Engineers feel less like a lone
    wolf?</p>
  </blockquote>
  
  <p>To paraphrase - <strong>what can a DevOps Engineer do <em>himself</em>/<em>herself</em> to feel less like a lone wolf?</strong></p>
  
  <p>Lack of culture and management support is only one part of the equation. The other part is in my opinion that the detail DevOps knowledge often refers to complex contexts and it is important to have advice and reference to working examples.</p>
  
  <p>Therefore - do not feel like a lone wolf; participate in DevOps communities like this one here or tool-specific groups and GitHub - the feeling is at least then you are not the only lone wolf ;-)</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-13T16:28:26.213Z
Answers: DevOps, by it's nature is a team exercise. The only thing a 
  DevOps engineer can do by him or herself to feel less like a lone wolf, is to quit and go join a more functional organization.
Answers: James Shewey
Answers: CC BY-SA 3.0
Answers: 2017-11-12T15:57:33.477Z
Answers: 2017-11-12T15:57:33.477Z
Answers: Ta Mu
Body: <p>I have just been speaking to a DevOps guy who raised some really good points about the struggles of being a DevOps Engineer and feeling like a one-man army sometimes, even though he is in a team of 16 Engineers.</p>
  
  <p>He wears lots of different hats, but sits in the Development team doing infrastructure work. He loves the cool tech that he gets to work with- loads of automation, cloud, containerization etc. But he struggles that he is the only person doing <code>ops</code>, in a <code>dev</code> team. He reports to the Development Manager, but works more closely with the Infrastructure Manager. </p>
  
  <p>This seems to be the case with lots of DevOps professionals I speak to. What could be done to help DevOps Engineers feel less like a lone wolf?</p>
  
Comments: CC BY-SA 3.0
Comments: 2017-11-09T13:36:32.180Z
Comments: Possible duplicate of [What is the difference between Sysadmin and DevOps Engineer?](https://devops.stackexchange.com/questions/157/what-is-the-difference-between-sysadmin-and-devops-engineer)
Comments: 030
Comments: CC BY-SA 3.0
Comments: 2017-11-10T13:27:08.780Z
Comments: I always thoutgh of DevOps as a business organization model, not a role that someone can take.
Comments: T. Sar
Tags: <culture>
Title: How to help DevOps Engineers feel less like a lone wolf?
UserDisplayName: Anna Flynn
ThreadText: # How to help DevOps Engineers feel less like a lone wolf?
  
  (Asked by: username_0 on 2017-11-08)
  
  I have just been speaking to a DevOps guy who raised some really good points about the struggles of being a DevOps Engineer and feeling like a one-man army sometimes, even though he is in a team of 16 Engineers.
  
  He wears lots of different hats, but sits in the Development team doing infrastructure work. He loves the cool tech that he gets to work with- loads of automation, cloud, containerization etc. But he struggles that he is the only person doing `ops`, in a `dev` team. He reports to the Development Manager, but works more closely with the Infrastructure Manager.
  
  This seems to be the case with lots of DevOps professionals I speak to. What could be done to help DevOps Engineers feel less like a lone wolf?
  
  **Tags:** culture
  
  > **Comments:**
  > **username_1**: Possible duplicate of [What is the difference between Sysadmin and DevOps Engineer?](https://devops.stackexchange.com/questions/157/what-is-the-difference-between-sysadmin-and-devops-engineer)  
  > **username_2**: I always thoutgh of DevOps as a business organization model, not a role that someone can take.  
  
  ---
  
  ## 8 answers
  
  ### Answer by username_7 on 2017-11-08. Score: 41
  
  My first thought is "why is the he the only person doing ops, on a dev team, especially when he gets to work with loads of automation?". I think there's an opportunity there to address the lone wolf syndrome; particularly in a dev environment, infrastructure-as-code provides a great framework for sharing the load. Ops people should be experts in determining and defining infrastructure needs for application, but they should also be able to build a platform to let dev roles do as much as they can independently.
  
  It sounds like a silo within a team; old habits die hard. A coder may not feel comfortable spinning up and hardening a server, but in a pure devops model, they should have the tools to do so. An ops person in a devops team shouldn't responsible for delivering infrastructure for the app itself, but they should provide some insight into what is needed and some guidance on how the app developers can do it themselves. It's almost a meta-infrastructure model; ops engineers build infrastructure that can build infrastructure on demand when requested by the development team.
  
  Consultation, communication, and blending of responsibilities are all crucial to the success of a devops team.
  
  > **Comments:**
  > **username_8**: Some of this is very soft software focused. I work with embedded software (or firmware or software running on/with specialist hardware) and many of the IaC models and tools do not fit well.  Sometimes the DevOps guy is the only one who knows where that hardware is.  I was 1 of the 4 out of ~60 engineers who could go find things in the lab.  In those cases this answer is hard to implement.  We did work out ways to let people power cycle units remotely but that was about all we could come up with.  Any more suggestions would be welcome.  
  > **username_7**: You’re right; I tried to frame my answer based on clues in the question (namely, the post mentioned automation); it applies less in your situation.  That said, every situation is different, so every path is different.  The principles of building automation and emphasizing self service and looking at the entire value steam still apply, even if the implementation differs.  
  
  ---
  
  ### Answer by username_9 on 2017-11-09. Score: 31
  
  I think the first flaw is in this sentence:
  
  > He reports to the Development Manager, but works more closely with the
  > Infrastructure Manager.
  
  DevOps is a cultural shift aiming at removing silos. If silos remain, then this engineer is whatever you want to name call him; an engineer doing operational development, an automation expert, a developer automating infrastructure - but this engineer is not a DevOps engineer.  
  In fact, ["DevOps Engineer" is not a real role](https://devops.stackexchange.com/questions/157/what-is-the-difference-between-sysadmin-and-devops-engineer), it's more a 'chapeau' as it can encompass developers, system administrators, QA testers and architects working in a common team.
  
  A problem I often see is that people fall into the buzzword usage of DevOps, seeing it as a job title, but they don't really understand what DevOps is. By viewing DevOps this way, they often end up isolated and feel alone, blaming failures and shortcomings on being a "lone wolf" without managerial and organizational buy-in.
  
  As you describe it this engineer is the only one doing Ops in a Dev team. That doesn't make him a "DevOps engineer". (Whatever that means in his organization) He's working in isolation because the job is presented as "DevOps Engineer" but it seems tha other people in his team doesn't wish to work on operations.
  
  Let's be honest, there will always be ops and dev, the main idea behind devops is sharing the responsibilities such that there's no handoff of a product from dev to ops or just supplying a platforms by ops for dev. The primary goal is bringing more collaboration into a team. Calling this role a "DevOps Engineer" is breaking this idea by suggesting in the name you can do both at the same level of expertise - which is rarely true.
  
  The first thing to do in my opinion would be to present the operational tools to the team and give everyone a basic knowledge on the tools, then transfer the responsibility of configure/code the operational tools to the whole team. The main idea behind this is moving from "the one doing all the ops things" to "the one which supports and give references implementations to the team".
  
  This complements the other answers by providing something actionable in an simpler way as a first step than a management reorganization.
  
  > **Comments:**
  > **username_7**: One of the tough things to reconcile about a devops implementation is org charts.  Silos typically form around management, and if you have a Dev mgr and an Infrastructure mgr, getting those teams to communicate sounds good, but there's a reluctance to consolidate.  Culture is tough to change, and org charts demonstrate culture vividly.  
  > **username_9**: @username_7 indeed, that's why I didn't talk about modifying the organization but more to on-board the rest of the team.  
  
  ---
  
  ### Answer by username_10 on 2017-11-08. Score: 18
  
  The most important thing for DevOps Engineers in this kind of situations, is to get (a) ***Management Commitment*** and (b) ***Required Budgets***. Read on for some more details on both ...
  
  # Get Management Commitment
  
  Once that is in place, things become easy for such DevOps engineers. Especially whenever resistance (from all sorts of parties) comes into the game. Trust me, there will be such resistance, which challenges such as:
  
  * Why do we have to change? I want to keep doing what I did for X years already!
  * I do not want to loose the (technical) power I have, and complete all sorts of workflow procedures, to get a silly fix in production that should take me like 5 minutes instead of 5 hours (or days ...).
  * ... (I could add another dozen bullets here ...).
  
  Whenever those challenges come up, all a DevOps engineer should have to say is like:
  
  > ***I'm sorry, I'm just doing my job ... based on instructions from upper management.***
  
  # Get Required Budgets
  
  An effective way to get Required Budgets, is to create/submit an appropriate business case which explains the tangible and intangible benefits of various DevOps practises by applying them to some real world cases that apply to the company itself.
  
  Below are some real world cases I experienced myself, as an SCM consultant hired by some companies where these things had happened. I know, SCM is only part of DevOps, but it's the area where I have *some* expertise ...
  
  ### 1. Benefits of automation
  
  Due to some strike from only 2 (!!!) computer operators (who did not type the console commands anymore that they where expected to type), trains had to be halted somewhere half the way between 2 factories (since the system at the factory where the train was heading to was down, crucial data about handling the train was not available).
  
  By implementing an SCM system, many operator commands were automated.
  
  ### 2. Reduce software license costs
  
  Some software vendor had decided to increase some yearly fees for the (outdated) SCM software, which management didn't agree to. Therefor they created a special project to get it replaced by some alternative SCM software.
  
  The budget of the project was equal to the yearly fee they didn't want to keep paying. That included flying in engineers from other continents (like me) to make the project succeed.
  
  ### 3. Reduce operating costs
  
  Some major insurance company was using some FTP software to transfer software fixes to about 13.000 midrange computers (AS/400s) throughout the country, and this whenever "a" fix became available. The cost of 1 such transfer was about 4 USD (13.000 x 4 = 52.000 USD for a single transfer ...). The software consisted of 120.000 components, developed/maintained by about 150 developers. Do the math about the probability that 1 developer made 1 (tiny) mistake in any of these 120.000 components, which made it to production, and required an urgent fix, which would cost another 52.000 USD (just for the transfer!).
  
  By implementing an adequate SCM system (with managed test environments, approvals, etc), this company achieved a major cost reduction. Think about it, if the SCM system could prevent the need for only 20 transfers of urgent fixes, it resulted in a cost reduction of 52.000 x 20 = 1.040.000 USD (quite a budget to implement an SCM system, they only needed a fraction of that amount to get the job done).
  
  ### 4. Reduce costs of unavailability
  
  If the above cases are not convincing enough, then think of the system(s) of a major credit card company being unavailable around the world. I've been told that 1 second of unavailability costs them 1.000.000 USD.
  
  That's probably also the reason why, for a very long time, such companies have sophisticated DevOps tools in place, for many decades already. Because each second they are not in business costs them a fortune.
  
  > **Comments:**
  > **username_11**: I think you're missing some steps. If the dev team isn't *already* deploying multiple copies of the application (at least a test environment before prod), then *that* should be the mandate. Then they can maybe struggle with that on their own for a while if they really want to spend the time. This makes a Dev Ops expert *helpful* to these people; they can turn a painful process into a smoother one, instead of resorting to "management says so." That's where the entire idea of Dev Ops comes from, after all: eliminating the pain of deploying and managing multiple environments.  
  
  ---
  
  ### Answer by username_3 on 2017-11-08. Score: 5
  
  TL;DR: Since upper management is usually fickle and prone to anger, I'd suggest trying to bend his mind a bit to get a different perspective, while changing things for the better, gradually.
  
  (I am assuming that his trouble is mainly with the reluctant *devs*, not his other *ops* colleagues who seem to do classical operations mainly.)
  
  IMO, even if you have DevOps going, that does not necessarily mean that every developer needs to be a full fledged DevOps guru. I find it rather normal that there will be one or two real experts in a given group of people, and the rest more or less tag along. As long as the workload is not too big for that guy, and as long as he manages to encapsulate his knowledge in scripts etc. instead of building his own silo, it is fine with me.
  
  The one thing that should *not* be happening is that the DevOps guy does his automation, and everybody else tries their hardest to avoid said automation (i.e., go past the CI/CD pipeline and do stuff manually in one of the environments). This, IMO is the main thing that has to stop. One solution for that would be to push very hard for the cattle-not-pet approach, i.e. relentlessly tear down VMs or containers left and right as soon you can, and spin up new ones continuously.
  
  Second, of course everybody needs to be *aware* of what the automation is doing, and at least in theory, with some digging around maybe, be able to start the automation machinery (i.e., if everything runs from a commit/push, then the devs need to be aware and very much up to date with the fact that there will be stuff happening in the background when they commit). The CI(/CD) pipeline needs to be quite visible and should be a thing everybody is constantly aware of (i.e. when a dev breaks it).
  
  Third, the "one guy" of course has to watch out that he does not do menial, everyday tasks for his colleagues (e.g., creating Dockerfile after Dockerfile for *their* artifacts...).
  
  Fourthly, the solutions the DevOps guy creates of course have to *actually be superior* to the manual approaches of the past in some measurable way. In that case, it should be possible for him to *demonstrate* his improvements; i.e., demonstrate how things get easier for everybody, or how it seems to be impossible to introduce bugs in the later stages of the pipe etc. If this does not seem possible, then the DevOps guy needs to take a good long hard look at what he is doing. If it is possible, that calls for brownbag sessions and plenty of evangelisation in his team.
  
  Obviously, in such a reluctant environment, you will probably not be arriving at a wholly automated CD solution, or at trunk based development anytime soon. But I would not worry too much about being singled out. He is the expert, and if he is doing his job well, the whole team will very gradually improve.
  
  And finally, if after years and years of toiling there is just no visible improvement with his colleagues, it is always possible to look for other avenues (be it inside or outside the company). Having all that DevOps experience under his belt is excellent base for looking for a job, these days...
  
  
  ---
  
  ### Answer by username_4 on 2017-11-10. Score: 5
  
  I see a lot of great answers here talking about DevOps as a culture, suggestions about how to work with management, and help defining the do’s-and-do-nots of a DevOps team or engineer. I think each of them is great, and really illustrative of many answer can be 100% right, and still be very different, or even completely ambiguous, from each other... That’s DevOps!
  
  This answer is just my unique perspective from experience, and may not be indicative of norms or best practice...
  
  But what your DevOps colleague was complaining about **is the very nature of what makes DevOps challenging and difficult**, especially when appointed the role of DevOps engineer, and not simply being a cultural mindset.
  
  Personally, I ***like*** being a lone wolf, because I still make valuable contributions, but also get to set my own limits, whilst persuading others to help themselves, thereby helping me, breakdown IT silos.
  
  **Some silos remain intact**, and that’s okay, it’s DevOps mission to work around that and try to make that silos as insignificant or invisible as possible.
  
  It’s possible your coworker may be realizing, or hasn’t yet realized, that **he or she does not like being a DevOps engineer**.
  
  
  ---
  
  ### Answer by username_5 on 2018-03-19. Score: 3
  
  Relatively speaking, the concept of devops is new and still defining itself in my opinion. I currently fulfill a devops engineer role. For me, this means I facilitate and develop the tools and processes used by both our dev and ops teams freeing them to focus on the product that generates revenue for the company. The ops and dev teams spin up their own servers and such as needed. I just hook up the CI for our products, ensure our processes makes sense and seek out what process can be improved/automated. I meet with all of our departments, from sales, to warehouse, to developers and operations (QA and release managers) to see what they are doing and how I can improve their process.
  
  
  ---
  
  ### Answer by username_6 on 2017-11-10. Score: 2
  
  For me, DevOps means that the development and operation of a software system becomes the responsibility of one team, instead of separate dev and ops teams. **This is a two-way street.** The best teams are made up of "[T-Shaped](https://en.wikipedia.org/wiki/T-shaped_skills)" people who are experts in one field and familiar with several related fields.
  
  * Team members with Ops experience are expected to do what they do best (i.e. Ops), to teach the fundamentals of what they do best (i.e. Ops) to the others, and to learn and do jobs in related fields (i.e. Dev tasks).
  * Team members with Dev experience are expected to do what they do best (i.e. Dev), to teach the fundamentals of what they do best (i.e. Dev) to the others, and to learn and do jobs in related fields (i.e. Ops tasks).
  
  So to make the DevOps engineer feel less like a lone wolf, invite him to teach the developers how to **run** the systems, while acknowledging that he is the expert how to **design** the infrastructure.
  
  Get him involed in high-level architecture from the beginning, so that he can introduce the concerns of his specialty. (Before we had DevOps, our architecture drawings always glossed over "little things" like load balancers and redundant servers. Now such things are part of the very first sketches.)
  
  Expect the Devs to take some of the daily routine Ops tasks, both to build redundancy into the team and to spread the "drudge" jobs fairly.
  
  Expect him to contribute to the Dev effort if there are no Ops-like tasks to be done. Some DevOps I know seem to find database work a natural extension of their area of expertise, not sure if that can be generalized.
  
  
  ---
  
  ### Answer by username_12 on 2017-11-12. Score: 1
  
  > What could be done to help DevOps Engineers feel less like a lone
  > wolf?
  
  To paraphrase - **what can a DevOps Engineer do *himself*/*herself* to feel less like a lone wolf?**
  
  Lack of culture and management support is only one part of the equation. The other part is in my opinion that the detail DevOps knowledge often refers to complex contexts and it is important to have advice and reference to working examples.
  
  Therefore - do not feel like a lone wolf; participate in DevOps communities like this one here or tool-specific groups and GitHub - the feeling is at least then you are not the only lone wolf ;-)
  
  > **Comments:**
  > **username_13**: DevOps, by it's nature is a team exercise. The only thing a  DevOps engineer can do by him or herself to feel less like a lone wolf, is to quit and go join a more functional organization.  
  
  ---
  
  