Why Developers Dig DevOps

Download Why Developers Dig DevOps

Post on 11-Jan-2017

1.407 views

Category:

Software

0 download

Embed Size (px)

TRANSCRIPT

<ul><li><p>Introduction: DWB {Developers With Benefits}</p><p>Theres a great reason to dig the DevOps change model. Youll get your work done faster and better carving out more time to tackle new business solutions and innovations. Benefits range from continuous delivery and shorter release cycles to reduced failures, collaborative workflows and faster deployments. Learn how to build, evolve and operate from others who have successfully charted this rapidly changing field. Discover how to strut your developer talents to enable faster time-to-market and move the business forward. </p><p>{Developers With Benefits}</p><p>Theres a great reason to dig the DevOps change model. Youll get your work done faster and better carving out more time to tackle new business solutions and innovations. Benefits range from continuous delivery and shorter release cycles to reduced failures, collaborative workflows and faster deployments. Learn how to build, evolve and operate from others who have successfully charted this rapidly changing field. Discover how to strut your developer talents to enable faster time-to-market and </p><p>Why Developers Dig DevOps</p></li><li><p>Why Developers Dig DevOps</p><p> DevOps teams are inherently collaborative in name and in practice. Breaking down barriers between dev and ops gives the entire team ownership of the process and product. Users and testers are actively engaged from beginning to end, no longer relegated to waiting until the application is delivered to them.</p><p>The development cycle becomes inclusive and holistic addressing programming, storage, access control, versioning, backups, networking, maintenance, security, DBA, and, of course, testing, QA, and customer support. Team members become active stakeholders in developing the product and deeply invested in designing workflows that function well for everyone on the team. </p></li><li><p>Why Developers Dig DevOps</p><p> Every developer worth his code knows that software releases can be risky and time-consuming. DevOps aims to balance faster time to market with reliability and performance. Continuous deployment enables development teams to identify new features and install them into production fast. In tandem with these deployments, applying a continuous integration strategy can help you find high-quality working solutions safely in small, regular steps by providing immediate feedback on code defects. Testing smaller pieces of functionality within an agile environment also ensures that code can be built earlier, more modularly and more cohesively. </p><p>Infrastructure can be managed by open source software tools and cloud-based enterprise services to ensure scalability and reliability. A strong cycle of continuous testing and improvement helps to advance best practices and agile standards. </p></li><li><p>http://engineering.instagram.com/posts/1125308487520335/continuous-deployment-at-instagram/</p><p>http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hundreds-of-instances</p><p>http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hundreds-of-instances</p><p>Why Developers Dig DevOps</p><p>What if your product explodes overnight, and suddenly you need to scale up on a massive level? Instagram provides a telling case study. In 2013, its user base grew by 23 percent, and the ops team had to change the server environment almost daily as millions joined Instagram while new development challenges arose to meet the demand.</p><p>The Instagram team had to move quickly to tackle all the new needs for load balancing, cloud-based application servers, data storage and usage monitoring. It was like putting out daily fires. To resolve the situation, they moved to a DevOps structure where continuous deployment was central to scaling. Then, in the spirit of advancing the DevOps community of practice, they posted what they accomplished on their engineering blog so others could learn and provide feedback.</p><p>Instagram page outlining their core principleswhen choosing a system</p><p>KEEP IT VERY SIMPLE</p><p>DONT RE-INVENT THE WHEEL </p><p>GO WITH PROVEN AND SOLID TECHNOLOGIES </p><p>WHEN YOU CAN </p></li><li><p>Why Developers Dig DevOps</p><p>Before DevOps, tribal warfare ruled IT, with developers on one side and operations on the other, throwing code over the wall, all too often without trust or respect. DevOps offers a far more collaborative and supportive structure. The team is a tribe of people with a defined mission and the skills necessary to deliver their expertise. The smaller the tribe, the more effective and agile. Limit team size to seven people - give or take one or two. Some leading companies break that down a tribe to two or three squads that boast a startup vibe. </p><p>Creating pride and attitude around your tribe is part of what makes the Dev in DevOps not just another word on an org chart. Regular celebrations of small daily or weekly wins build tribal pride. Some tribes even create a weekly Unity Hour, with shout outs to contributing members. Several companies, including Nokia, Salesforce, and Zappos host internal DevOps hackathons to generate new ideas, highlight individual skillsets and promote teambuilding. When your tribe members volunteer for tasks rather than wait for assignments, you know youve hit the sweet spot.</p><p>P O W E R E D b y S E R V I C E</p></li><li><p>Why Developers Dig DevOps</p><p> DevOps is all about agility. Your tribe is hustling to deliver Minimum Viable Product, the smallest amount of functionality that will produce value, as fast as possible. Feedback from continuous testing and customer input is constantly incorporated into the product quickly, delivering value incrementally. You gain through deploying in small batches. This exposes the most problematic issues, which may range from code changes to storage capacity issues to access or anything in the DevOps purview, first. This provides instant insights into what users find most valuable. </p></li><li><p>Why Developers Dig DevOps</p><p>The ultimate goal of DevOps is to speed up delivery and increase the quality of products and services. Start by understanding your users; this includes not just customers and stakeholders but also your IT colleagues. Tech firms are increasingly adopting the innovation technique of design thinking pioneered by IDEO, an innovation and design firm that uses a human-centered, design-based approach. Design Thinking encourages a stand-in-their shoes empathic design approach to uncover deeper, often unstated customer needs. It encompasses five revolving steps: empathize, define, ideate, prototype and test.</p><p>This holistic approach leads to more robust feedback loops. Analyzing metrics such as transaction response times, user requests, and other usage behavior improves your testing environment. But remember to keep coming back to your users. Your customers are your first resource to help you develop value and innovations. </p><p>EMPATHIZEDEFINEIDEATEPROTOTYPETEST</p></li><li><p>Why Developers Dig DevOps</p><p>User Experience (UX) principles of empathy, idea validation, research, and testing are increasingly important. How the user experiences the environment is becoming ever more essential to the process of developing robust, effective code. Start by documenting the main characteristics of user feedback that will guide DevOps to make aligned architecture and interface decisions. Then, bring it back to your scrum for analysis and discussion, and the inevitable quick development sprint. You may need to create new testing tools and test cycles as you work collaboratively toward improving your design. The best UX designers get out of the way and just help people steer themselves. Make this one of your defining DevOps principles. </p><p>Youve got to start with </p><p>the customer experience </p><p>and work back toward the </p><p>technology. </p><p>- Steve Jobs</p></li><li><p>Why Developers Dig DevOps</p><p> Continuous testing and risk-taking can turn smart failures into an essential part of the development cycle. This is not about making mistakes but about validated learning and causing things to fail early on in the development environment rather than in the live operating environment.</p><p>DevOps teams openly discuss and even welcome failures in order to share learning that leads to creating more robust code and solutions. Some companies go so far as to create a Fail Wall, sticking up Post-its on memorable fails that detail the failures, and the lessons learned. Your Fail Wall may also be a wiki. </p></li><li><p>Why Developers Dig DevOps</p><p> Track your mission-critical assets now. Servers and applications essential to business functions must be protected, and data needs to be backed up frequently to an offsite location immune from risks. DevOps tools like Chef and Puppet work through the provisioning and partitioning of virtual machines and containers in the cloud to create an offline instance of the application environment. This makes for servers that are easy to restore in real-time. When a disaster strikes, you can simply launch a new instance of the virtual server using your backed up copy and save a significant amount of recovery time.</p></li><li><p>Why Developers Dig DevOps</p><p> Engineers are often the most creative people in the environment; DevOps brings an efficient means for them to showcase their talents. Improving the efficiency of your workflows frees up time to explore higher value business problems, find new development directions and discover opportunities for monetization. Remember that a key objective of DevOps is to prioritize around business objectives. The faster you learn to automate routine tasks and reduce the cross-talk of code releases, the more time you have to explore new features for customers or applications to business units and maximize your value. </p></li><li><p>Why Developers Dig DevOps</p><p> DevOps is a cultural shift that when fully embraced nearly eliminates one of the greatest pressures for a developer: Those days when you handed an upgrade or new version of software over the wall to the tester and operations. And it broke. Then, there was hell to pay.</p><p>With continuous delivery cycles, batches of code are tested in real time, often by customers. Feedback is constant. The pressure of big deliveries on developers is removed. The DevOps team has an all-for-one and one-for-all mentality. Blaming and finger pointing are no longer part of the work environment. The team has your back. </p></li></ul>