SlideShare a Scribd company logo
1 of 20
Download to read offline
Paving The Road To
Production
Why you need an internal tools team
Matt Reynolds
@mattreyuk
Hi my name is Matt Reynolds I’m a senior engineer in the data and infrastructure
group at Ibotta a rewarded shopping app built here in Denver. My talk today is about
how building tools can help make your life - dev or ops a little easier.
Observe
Orient
Decide
Act
First - the problem. Like the fighter pilots this theory was originally developed for,
companies are trying to get round this loop faster and faster and learn from the
changes they introduce to their customer base before their competitors can match.
Autonomous Teams
To go faster, they’re also introducing more independent teams with more autonomy to
produce their systems - breaking the old release trains and deploying independently
at a pace that works for the individual team
What About Ops?
The traditional Ops group at the end of the release path was already in trouble but
now Product Managers are driving functional requirements in all these teams, there
are rarely enough ops to embed in each dev team to inform on non-functional
requirements.
What Can We Do?
To overcome this, we need to help developers become more self sufficient - ensure
that as much as possible, operational concerns are built in from the ground up by
working with development to pave a road to production with tools.
How do I Start a
Project?
There are opportunities to provide tooling throughout the lifecycle of a service starting
with service template generators to get you going faster and help standardize
approaches. Yeoman is a great generator tool - there’s even a yeoman generator
generator
How do I Provision
Resources?
Using something like terraform template modules is a great starting point to build on
in helping devs provision their own resources but you’ll also want to build guardrails
using alerts for cost overrun and security issues so you can “trust but verify”
How do I Make it
Easier to Support?
Building standard configuration and libraries for your supported languages gives
developers an easier way to include things like request tracing, structured logging and
monitoring, configuration and secrets management
How do I run it in
Dev/Stage/Prod?
Docker can make it much easier for devs to test locally, using compose for
coordinating several containers. Then mocking, stubbing, contract testing together
with controlled testing in production can reduce the need for large staging
environments and the overhead they entail
How do I Manage it in
Production?
Based on the conventions we’ve established with earlier tools we can now automate
things like connecting to log aggregators, building standard dashboards and alerts
and a common way to deploy or roll back changes. Making “you build it, you own it”
more of a reality
Benefits:
Standardization,
Speed
Building these tools helps us to standardize our approach - it encourages common
patterns and allows people to more easily move between teams and projects, reduces
the need for specialist knowledge per team and the time required for common
operations.
Benefits:
Flow,
New Capabilities
This should reduce bottlenecks waiting for access to those specialists and allow them
to do more impactful work (like writing even more tools!) or maybe working on
reducing infrastructure spend, chaos testing for resilience etc
Starting Top Down
If there’s a big new initiative (and let’s face it, there usually is) - you may be able to
drive a top-down change by advocating how internal tools can help the company
achieve that goal - just remember to build a case on the business benefit, not the
technology details
Starting Bottom Up
… but you also need to build from the bottom up - often you’ll want some concrete
example you can point to to strengthen your case so find a pain point - especially one
between teams and build a tool to help reduce that friction
Write the Right Thing
You want to build things that will actually get used - so find early adopters prepared
for some pain, get them trying early rough versions, iterate on their feedback before
you open up to wider audience. Be sure to focus on the main use cases - the old
80/20 rule.
Listen to Your
Customers
Along with that, you need to really listen to the users of your tools, empathize and
understand their pain points - be open to their feedback - it won’t always be nice to
hear but try and find the underlying issue that’s causing the frustration so you can do
something about it
Keep it Going
Congratulations! You’ve created a bunch of tools, now how do you keep them
relevant and up to date? Try adopting an internal open source approach, accept PRs
on tools from users and then help them to take ownership when they’re mature
Support
Make use of your early adopters as evangelists, they can publicize and help with low
level support questions. Documentation is also really important as it helps provide a
consistent message.How-tos and troubleshooting guides can help with self service
but you still need an open support channel.
Expand to Other
Areas
internal tools doesn’t just have to be about dev and ops - you can expand the
principle to other groups in the organization such as data engineering, analytics and
business support teams - maybe even integrate with IT for easier on-boarding etc
Conclusions
Hopefully you’ve seen that by developing your own tools, you can help alleviate
pressure on operations specialists, empower developers to own more of the process
and improve the operational readiness of your services

