SlideShare uma empresa Scribd logo
1 de 25
Learning to Teach Ops
@JohnContad
@REATechBlog
It all started with a problem…
…Youth!
And so we tried dumb things.
• “You should be on pager…”
• “You should fix a couple of boxes...”
• “We’ll synthesize a couple of problems for
you...”
The problem with teaching Ops.
• Ops is experiential.
• “Defensive” Ops cannot be scheduled.
• “Offensive” Ops needs a lot of knowledge
baselines.
Linux
AWS
Networking
DNS
Cats
The Whiteboard Exercise.
• Shows levels of established proficiency.
• No “faking” of knowledge.
• Delineates domains that need work.
• Exposed what I don’t know myself.
What now?
Stumbling through Instructional Design
• V.A.K. Learning Styles
• The Teachback Method
• Knowledge checks
Anyone can play guitar Ops
• Faster pickup of Ops skills
• Repeatable template for Dev/Grad
onboarding
• Anyone else can do it
More to come…
• Metrics! Measure improvement.
• How to train trainers to train.
• How to scale to more people concurrently.
• How to scale with limited resources.
In closing.
We’re Hiring!
@JohnContad
@REATechBlog

Mais conteúdo relacionado

Semelhante a Learning how to teach Ops.

Semelhante a Learning how to teach Ops. (20)

Rock the tech interview january 2015
Rock the tech interview   january 2015Rock the tech interview   january 2015
Rock the tech interview january 2015
 
Rock the tech interview january 2015
Rock the tech interview   january 2015Rock the tech interview   january 2015
Rock the tech interview january 2015
 
On Hiring (in a Devops World)
On Hiring (in a Devops World)On Hiring (in a Devops World)
On Hiring (in a Devops World)
 
How to Prepare for and Survive a Technical Interview
How to Prepare for and Survive a Technical InterviewHow to Prepare for and Survive a Technical Interview
How to Prepare for and Survive a Technical Interview
 
Mocking in Python
Mocking in PythonMocking in Python
Mocking in Python
 
Mocking in python
Mocking in pythonMocking in python
Mocking in python
 
Don't get blamed for your choices - Techorama 2019
Don't get blamed for your choices - Techorama 2019Don't get blamed for your choices - Techorama 2019
Don't get blamed for your choices - Techorama 2019
 
Are You Really Using Kanban?
Are You Really Using Kanban?Are You Really Using Kanban?
Are You Really Using Kanban?
 
Do testers have to code... to be useful?
Do testers have to code... to be useful?Do testers have to code... to be useful?
Do testers have to code... to be useful?
 
Coding For Fun And Profit
Coding For Fun And ProfitCoding For Fun And Profit
Coding For Fun And Profit
 
Scaling a High Traffic Web Application: Our Journey from Java to PHP
Scaling a High Traffic Web Application: Our Journey from Java to PHPScaling a High Traffic Web Application: Our Journey from Java to PHP
Scaling a High Traffic Web Application: Our Journey from Java to PHP
 
Scaling High Traffic Web Applications
Scaling High Traffic Web ApplicationsScaling High Traffic Web Applications
Scaling High Traffic Web Applications
 
Devops in with the old, in with the new
Devops   in with the old, in with the newDevops   in with the old, in with the new
Devops in with the old, in with the new
 
DOD Presentation V2
DOD Presentation V2DOD Presentation V2
DOD Presentation V2
 
Teaching Kids Programming Using the Intentional Method
Teaching Kids Programming Using the Intentional MethodTeaching Kids Programming Using the Intentional Method
Teaching Kids Programming Using the Intentional Method
 
How to learn programming
How to learn programmingHow to learn programming
How to learn programming
 
It's Not Just About Code
It's Not Just About CodeIt's Not Just About Code
It's Not Just About Code
 
CPP01 - Introduction to C++
CPP01 - Introduction to C++CPP01 - Introduction to C++
CPP01 - Introduction to C++
 
