effectively culturing a healthy culture and workflow - jeff pierce - devopsdays tel aviv 2016
Post on 06-Jan-2017
140 Views
Preview:
TRANSCRIPT
Jeff Pierce Operations Eng @ Remind https://remind.com jeff@remind101.com https://github.com/jeffpierce @Th3Technomancer https://speakerdeck.com/technomancer
About Jeff
• Stints at Apple, Rackspace, and change.org
• Project Lead and Developer on Cassabon (https://github.com/jeffpierce/cassabon)
• Blogs infrequently at almostinteresting.net
Culture and Workflow• Personal Responsibility
• Choose an application architecture philosophy and stick to it!
Culture and Workflow• Personal Responsibility
• Choose an application architecture philosophy and stick to it!
• Make important decisions before you’re under fire
Culture and Workflow• Personal Responsibility
• Choose an application architecture philosophy and stick to it!
• Make important decisions before you’re under fire
• Use existing tools whenever possible
Personal Responsibility• Developers deploy their own code
• Requires a strong CI/CD toolchain to get code checked and deployed fast
Personal Responsibility• Developers deploy their own code
• Requires a strong CI/CD toolchain to get code checked and deployed fast
• Requires a robust infrastructure plan that makes rolling back bad deploys easy — like immutable servers!
Personal Responsibility• All Hands Pager!
• Requires a strong set of runbooks for troubleshooting
• Spreads around the pain of on-call duty
Personal Responsibility• All Hands Pager!
• Requires a strong set of runbooks for troubleshooting
• Spreads around the pain of on-call duty
• It helps to have a common architecture philosophy to make troubleshooting individual applications easier…
Pick an application architecture philosophy…and stick with it!
• 12 Factor App (https://12factor.net)
• Use declarative formats for setup automation, to minimize time and cost for new developers joining the project;
• Have a clean contract with the underlying operating system, offering maximum portability between execution environments;
• Are suitable for deployment on modern cloud platforms, obviating the need for servers and systems administration;
• Minimize divergence between development and production, enabling continuous deployment for maximum agility;
• And can scale up without significant changes to tooling, architecture, or development practices
Pick an application architecture philosophy…and stick with it!
• Makes on-boarding new engineers faster!
Pick an application architecture philosophy…and stick with it!
• Makes on-boarding new engineers faster!
• Makes tooling more portable/reusable
Pick an application architecture philosophy…and stick with it!
• Makes on-boarding new engineers faster!
• Makes tooling more portable/reusable
• Makes planning for new applications and microservices a breeze!
Make decisions when you aren’t under fire!
• Mistakes are made when planning is rushed
• Plan your objectives on a yearly, quarterly, and per-sprint basis
Make decisions when you aren’t under fire!
• Mistakes are made when planning is rushed
• Plan your objectives on a yearly, quarterly, and per-sprint basis
• Write runbooks to remove the amount of thought required at 03:25 and it all goes to hell
Make decisions when you aren’t under fire!
• Mistakes are made when planning is rushed
• Plan your objectives on a yearly, quarterly, and per-sprint basis
• Write runbooks to remove the amount of thought required at 03:25 and it all goes to hell
• DevOps/Infrastructure teams: Sit in on feature planning!
Make decisions when you aren’t under fire!
• Mistakes are made when planning is rushed
• Plan your objectives on a yearly, quarterly, and per-sprint basis
• Write runbooks to remove the amount of thought required at 03:25 and it all goes to hell
• DevOps/Infrastructure teams: Sit in on feature planning!
• Be proactive, not reactive.
Use existing tools when possible
• Using tools your company already uses…
• Reduces training
• Requires less engineering
Use existing tools when possible
• Using tools your company already uses…
• Reduces training
• Requires less engineering
• Saves time and money
Be the change you want to see
• Find a compelling story
• Identify key stakeholders
• Engage those key stakeholders
Be the change you want to see
• Find a compelling story
• Identify key stakeholders
• Engage those key stakeholders
• Make a business case
Be the change you want to see
• Find a compelling story
• Identify key stakeholders
• Engage those key stakeholders
• Make a business case
• Prototype your plan
top related