More Related Content

What's hot

Dev Ops @ Envato
Dev Ops @ EnvatoDev Ops @ Envato
Dev Ops @ EnvatoJohn Barton
 
Linking characteristics to IT industry
Linking characteristics to IT industryLinking characteristics to IT industry
Linking characteristics to IT industryAjay Jassi
 
Modern agile overview
Modern agile overviewModern agile overview
Modern agile overviewSteve Purkis
 
Practical Programming It Awareness Advocacy
Practical Programming   It Awareness AdvocacyPractical Programming   It Awareness Advocacy
Practical Programming It Awareness AdvocacyMarie Claire Ponsaran
 
Legacy Content: Applying your new content strategy to old information
Legacy Content: Applying your new content strategy to old informationLegacy Content: Applying your new content strategy to old information
Legacy Content: Applying your new content strategy to old informationSalesforce Engineering
 
The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016
The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016
The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016gmaran23
 
Testing – Why We Do It Badly2
Testing – Why We Do It Badly2Testing – Why We Do It Badly2
Testing – Why We Do It Badly2adevney
 
Goody bag ghc design thinking tools
Goody bag ghc design thinking toolsGoody bag ghc design thinking tools
Goody bag ghc design thinking toolsAliza Carpio
 
Hands On Test Customer Presentation
Hands On Test Customer PresentationHands On Test Customer Presentation
Hands On Test Customer Presentationcoreytowe
 
Building a CAD Proving Ground – Robert Green, Robert Green Consulting Group
Building a CAD Proving Ground – Robert Green, Robert Green Consulting GroupBuilding a CAD Proving Ground – Robert Green, Robert Green Consulting Group
Building a CAD Proving Ground – Robert Green, Robert Green Consulting GroupSynergis Engineering Design Solutions
 
Agile Injection, Varberg
Agile Injection, VarbergAgile Injection, Varberg
Agile Injection, VarbergFredrik Wendt
 
Different ways to pay for product development presentation
 Different ways to pay for product development presentation Different ways to pay for product development presentation
Different ways to pay for product development presentationSteve Owens
 
Different ways to pay for product development presentation
 Different ways to pay for product development presentation Different ways to pay for product development presentation
Different ways to pay for product development presentationSteve Owens
 
Kevin Graves SCQAA-SF Scrum Presentation
Kevin Graves SCQAA-SF Scrum PresentationKevin Graves SCQAA-SF Scrum Presentation
Kevin Graves SCQAA-SF Scrum PresentationKevin Graves
 
Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development Jonathan Bardin
 
Building software that matters (Agilia 2014)
Building software that matters (Agilia 2014)Building software that matters (Agilia 2014)
Building software that matters (Agilia 2014)Francesco Degrassi
 
What Happens After The Prototype
What Happens After The Prototype What Happens After The Prototype
What Happens After The Prototype Steve Owens
 

What's hot (18)

Dev Ops @ Envato
Dev Ops @ EnvatoDev Ops @ Envato
Dev Ops @ Envato
 
Linking characteristics to IT industry
Linking characteristics to IT industryLinking characteristics to IT industry
Linking characteristics to IT industry
 
Modern agile overview
Modern agile overviewModern agile overview
Modern agile overview
 
Practical Programming It Awareness Advocacy
Practical Programming   It Awareness AdvocacyPractical Programming   It Awareness Advocacy
Practical Programming It Awareness Advocacy
 
Legacy Content: Applying your new content strategy to old information
Legacy Content: Applying your new content strategy to old informationLegacy Content: Applying your new content strategy to old information
Legacy Content: Applying your new content strategy to old information
 
The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016
The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016
The Impact of Culture on Distributed Agile - DiscussAgile - May 07 2016
 