Intro to Mocking - DjangoCon 2015
Intro to Mocking - DjangoCon 2015Intro to Mocking - DjangoCon 2015
Intro to Mocking - DjangoCon 2015
 
Pellissippi State AITP Meeting November 2014
Pellissippi State AITP Meeting November 2014Pellissippi State AITP Meeting November 2014
Pellissippi State AITP Meeting November 2014
 

Mais de John Contad

Mais de John Contad (9)

Career Development Conversations
Career Development ConversationsCareer Development Conversations
Career Development Conversations
 
Publicspeakingforintroverts
PublicspeakingforintrovertsPublicspeakingforintroverts
Publicspeakingforintroverts
 
A Year Of Running Kubernetes, and the Importance Of Empathy
A Year Of Running Kubernetes, and the Importance Of EmpathyA Year Of Running Kubernetes, and the Importance Of Empathy
A Year Of Running Kubernetes, and the Importance Of Empathy
 
DevOps Girls - Launch Configs and ASGs
DevOps Girls - Launch Configs and ASGsDevOps Girls - Launch Configs and ASGs
DevOps Girls - Launch Configs and ASGs
 
Agile Australia 2017 - The Story of Mentorship
Agile Australia 2017 - The Story of MentorshipAgile Australia 2017 - The Story of Mentorship
Agile Australia 2017 - The Story of Mentorship
 
The Depressed Engineer
The Depressed EngineerThe Depressed Engineer
The Depressed Engineer
 
Better Guilds With Taylor Swift
Better Guilds With Taylor SwiftBetter Guilds With Taylor Swift
Better Guilds With Taylor Swift
 
Guild bounties
Guild bountiesGuild bounties
Guild bounties
 
Building Stories around DevOps Mentorship
Building Stories around DevOps MentorshipBuilding Stories around DevOps Mentorship
Building Stories around DevOps Mentorship
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 

Learning how to teach Ops.

