Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Stop thinking about productivity start thinkin...

Stop thinking about productivity start thinking about flow state

Abstract: Engineers need to get into the zone to be productive and creative, and yet, many companies go out of their way to unwittingly destroy it or introduce arbitrary productivity measures that create the wrong incentives. In this talk we will explore why it is so important to optimize for flow state by looking at all the things that do NOT make us productive, the things that break flow state and hurt developer experience.
Great developer experience (DevEx) is what you get when developers can easily get in and maintain flow state at work. Flow state must be the goal of great DevEx for the following reasons:

It makes developers happier, more creative and far more engaged in their work.
It increases the quality of software delivered by the developers.

BIO: Fernando Villalba has over a decade of miscellaneous IT experience. He started in IT support (“Have you tried turning it on and off?”), veered to become a SysAdmin (“Don’t you dare turn it off”) and later segued into DevOps type of roles (“Destroy and replace!”). He has been a consultant for various multi-billion dollar organizations helping them achieve their highest potential with their DevOps processes.

fernandovillalba.substack.com/

DevOpsDays Singapore

March 12, 2024
Tweet

More Decks by DevOpsDays Singapore

Other Decks in Technology

Transcript

  1. Presentation Title ORGANIZED BY Stop thinking about productivity, start thinking

    about flow state by Fernando Villalba Online 🎙meetup.com/devops-singapore
  2. ⏰ Stop thinking about productivity, start thinking about flow state

    🎙 by Fernando Villalba Press RECORD button devopsdays.org/singapore | @devopsdaysSG
  3. ⏰ Stop thinking about productivity, start thinking about flow state

    🎙 by Fernando Villalba devopsdays.org/singapore | @devopsdaysSG
  4. 1 (Too) many definitions of DevEx 2 Defining what great

    DevEx is 3 What is flow state? 4 Why focus your DevEx strategy on flow state? 5 Optimizing your company for flow 6 Let’s (not) talk about developer productivity Agenda 💡 Say hi on LinkedIn: https://www.linkedin.com/in/nandoit/
  5. The DevEx = UX for devs definition “Developer Experience is

    the equivalent of User Experience when the primary user of the product is a developer.”
  6. The Microsoft Definition “Developer experience refers to how easy or

    difficult it is for a developer to perform essential tasks needed to implement a change”
  7. 2. Defining what great devex is “Great developer experience (DevEx)

    is what you get when developers can easily get in and maintain flow state at work”
  8. 3. What is Flow State? Flow state (AKA “in the

    zone” or “deep work”) is a mental state in which a person is fully immersed in an activity and experiences a feeling of energized focus, enjoyment, and timelessness.
  9. Shared responsibility for flow Leadership must encourage and push a

    culture that enables flow state, but it’s everyone’s responsibility to make sure it happens
  10. 7 conditions of flow state Condition Antipattern 1 Knowing what

    to do Lack of vision, context and planning 2 Knowing how to do it Lack of resources, hard to find what’s needed 3 Knowing how well one is doing Lack of feedback loops and adequate tooling 4 Knowing where to go Lack of internal compass, overview, documentation, etc 5 High perceived challenges No project work, too much firefighting and/or drudgery 6 High perceived skills Lack of interesting and valuable skillset at work 7 Freedom from distractions Too many meetings, lack of async communication
  11. Objection 1: Not just about flow Optimizing for flow state

    does NOT mean flow at all hours, it means optimizing so it is easy to get into the flow when you have to
  12. Objection 2: Not everyone is the same Not everyone gets

    in the flow the same way, but there are optimizations that are generally applicable to most people
  13. Areas to tackle to improve flow Area Improvement 1 Communication

    Fewer and better meetings, more async communication 2 Cognitive load Maximize germane cognitive load, eliminate extraneous cognitive load, manage intrinsic cognitive load 3 Engineering practices TBD, TDD, CD, GitOps,12 factor apps, chaos engineering, etc 4 Tooling Favour tooling with great user experience. Use tooling to communicate 5 Working environment Non-distracting environment, help with home office, decor, etc. 6 Culture Vision, values, leadership, hiring, etc
  14. More Areas to tackle to improve flow Area Improvement 7

    Planning Agile over scrum: Kanban, XP, etc. ShapeUp(?) 8 Better feedback loops Reduce time to see the result of coding as close to zero as possible 9 Less context switching Reduce WIP and number of complex tools to complete task 10 Trust Blameless culture, safe environment, empathy. 11 Processes Zero step processes, no red tape. 12 Hakuna Matata Because 12 is better than 11
  15. DevEx is paramount If delivering better software, faster is your

    goal, anything that impairs flow will be your bottleneck.
  16. Flow State is developer focus Focusing on flow state is

    developer centric. Little to no incentive to game it
  17. Measurement as reference Productivity metrics should be defined by the

    team as a reference, not as an incentive or punishment.
  18. THANK YOU and see you at DEVOPSDAYS SINGAPORE devopsdays.org/singapore |

    @devopsdaysSG CONNECTING COMMUNITIES March 21 - 22, 2024