Testing – Why We Do It Badly2
Testing – Why We Do It Badly2Testing – Why We Do It Badly2
Testing – Why We Do It Badly2
 
Best of scrum and lean startup for product development
Best of scrum and lean startup for product developmentBest of scrum and lean startup for product development
Best of scrum and lean startup for product development
 
Goody bag ghc design thinking tools
Goody bag ghc design thinking toolsGoody bag ghc design thinking tools
Goody bag ghc design thinking tools
 
Hands On Test Customer Presentation
Hands On Test Customer PresentationHands On Test Customer Presentation
Hands On Test Customer Presentation
 
Building a CAD Proving Ground – Robert Green, Robert Green Consulting Group
Building a CAD Proving Ground – Robert Green, Robert Green Consulting GroupBuilding a CAD Proving Ground – Robert Green, Robert Green Consulting Group
Building a CAD Proving Ground – Robert Green, Robert Green Consulting Group
 
Agile Injection, Varberg
Agile Injection, VarbergAgile Injection, Varberg
Agile Injection, Varberg
 
Different ways to pay for product development presentation
 Different ways to pay for product development presentation Different ways to pay for product development presentation
Different ways to pay for product development presentation
 
Different ways to pay for product development presentation
 Different ways to pay for product development presentation Different ways to pay for product development presentation
Different ways to pay for product development presentation
 
Kevin Graves SCQAA-SF Scrum Presentation
Kevin Graves SCQAA-SF Scrum PresentationKevin Graves SCQAA-SF Scrum Presentation
Kevin Graves SCQAA-SF Scrum Presentation
 
Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development
 
Building software that matters (Agilia 2014)
Building software that matters (Agilia 2014)Building software that matters (Agilia 2014)
Building software that matters (Agilia 2014)
 
What Happens After The Prototype
What Happens After The Prototype What Happens After The Prototype
What Happens After The Prototype
 

Similar to Paving the road to production

The Top Process Management Software That Will Make Your 2023 Great
The Top Process Management Software That Will Make Your 2023 GreatThe Top Process Management Software That Will Make Your 2023 Great
The Top Process Management Software That Will Make Your 2023 GreatKashish Trivedi
 
Scaling Software Delivery.pdf
Scaling Software Delivery.pdfScaling Software Delivery.pdf
Scaling Software Delivery.pdfTiffany Jachja
 
Growing Drupal Organisations
Growing Drupal OrganisationsGrowing Drupal Organisations
Growing Drupal OrganisationsExove
 
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest IrelandMarkus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest IrelandDavid O'Dowd
 
Open Source Content Management Systems for Small and Medium Businesses, Chari...
Open Source Content Management Systems for Small and Medium Businesses, Chari...Open Source Content Management Systems for Small and Medium Businesses, Chari...
Open Source Content Management Systems for Small and Medium Businesses, Chari...Will Hall
 
Make Continuous Delivery work for middle management
Make Continuous Delivery work for middle managementMake Continuous Delivery work for middle management
Make Continuous Delivery work for middle managementMatteo Emili
 
Questions On Technical Design Decisions
Questions On Technical Design DecisionsQuestions On Technical Design Decisions
Questions On Technical Design DecisionsRikki Wright
 
How to grow and manage Drupal organisations
How to grow and manage Drupal organisationsHow to grow and manage Drupal organisations
How to grow and manage Drupal organisationsExove
 
Trying to implement enterprise collaboration
Trying to implement enterprise collaborationTrying to implement enterprise collaboration
Trying to implement enterprise collaborationStephane Cheikh
 
Principles of Technology Leadership
Principles of Technology LeadershipPrinciples of Technology Leadership
Principles of Technology LeadershipPhil Steitz
 
Top Web Development Challenges & How To Tackle Them?
Top Web Development Challenges & How To Tackle Them?Top Web Development Challenges & How To Tackle Them?
Top Web Development Challenges & How To Tackle Them?Pixel Crayons
 
