top of page

Code Yourself Out of a Job

  • Writer: David Peček
    David Peček
  • Mar 15, 2018
  • 2 min read

Updated: Sep 5, 2020


The definition of an effective DevOps or SRE is to code or automate yourself out of a job. In any operational job there are plenty of areas for improvement from operations of existing systems and processes to implementing new products and technologies.

A good engineer is a "lazy" engineer who does not want to do something more than once.
 

"Lazy" Attributes


A good DevOps / SRE should be looking at these things to make their job easier:


  • Common tasks. Are there operational things you have to do every day or week even month? Why not automate so you don't have to do those anymore? Something to consider each time: automation may or may not be the answer as you want to focus on organic fixes for these items. Is this something which can be solved with a code fix or technology change? If so then automation may not be the right answer. If not then yes automate away to get yourself out of the process. (Please document this automation so someone else knows its there.)

  • Repeat requests. Are co-workers often asking you for the same thing over and over? What is it they need and why is it they cannot do this work or see the data you have? Is this something where you can empower them to have this access or visualize the data for them?

  • Regular reporting. If you are continually asked for reports on things like performance, uptime, problems, etc... what can you do to dynamically generate these reports so people who need access to this data can run the reports at their leisure?

  • Can a tool do this? If there is a complex process you have to follow to perform your job, is there a tool which can be utilized to do this work instead? Might make the work more stable, easier, and you could train others to use this tool so you don't have to do this work anymore.

  • Add a process? When you get many questions on how things work, and how should I do this, it might be time to institute a process around this task. Document the process, send out the docs, have people follow and you should see less time spent on this. People can now just follow your process without needing to ask for questions or special requests as they are unsure how to request something from you.

 

Never the Same


Think about how you might implement some of these in your day to day. Every day should feel fresh and new as you tackle each of these, plan the solution, fix or automate and move on to the next new task. You will never need to answer the question about your day with "same old..." If you ever feel like the days are droning on, re-review your tasks for the day which you accomplished and see how they fit into these criteria.

Comments


bottom of page