#emily-freeman
DevOps is a philosophy, one that prioritizes people over process and process over tooling. DevOps builds a culture of trust, collaboration, and continuous improvement. #culture #trust #continuous-improvement
Culture is something to be designed and refined, not something to leave to chance. #chance
If customers don’t find value in the product, the product will fail. #product #value-and-worth
The human body has a circulatory system, a digestive system, and many other separate functions, but these systems and functions all work together, and all parts are necessary for survival. Your engineering team is the same. Yes, members of the team have different areas of focus and specialization, but they aren’t simply the sum of their parts. The team works together like a living, breathing organism.
Process is the area in which you’ll see the most quantitative improvement in the speed of your organisation’s software delivery [but] process is second only to culture in a DevOps transformation.
Your brain is more likely to categorize uncertainty as a threat rather than an opportunity. [also], change usually doesn’t happen overnight, which forces people to take a wait-and-see approach although their brain desires to know the outcome now. This situation creates conflict [either internally or between people] #the-brain #opportunity #conflict
I like to think of persuasion as tailored messaging. #persuasion
#brene-brown: stories are just data with a soul. #data
You must document your code. Documenting code is something that almost all engineering teams struggle with, and the problem is rooted in the fact that engineers know they aren’t measured by their documentation. They’re almost always stressed about getting a feature out or squashing a bug. Those are the measurements they’re evaluated against. #documentation
Not sure where to start with usability? Evaluate your signup process first. It’s kind of like cleaning the bathroom if you’re short on time and have guests coming over. That’s the one room you can be pretty sure everyone’s going to see. If your signup process is usable, you’ll be able to iteratively improve the usability of the site through various tracking tools. But if they never sign up, you won’t know whether your product is a flop or your site simply wasn’t user-friendly.
Creating great architecture is not enough. You must go one step further. Document the alternatives you considered, the costs of the path you chose, and the reasons you made the decisions you did. If you don’t write down these aspects, that knowledge will be lost. You will not remember it - I promise you. And even if you’re lucky enough to possess eidetic memory, that knowledge should not be stored in your head. [...] You must share [it] with your peers. #architecture #documentation #communication
This idea of continual learning and improvement is one of the most important concepts for a DevOps organization and is often overlooked. Continuous integration, continuous delivery, and continuous deployment means nothing if those decisions aren’t informed by actual customer feedback. Thus, continuous feedback is central to your DevOps practice. #continuous-improvement
Engineers are the engine of any tech business; they power the entire operation. Taking care of your engineers is vital to their continued health, happiness, and productivity. It behooves businesses to understand the motivations of engineers and created environments in which they can thrive. Happy engineers produce better software, faster. It’s just that simple. #wellbeing #productivity
Daniel Pink has compiled some of the best research on this topic in his book, Drive: The Surprising Truth about What Motivates Us. In many ways, science has proved the business methods of the 20th century to be simply wrong and often counterproductive. You don’t work in a factory and you don’t need a line boss. You work in an intensely intellectual and creative industry within a greater knowledge economy. #creativity
Engineers - and all humans - want to be the masters of their own lives. They want to feel as though they are making decisions and have a reasonable amount of control over their lives and their work. This is autonomy. In addition, they thrive when they can continuously improve throughout their career. Continuously improving is a bedrock principle of DevOps. Engineers want to get better at what they do, and then keep getting better and better. This is mastery. Finally, engineers desire purpose. They want to know that their work and their contributions have meaning beyond the basics of subsistence. This is purpose. #decision-making #autonomy #mastery #purpose #work
Fully consider these three principles of motivation: autonomy, mastery, and purpose. Think about the last time you felt truly fulfilled. When you think about that time, what are you doing? Who were you doing it with? Did these principles play a role in your happiness? #motivation
People don’t quit jobs. They quit managers. #quitting
Speed, after all, is not the only indicator of a healthy and productive engineering organization, and curious engineers can only thrive in healthy, fun environments. #culture
When I say “source of failure”, I do not mean root cause. Complex systems simply have no root cause. They have only triggers of failure - that is, the final steps in cascading errors. Executives typically love (or demand) to know a root cause because it’s simpler to take to the board and customers as an explanation. #failure
Much of the preparation for failure isn’t about trying to avoid failure. Instead, the idea is to expect and control for it. #control #expectation
Human error is a flawed term. It implies that humans can be the single source of failure of an incident, rather than the complex sociotechnical systems in which those humans operate. If something goes wrong, and you determine a human was the “root cause”, you just fire them, right? Problem solved! Nope. Wrong. You cannot fire your way to a great engineering team. If a human was allowed to err, your system failed, and you have a system problem, not a human problem. Humans are catalysts that exist within a system. Although humans make mistakes, they are part of a whole. One of your goals in a DevOps culture is to eliminate the possibility of human error. Although planning for every potential failure is an impossible task, chasing the goal will improve your systems and processes immensely. #devops #mistakes #growth #complexity #systems-thinking
Kaizen isn’t some grand, sexy process. Instead, it refers to tiny decisions, made every day to slowly improve productivity and eliminate wasteful work.
You can learn a growth mindset as you can any other skill. It simply takes time to adjust your thinking from reactionary and defeatist to curious and optimistic. #growth #optimism #curiosity
Everyone carries the scars formed from a lifetime of bad bosses, stressful jobs, and personal hurt. Part of being a great manager and colleague is recognizing those scars and working to create a safe work environment while respecting the fears and knee-jerk reactions of those around you. #scars #safety #leadership
Failure is an outcome. Risk-taking is an action - the input in any innovative culture. Discussing smart risk-taking and setting boundaries is a healthy part of planning for failure. #risk #boundaries
If you’re a manager, your job is to provide long-term cover for your team to do their work. Be confident in the larger, long-term benefits of having a culture in which failure isn’t something to be ashamed of. A learning culture pays dividends in employee satisfaction, innovation, and collaboration, A team that successfully fails together has a level of trust most teams will never achieve. #trust
Physical ergonomics is what improves the products you use every day, from your chairs to your computer screens. What you should be concerned about in DevOps is:
-
cognitive ergonomics (the study of how humans perceive and reason about their environment. How do people make decisions or react to certain flaky stimuli? What makes one person extremely reliable and another flaky?)
-
organizational ergonomics (the study of systems and structures inside organizations. How do teams communicate and work together? What makes some teams cooperative and others competitive?)
#organisation #erganomics #collaboration
If [the internet’s] standards weren’t open, industry innovation wouldn’t be possible. The situation would be like a hundred different road companies building an interstate without any plan for how to orient the roads, create connections, and develop uniform road materials.
Remember that however you approach your DevOps practice, your priorities should remain focused on people, process, and technology - in that order. #humans-and-machines