Green light AMIA 2018
Green light AMIA 2018Green light AMIA 2018
Green light AMIA 2018Sue Barrett
 
DrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & ProfitableDrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & ProfitablePromet Source
 
Os Nolen Gebhart
Os Nolen GebhartOs Nolen Gebhart
Os Nolen Gebhartoscon2007
 
Software engineering
Software engineeringSoftware engineering
Software engineeringsweetysweety8
 
How to Best Develop a Product by PlateRate Founder
How to Best Develop a Product by PlateRate FounderHow to Best Develop a Product by PlateRate Founder
How to Best Develop a Product by PlateRate FounderProduct School
 

Similar to Paving the road to production (20)

The Top Process Management Software That Will Make Your 2023 Great
The Top Process Management Software That Will Make Your 2023 GreatThe Top Process Management Software That Will Make Your 2023 Great
The Top Process Management Software That Will Make Your 2023 Great
 
Scaling Software Delivery.pdf
Scaling Software Delivery.pdfScaling Software Delivery.pdf
Scaling Software Delivery.pdf
 
Growing Drupal Organisations
Growing Drupal OrganisationsGrowing Drupal Organisations
Growing Drupal Organisations
 
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest IrelandMarkus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
 
Open Source Content Management Systems for Small and Medium Businesses, Chari...
Open Source Content Management Systems for Small and Medium Businesses, Chari...Open Source Content Management Systems for Small and Medium Businesses, Chari...
Open Source Content Management Systems for Small and Medium Businesses, Chari...
 
An Approach to Devops
An Approach to DevopsAn Approach to Devops
An Approach to Devops
 
Make Continuous Delivery work for middle management
Make Continuous Delivery work for middle managementMake Continuous Delivery work for middle management
Make Continuous Delivery work for middle management
 
Questions On Technical Design Decisions
Questions On Technical Design DecisionsQuestions On Technical Design Decisions
Questions On Technical Design Decisions
 
How to grow and manage Drupal organisations
How to grow and manage Drupal organisationsHow to grow and manage Drupal organisations
How to grow and manage Drupal organisations
 
Trying to implement enterprise collaboration
Trying to implement enterprise collaborationTrying to implement enterprise collaboration
Trying to implement enterprise collaboration
 
Principles of Technology Leadership
Principles of Technology LeadershipPrinciples of Technology Leadership
Principles of Technology Leadership
 
Devops
DevopsDevops
Devops
 
Top Web Development Challenges & How To Tackle Them?
Top Web Development Challenges & How To Tackle Them?Top Web Development Challenges & How To Tackle Them?
Top Web Development Challenges & How To Tackle Them?
 
What is Lean UX?
What is Lean UX?What is Lean UX?
What is Lean UX?
 
Green light AMIA 2018
Green light AMIA 2018Green light AMIA 2018
Green light AMIA 2018
 
Full-Stack Agile - What is DevOps?
Full-Stack Agile - What is DevOps?Full-Stack Agile - What is DevOps?
Full-Stack Agile - What is DevOps?
 
DrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & ProfitableDrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & Profitable
 
Os Nolen Gebhart
Os Nolen GebhartOs Nolen Gebhart
Os Nolen Gebhart
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
How to Best Develop a Product by PlateRate Founder
How to Best Develop a Product by PlateRate FounderHow to Best Develop a Product by PlateRate Founder
How to Best Develop a Product by PlateRate Founder
 

Recently uploaded

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
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 WorkerThousandEyes
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
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 educationjfdjdjcjdnsjd
 
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 FresherRemote DBA Services
 
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 SavingEdi Saputra
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
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...DianaGray10
 
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...apidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 

Recently uploaded (20)

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
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
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
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
 
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
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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...
 
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...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 

