Developer Experience is central to DevOps success

A presentation at DevFest KC 2024 in November 2024 in Kansas City, MO, USA by Jeremy Meiss

Slide 1

Slide 1

Developer Experience… Central to DevOps Success devfest KC 2024

Slide 2

Slide 2

What is “Developer Experience” (DevEx)? devfest KC 2024

Slide 3

Slide 3

devfest KC 2024

Slide 4

Slide 4

git push heroku main devfest KC 2024

Slide 5

Slide 5

DevEx isn’t new REF: F. Fagerholm and J. Münch, “Developer experience: Concept and definition,” 2012 International Conference on Software and System Process (ICSSP), Zurich, Switzerland, 2012. devfest KC 2024

Slide 6

Slide 6

DevEx isn’t new “New ways of working such as globally distributed development or the integration of self-motivated external developers into software ecosystems will require a better and more comprehensive understanding of developers’ feelings, perceptions, motivations and identification with their tasks in their respective project environments.” REF: F. Fagerholm and J. Münch, “Developer experience: Concept and definition. 2012.” devfest KC 2024

Slide 7

Slide 7

DevEx isn’t new “…developer experience could be defined as a means for capturing how developers think and feel about their activities within their working environments, with the assumption that an improvement of the developer experience has positive impacts on characteristics such as sustained team and project performance.” REF: F. Fagerholm and J. Münch, “Developer experience: Concept and definition. 2012.” devfest KC 2024

Slide 8

Slide 8

Jeremy Meiss Co-Founder, DevEx Consultant DevEx Institute DevOpsDays Kansas City Organizer devfest KC 2024

Slide 9

Slide 9

A working definition of DevEx _”…the journey of developers as they learn and deploy technology, which if successful, focuses on eliminating obstacles that hinder a developer or practitioner from achieving success in their endeavors.” -Jessica West, Co-Founder, DevEx Institute devfest KC 2024

Slide 10

Slide 10

Point of clarification “DevEx” by default focuses on “developer” View “DevEx” as a whole of the lifecycle devfest KC 2024

Slide 11

Slide 11

devfest KC 2024

Slide 12

Slide 12

devfest KC 2024

Slide 13

Slide 13

devfest KC 2024

Slide 14

Slide 14

Evolution of the IDE Early text editors REF: O’Reilly “Learning the vi and Vim Editors” devfest KC 2024

Slide 15

Slide 15

Evolution of the IDE Early text editors 1976: Vi 1985: Emacs 1991: Vim 1999: nano devfest KC 2024

Slide 16

Slide 16

Evolution of the IDE Native IDEs in the 1980s 1983: Turbo Pascal 1986: Apple’s Macintosh Programmer’s Workshop devfest KC 2024

Slide 17

Slide 17

Evolution of the IDE First plug-in IDE devfest KC 2024

Slide 18

Slide 18

Evolution of the IDE First plug-in IDE HP Softbench devfest KC 2024

Slide 19

Slide 19

Evolution of the IDE First plug-in IDE HP Softbench REF: HP Journal, June 1990 edition devfest KC 2024

Slide 20

Slide 20

Evolution of the IDE Early Reviews “…the use of an IDE was not well received by developers since it would fence in their creativity.” REF: Computerwoche (“Computer Week”, German counterpart of American magazine Computer World), 1995. devfest KC 2024

Slide 21

Slide 21

Evolution of the IDE Cross-platform in the 1990s 1995: Borland Delphi devfest KC 2024

Slide 22

Slide 22

Evolution of the IDE The Web and the 1990s 1995: SGI WebMagic 1995: Microsoft FrontPage devfest KC 2024

Slide 23

Slide 23

Evolution of the IDE Features & Usability Late 1990s to 2000s 1997: Macromedia Dreamweaver 1997: Netscape Composer 1997: Microsoft Visual Studio 1999: Microsoft FrontPage 2000 2000: NetBeans 2001: IntelliJ IDEA 2001: Eclipse IDE 2002: Microsoft Visual Studio .NET devfest KC 2024

Slide 24

Slide 24

Evolution of the IDE Lightweight & Configurable 2010s to Now 2008: Sublime Text 2015: Atom 2015: Visual Studio Code devfest KC 2024

Slide 25

Slide 25

Evolution of the IDE Cloud-based Options Now 2009: PHPanywhere (eventually becoming CodeAnywhere) 2010: Cloud9 (AWS bought it in 2016) 2018: Glitch 2019: GitPod 2020: GitHub Codespaces 2024: Google Project IDX devfest KC 2024

Slide 26

Slide 26

Evolution of the IDE A result of DevEx Things we never knew we needed… From this: “…the use of an IDE was not well received by developers since it would fence in their creativity.” devfest KC 2024

Slide 27

Slide 27

