Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
http://www.rubyconf.org.au With the rise of micro services and DevOps culture, engineers are finding themselves responsible for the all facets of a rapidly growing number of systems. Luckily for you, many of the processes managing these systems can be automated! But where do you begin? How do you know when something is ripe for automation? Is there such as thing as bad automation? And how do you take the first step?
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the talk "Automation Run Rampant" presented at RubyConf AU 2017, Kate Deutscher discusses the importance and implementation of automation tooling in software development, particularly in the context of scaling operations in a rapidly growing engineering environment. With the advent of microservices and an increase in team size, companies, like REA where Deutscher works, have found it necessary to automate various processes to manage the expanding complexity of their systems. **Key Points Discussed:** - **Introduction to Automation Tooling**: Deutscher defines automation tooling as software designed to automate parts of the software delivery or development processes, such as managing CI/CD pipelines, deployment, and development environments. - **The Need for Automation**: The growth of the engineering team at REA required robust automation tools to manage 580 systems with 620 engineers. Legacy solutions no longer sufficed, leading to difficulties in documentation and deployment support. - **Benefits of Automation**: Automation has significantly improved efficiency, allowing for one-step tests, builds, and deployments. It enhances developer confidence and optimizes time spent on feature development instead of manual tasks. - **Three Patterns of Automation Tooling**: - **Swiss Army Knife Tool**: Combines multiple functions under a single interface for ease of use. Example: Kubernetes, which simplifies deployment through straightforward commands. - **Screwdriver Tool**: Focuses on solving a single problem and allows for customization. Example: Capistrano, which automates deployment steps but requires developer familiarity. - **Duct-Tape Tool**: Encapsulates existing systems to provide a consistent interface without changing the underlying API. An example is a Docker script developed at REA that simplified usage but became a burden over time. **Conclusions and Takeaways**: - Each tooling pattern has distinct advantages and challenges, making it crucial for teams to assess their specific needs before adopting automation strategies. - Emphasizes the importance of making tools user-friendly and providing robust support and documentation to promote adoption and mitigate issues. Kate encourages developers to creatively explore automation within their teams, thereby managing the inevitable complexities that arise with growth in software engineering capacity.
Suggest modifications
Cancel