Notas do Editor

  1. Hello, everyone. My name is John Contad, and I work with REA Group – the people behind realestate.com.au. My team in charge of Global Infrastructure and Architecture – which is a unit in the company that deals with shared infrastructure, patterns of work, and empowering people to work better. For this session, I’ll be talking about our journey on how to teach IT Operations skills.
  2. Every solution starts with a problem. Mine started less than a year ago, and the cause of the problem is similar to what a lot of people have problems with.
  3. Youth! Young, smart, enthusiastic youth. To be more exact, we had a Graduate program – which pulls talented people fresh out of Uni, and gives them a chance to rotate within the business to maximize their learning. Stupidly, I put my hand up to take care of some of these…youth. Some of them, apparently, wanted to learn Ops.
  4. “Seems painless,” I thought – but I realized too late that it wasn’t going to be easy. “Ops” is one of those vague, nebulous terms – like “Cloud”, or “Agile”, or “DevOps”, and when they asked me about it, I really didn’t have a meaningful answer. I only knew the things I did. I only knew that I had to pass it on.
  5. And so we tried everything. We used the shotgun approach initially – because to me, a lot of the appeal of Ops comes from the fact that you’re trying to fix problems as quickly and cleanly as possible. It was about trying to figure things out under pressure. We put them on pager, so they’d have the experience of responding to alerts. We put them on the task of fixing tech debt. We even made some broken boxes for them to fix.
  6. Through this shotgun process, we started to realize that teaching Ops was going to be difficult, because of a couple of problems. One, Ops relies heavily on experiential knowledge. It’s built on things you’ve run into before – app-breaking network problems, crushing SQL issues… Two, it’s multi-disciplinary. When we tried to get them to fix a couple of issues, we realized that they needed to be able to troubleshoot problems on a lot of layers. Ten thousand things can be broken; they needed to know about each of those things. Three, defensive ops – or reactive ops, which is when you’re responding to something broken – isn’t conducive to learning. The time pressure, plus the breadth of the domain you need to know amounts to a lot of rushing. Four, offensive ops – or proactive ops, which is when you’re building things that stop things from happening or make things less error prone – requires a good baseline of information, and for you to be able to tie those things together.
  7. My feelings on this can be summarized by this comic strip, which I think highlights the difference between information and knowledge. Ops in particular is made of many, many shallow units of data that you tie together to make a whole. The problem with trying to pass down knowledge is that there’s too many of these blobs. There was no way someone could learn it in three months – which is the length of a rotation.
  8. …and this is when things got weird.
  9. And so we had a new mission. We were going to try and define these blobs of information that he needed to know. And how did we do that?
  10. Well, we started with everyone’s favorite interview question: “What happens when you go to dub-dub-dub dot google dot com? Go as deep as possible.”
  11. Eventually, we worked together and had this really nice high-level map. There’s a CDN, there’s DNS, there’s SSL, and there’s even a tiny-ass BGP frame over there.
  12. This ended up being really, really good – for many reasons. 1.) This showed things he already knew, and that we didn’t need to cover. That’s less blobs out of the map. 2.) He wasn’t able to feign knowledge – because nothing’s more naked than trying to explain something to someone. 3.) Which then highlighted – for his and my good – the parts or domains where he needed to know more. In that previous slide, for example? The SSL thing was just a bunch of question marks. 4.) This also showed what I myself didn’t know. My BGP knowledge wentas far as pushing routes, but I didn’t know how the damn thing worked. I had to pull someone in. 5.) Last, and the most important – is the “Teachback Method”. I’ll elaborate on this later.
  13. From here, we were able to cut his knowledge into domains. God bless Trello. We made cards for each tiny thing, then grouped them – but you gotta start somewhere, and we started with everyone’s favorite security problem: Wordpress.
  14. From there, we were able to focus on specific parts: Networking, basic security – all working on the same stack.
  15. Which then grew into this massive list. This is just a slice of what it looks like.
  16. With each card item, there were specific questions – but the most important part is that he should be able to explain it back to me. This took the shape of screenshots and documentation, to whiteboards – and he loved whiteboarding.
  17. He loved it so much, he drew a messload of it. We were able to amass a lot of these – from how load balancers work, to SAML, to RAID, to SANs, to DNS, etcetera, etcetera. This was spectacularly helpful, because it helped visualize a lot of abstracted concepts, and gave a clear picture on the components of a system.
  18. Once he had a good picture of how a system worked, we were able to do “verbal” troubleshooting. Each of those cards has a root cause at the back, and he had to figure out what was wrong – by telling me what he’d do, and me telling him what he’d get back. “I check disk space.” “It’s full.” And it was going marvelously well. But we had to get better, had to improve some more. So I did what anyone would do.
  19. So I picked up on a couple of things, which I’ll run through briefly. VAK Learning Styles stands for Visual, Auditory, Kinesthetic – each person has his/her own learning bias, and you should take it into account to optimize learning. Teachback method is when you ask someone to teach the subject to you. Much like the Whiteboarding exercise, having them explain it back to you shows gaps in knowledge. Knowledge Checks is the demonstration of knowledge from the learners’ part – and is essential as a mental “commit”. Spaced repetition is putting intervals of time between previously learned material to take advantage of psychological spacing.
  20. Overall, this produced a faster pickup of Ops skills for grads. We then had a repeatable workflow for Dev or Grad onboarding, which saved time because we didn’t have to do it from scratch. And the good thing is, anyone can take someone through it now.
  21. We have a couple more things to add: Metrics, so we have a demonstrable basis for which methods work. We need a meta-template to train trainers on how to train untrained people. And lastly, a lot of this effort comes from volunteered hours – this is not in the job description of the people involved. We have finite resources, and we need to make sure we can maximize our reach with them.
  22. In closing, this has been a pretty good journey. We’ve scoped out the implementation, created the architecture, and produced repeatable artifacts. We’re aiming to have metrics, A/B tests, spikes…and really, all of that is part of Ops in itself. Thank you.