Paving the road to production

  • 1. Paving The Road To Production Why you need an internal tools team Matt Reynolds @mattreyuk Hi my name is Matt Reynolds I’m a senior engineer in the data and infrastructure group at Ibotta a rewarded shopping app built here in Denver. My talk today is about how building tools can help make your life - dev or ops a little easier.
  • 2. Observe Orient Decide Act First - the problem. Like the fighter pilots this theory was originally developed for, companies are trying to get round this loop faster and faster and learn from the changes they introduce to their customer base before their competitors can match.
  • 3. Autonomous Teams To go faster, they’re also introducing more independent teams with more autonomy to produce their systems - breaking the old release trains and deploying independently at a pace that works for the individual team
  • 4. What About Ops? The traditional Ops group at the end of the release path was already in trouble but now Product Managers are driving functional requirements in all these teams, there are rarely enough ops to embed in each dev team to inform on non-functional requirements.
  • 5. What Can We Do? To overcome this, we need to help developers become more self sufficient - ensure that as much as possible, operational concerns are built in from the ground up by working with development to pave a road to production with tools.
  • 6. How do I Start a Project? There are opportunities to provide tooling throughout the lifecycle of a service starting with service template generators to get you going faster and help standardize approaches. Yeoman is a great generator tool - there’s even a yeoman generator generator
  • 7. How do I Provision Resources? Using something like terraform template modules is a great starting point to build on in helping devs provision their own resources but you’ll also want to build guardrails using alerts for cost overrun and security issues so you can “trust but verify”
  • 8. How do I Make it Easier to Support? Building standard configuration and libraries for your supported languages gives developers an easier way to include things like request tracing, structured logging and monitoring, configuration and secrets management
  • 9. How do I run it in Dev/Stage/Prod? Docker can make it much easier for devs to test locally, using compose for coordinating several containers. Then mocking, stubbing, contract testing together with controlled testing in production can reduce the need for large staging environments and the overhead they entail
  • 10. How do I Manage it in Production? Based on the conventions we’ve established with earlier tools we can now automate things like connecting to log aggregators, building standard dashboards and alerts and a common way to deploy or roll back changes. Making “you build it, you own it” more of a reality
  • 11. Benefits: Standardization, Speed Building these tools helps us to standardize our approach - it encourages common patterns and allows people to more easily move between teams and projects, reduces the need for specialist knowledge per team and the time required for common operations.
  • 12. Benefits: Flow, New Capabilities This should reduce bottlenecks waiting for access to those specialists and allow them to do more impactful work (like writing even more tools!) or maybe working on reducing infrastructure spend, chaos testing for resilience etc
  • 13. Starting Top Down If there’s a big new initiative (and let’s face it, there usually is) - you may be able to drive a top-down change by advocating how internal tools can help the company achieve that goal - just remember to build a case on the business benefit, not the technology details
  • 14. Starting Bottom Up … but you also need to build from the bottom up - often you’ll want some concrete example you can point to to strengthen your case so find a pain point - especially one between teams and build a tool to help reduce that friction
  • 15. Write the Right Thing You want to build things that will actually get used - so find early adopters prepared for some pain, get them trying early rough versions, iterate on their feedback before you open up to wider audience. Be sure to focus on the main use cases - the old 80/20 rule.
  • 16. Listen to Your Customers Along with that, you need to really listen to the users of your tools, empathize and understand their pain points - be open to their feedback - it won’t always be nice to hear but try and find the underlying issue that’s causing the frustration so you can do something about it
  • 17. Keep it Going Congratulations! You’ve created a bunch of tools, now how do you keep them relevant and up to date? Try adopting an internal open source approach, accept PRs on tools from users and then help them to take ownership when they’re mature
  • 18. Support Make use of your early adopters as evangelists, they can publicize and help with low level support questions. Documentation is also really important as it helps provide a consistent message.How-tos and troubleshooting guides can help with self service but you still need an open support channel.
  • 19. Expand to Other Areas internal tools doesn’t just have to be about dev and ops - you can expand the principle to other groups in the organization such as data engineering, analytics and business support teams - maybe even integrate with IT for easier on-boarding etc
  • 20. Conclusions Hopefully you’ve seen that by developing your own tools, you can help alleviate pressure on operations specialists, empower developers to own more of the process and improve the operational readiness of your services