Evolution of the IDE A result of DevEx Things we never knew we needed… To this: Code completion Code refactoring Syntax highlighting Debugging VCS integration (no more FTPing files around) Multi-language support Framework integration Pair programming devfest KC 2024

Slide 28

Slide 28

devfest KC 2024

Slide 29

Slide 29

devfest KC 2024

Slide 30

Slide 30

devfest KC 2024

Slide 31

Slide 31

devfest KC 2024

Slide 32

Slide 32

Server Environment Setup Manual config nightmares Late 1990s to Early 2000s devfest KC 2024

Slide 33

Slide 33

Server Environment Setup Config Mgmt & Containerization Mid-2000s to 2010s devfest KC 2024

Slide 34

Slide 34

Server Environment Setup IaC and DevOps Integration 2010s to Present devfest KC 2024

Slide 35

Slide 35

Broader Impact of DevEx Deployment pipelines Infrastructure as Code (IaC) practices Developer Efficiences devfest KC 2024

Slide 36

Slide 36

What is DevOps? the combination of practices and tools designed to increase an organization’s ability to deliver applications and services faster than traditional software development processes devfest KC 2024

Slide 37

Slide 37

DevOps Principles + DevEx alignment Collaboration devfest KC 2024

Slide 38

Slide 38

DevOps Principles + DevEx alignment Enhanced collaboration via tools and processes devfest KC 2024

Slide 39

Slide 39

DevOps Principles + DevEx alignment Collaboration Communication devfest KC 2024

Slide 40

Slide 40

DevOps Principles + DevEx alignment Enhanced collaboration via tools and processes Improving communication via streamlined info sharing and feedback devfest KC 2024

Slide 41

Slide 41

DevOps Principles + DevEx alignment Collaboration Communication Shared Responsibility devfest KC 2024

Slide 42

Slide 42

DevOps Principles + DevEx alignment Enhanced collaboration via tools and processes Improving communication via streamlined info sharing and feedback Shared responsibility by empowering all teams with access and information devfest KC 2024

Slide 43

Slide 43

devfest KC 2024

Slide 44

Slide 44

Good DevOps == Good DevEx Facilitates smoother transitions between Dev and Ops Minimizes bottlenecks with enhanced collaboration Ensures feedback loops are efficient and productive Enables DevOps principles to take hold within an organization devfest KC 2024

Slide 45

Slide 45

The Rise of Platform Engineering Specific, integrated environments that devs need Abstract away infrastructre + backend complexities Access to robust, scalable, easy-to-use platforms Streamline development processes and reduced setup time devfest KC 2024

Slide 46

Slide 46

Self-Service Platforms Developers empowered with necessary tools Leverage automation, templates, policies with agility Accelerate development, enhance productivity, foster autonomy devfest KC 2024

Slide 47

Slide 47

devfest KC 2024

Slide 48

Slide 48

Better Practices for leveling up DevEx Empower with the right tools Encourage Cross-functional Teams Implement Feedback Loops Focus on Automation Invest in Training and Development devfest KC 2024

Slide 49

Slide 49

Strategies for Improving DevEx devfest KC 2024

Slide 50

Slide 50

DevEx reflects an organizational culture devfest KC 2024

Slide 51

Slide 51

Strategies for Improving DevEx Improving DevEx in your organization DevEx initiatives should be modeled from Leadership FIRST devfest KC 2024

Slide 52

Slide 52

Improving DevEx in your organization 1. Foster a positive culture 2. Streamline the workflow(s) devfest KC 2024

Slide 53

Slide 53

Improving DevEx Foster a positive culture 1. Clear and concise documentation Encourage knowledge sharing Create easily accessible resources to reduce toil + empower devfest KC 2024

Slide 54

Slide 54

Improving DevEx Foster a positive culture 1. Clear and concise documentation 2. Promote collaboration and communication Facilitate code reviews Implement comms to foster teamwork + problem solving devfest KC 2024

Slide 55

Slide 55

Improving DevEx Foster a positive culture 1. Clear and concise documentation 2. Promote collaboration and communication 3. Champion well-being and growth Encourage feedback, up and down Recognize achievements Create a sense of belonging devfest KC 2024

Slide 56

Slide 56

Improving DevEx Streamline the workflow 1. Tools and Automation Explore tools which are highly regarded in your field Automate repetitive tasks wherever possible devfest KC 2024

Slide 57

Slide 57

Improving DevEx Streamline the workflow 1. Tools and Automation 2. Standardize environment setup Use config management tools Streamline onboarding for all team members Examples: devfest KC 2024

Slide 58

Slide 58

DevEx is… “ruthlessly eliminating barriers (and blockers) that keep your practitioners from being successful” devfest KC 2024

Slide 59

Slide 59

@jerdog.dev /in/jeremymeiss Thank you! @jerdog @jerdog@hachyderm.io @IAmJerdog jmeiss.me devfest KC 2024

Slide 60

Slide 60

END devfest KC 2024