SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
An Actionable Framework for
Understanding and Improving
Developer Experience
Michaela Greiler Margaret-Anne Storey Abi Noda
ESEC/FSE 2022 Presentation of Journal First Paper Published at TSE 2022
mgreiler margaretstorey abinoda
The SPACE of developer productivity
S – Satisfaction & Well Being
P – Performance
A – Activity
C – Collaboration & Communication
E – Efficiency & Flow
Nicole Forsgren, Margaret-Anne Storey, Chandra Maddila, Thomas Zimmermann, Brian Houck, and Jenna Butler.
2021. The SPACE of Developer Productivity: There's more to it than you think. ACM Queue. 2021
EXPERIENC
E
DEVELOPER
Once upon a time, there were two
software developers who worked for a social
media company that was recently acquired
in a hostile takeover….
What is developer experience?
How developers
Feel about
Think about and
Value their work
Fabian Fagerholm and Jürgen Münch. 2012. Developer experience: concept and definition. In Proceedings of the
International Conference on Software and System Process (ICSSP '12). IEEE Press, 73–77.
Our research aim…
An actionable conceptual framework to understand
and guide developer experience
Our study
Semi-structured interview study with 21 developers from different companies
Guiding (and emergent) research questions:
1) What important factors affect developer experience
2) What contextual characteristics influence factor importance
3) What barriers impede positive experience
4) What strategies do developers and teams use to improve their experience
5) What coping mechanisms do developers resort to
Coding example…
Transcript unit: “The founders of the company, when we would go to them for that
criticism, or what we need - they werenʼt very responsive for it. They didnʼt care, or at least
they didnʼt show any sort of empathy about it or any understanding of our situation. They
just said keep working. And so, I think there was always effort to try to improve, but we
started noticing the patterns and gave up trying. We knew that at some point it doesnʼt
matter. We just need to do our job. And that was kind of the reason why we would just
complain to each other because there was no point to reach out anymore because we
tried and it didnʼt work.” [P11]
Preliminary Code: Developers stop speaking up when not heard
Focused Code: Stop speaking up
Core Category: Coping Mechanism
Threats to credibility
Validity and reliability in qualitative work mostly has to do with how careful, thorough and honest the researchers
have been during data collection and analysis (Robson, 2002: 176).
Thoroughness and trustworthiness
- interview guideline
- coded each transcript (automatically transcribed/ manually improved)
- replayed video during coding
Interpretive validity
- Paraphrasing and asking clarifying questions
- Involvement from all researchers in axial coding process
- Left an extensive trail (videas, transcripts, notes) open to all researchers
External credibility
- 21 participants
- Saturation reached
The DevEX Framework
DX
Factors
Contextual
Characteristics
Developer
Experience
Barriers to
Improvement
Strategies to
Improve
Experience
Coping
Mechanisms
The DevEX Framework
DX
Factors
Contextual
Characteristics
Developer
Experience
Barriers to
Improvement
Strategies to
Improve
Experience
Coping
Mechanisms
Collaboration
and culture
Development
and release
Product
management
Developer flow
and fulfillment
Important Factors that Impact Developer Experience
Important Factors that Impact Developer Experience
The DevEX Framework
DX
Factors
Contextual
Characteristics
Developer
Experience
Barriers to
Improvement
Strategies to
Improve
Experience
Coping
Mechanisms
Contextual Characteristics:
Psychological safety
Presence of problems
Expectations
Seniority
Company goals
Company maturity
Frequency of problems
“I don’t think that a not perfect
codebase is a reason for somebody
to leave the company. […] Whereas
if you have a toxic culture in your
company, that’s when people think of
leaving a company and actually
really do it.” [P9]
“The weight of these categories
changes drastically depending on how
senior an engineer is. So if you’re a
junior developer, you might actually
really only care about codebase health
and the developer workflow.” [P2]
The DevEX Framework
DX
Factors
Contextual
Characteristics
Developer
Experience
Barriers to
Improvement
Strategies to
Improve
Experience
Coping
Mechanisms
Barriers to Improvement:
Low prioritization
Inability to quantify problems
Lack of visibility/awareness
Lack of buy-in, ownership
Undefined expectations
Lack of incentives
Unclear process
No visible solutions
Organizational politics
“As long as it’s not visible in
the KPIs, it’s not so important
for the company. [...] It’s hard to
make a case for it.” [P10]
The DevEX Framework
DX
Factors
Contextual
Characteristics
Developer
Experience
Barriers to
Improvement
Strategies to
Improve
Experience
Coping
Mechanisms
Individual Strategies:
Job crafting
Taking risks
Speaking up
Local improvement
Workarounds
Mimicking success
Being pragmatic
“I started finding ways to improve our
process, or our systems and have a guard rail. I
felt that brought value to the business because it
would save us from rolling back on releases and
reducing any issues [...]” [P11]
“...it’s really about having a shared
understanding, being able to trust each other,
that when I say this is important, my product
manager will say, well, then let’s do it.” [P12]
Team Strategies:
Building bridges
Creating transparency
Convincing others
Making incremental changes
Metrics and measurements
Having a driver
Involving experts
The DevEX Framework
DX
Factors
Contextual
Characteristics
Developer
Experience
Barriers to
Improvement
Strategies to
Improve
Experience
Coping
Mechanisms
Coping Mechanisms:
Focusing on personal projects
Validating negative experiences
Working overtime
No longer speaking up
Reduced engagement
Gaming the system
Leaving their job
“The quality and overall greatness of the software
we were building was declining, as we were
scaling. And I started to question what was
happening? … I got really cynical about my
experience at [company name] and I started going
into work and just being like, whatever, I’m not
going to care about these things anymore.” [P8]
The DevEX Framework
DX
Factors
Contextual
Characteristics
Developer
Experience
Barriers to
Improvement
Strategies to
Improve
Experience
Coping
Mechanisms
Plan
Do
Ask
https://getdx.com/
abinoda
EXPERIENC
E
drives productivity and
performance
DEVELOPER
Being empowered to do my best work, joyfully.
mgreiler margaretstorey abinoda

Más contenido relacionado

La actualidad más candente

What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day? What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day? Stefania Marinelli
 
Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...
Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...
Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...Susanne Kaiser
 
Beyond Agile with Team Topologies
Beyond Agile with Team TopologiesBeyond Agile with Team Topologies
Beyond Agile with Team TopologiesRich Allen
 
Workshop Scrum - 8 horas
Workshop Scrum - 8 horasWorkshop Scrum - 8 horas
Workshop Scrum - 8 horasWise Systems
 
DevOps evolution architecting the modern software factory - cloud expo east 2017
DevOps evolution architecting the modern software factory - cloud expo east 2017DevOps evolution architecting the modern software factory - cloud expo east 2017
DevOps evolution architecting the modern software factory - cloud expo east 2017Anand Akela
 
AES22 - Bien démarrer sa transformation SAFe avec un LACE
AES22 - Bien démarrer sa transformation SAFe avec un LACEAES22 - Bien démarrer sa transformation SAFe avec un LACE
AES22 - Bien démarrer sa transformation SAFe avec un LACEAgile En Seine
 
Agile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAgile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAraf Karsh Hamid
 
Strategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationStrategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationNishanth K Hydru
 
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...Matthew Skelton
 
Building a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best PracticesBuilding a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best PracticesMaRS Discovery District
 
L’agile engagé : comment l’agilité peut devenir responsable « by design »
L’agile engagé : comment l’agilité peut devenir responsable « by design »L’agile engagé : comment l’agilité peut devenir responsable « by design »
L’agile engagé : comment l’agilité peut devenir responsable « by design »Agile En Seine
 
Agile Leaders and Agile Managers
Agile Leaders and Agile ManagersAgile Leaders and Agile Managers
Agile Leaders and Agile ManagersLuca Sturaro
 
Business Value of Agile Product Management
Business Value of Agile Product ManagementBusiness Value of Agile Product Management
Business Value of Agile Product ManagementDavid Rico
 

La actualidad más candente (20)

What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day? What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day?
 
Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...
Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...
Architecture for Flow w/ Wardley Mapping, Domain-Driven Design, and Team Topo...
 
Gestao e Agilidade - Agile Trends 2019
Gestao e Agilidade - Agile Trends 2019Gestao e Agilidade - Agile Trends 2019
Gestao e Agilidade - Agile Trends 2019
 
Beyond Agile with Team Topologies
Beyond Agile with Team TopologiesBeyond Agile with Team Topologies
Beyond Agile with Team Topologies
 
Workshop Scrum - 8 horas
Workshop Scrum - 8 horasWorkshop Scrum - 8 horas
Workshop Scrum - 8 horas
 
DevOps evolution architecting the modern software factory - cloud expo east 2017
DevOps evolution architecting the modern software factory - cloud expo east 2017DevOps evolution architecting the modern software factory - cloud expo east 2017
DevOps evolution architecting the modern software factory - cloud expo east 2017
 
TDC Transformation 2021 | Estruturas Libertadoras para Agilistas - Impulsione...
TDC Transformation 2021 | Estruturas Libertadoras para Agilistas - Impulsione...TDC Transformation 2021 | Estruturas Libertadoras para Agilistas - Impulsione...
TDC Transformation 2021 | Estruturas Libertadoras para Agilistas - Impulsione...
 
AES22 - Bien démarrer sa transformation SAFe avec un LACE
AES22 - Bien démarrer sa transformation SAFe avec un LACEAES22 - Bien démarrer sa transformation SAFe avec un LACE
AES22 - Bien démarrer sa transformation SAFe avec un LACE
 
Agile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAgile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven Design
 
Papeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional ScrumPapeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional Scrum
 
Strategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationStrategies for Large Scale Agile Transformation
Strategies for Large Scale Agile Transformation
 
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...
What is platform as a product? Clues from Team Topologies - Puppetize 2020 - ...
 
Building a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best PracticesBuilding a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best Practices
 
Developer Experience on AWS
Developer Experience on AWSDeveloper Experience on AWS
Developer Experience on AWS
 
Coaching intelligent teams
Coaching intelligent teamsCoaching intelligent teams
Coaching intelligent teams
 
L’agile engagé : comment l’agilité peut devenir responsable « by design »
L’agile engagé : comment l’agilité peut devenir responsable « by design »L’agile engagé : comment l’agilité peut devenir responsable « by design »
L’agile engagé : comment l’agilité peut devenir responsable « by design »
 
Agile Leaders and Agile Managers
Agile Leaders and Agile ManagersAgile Leaders and Agile Managers
Agile Leaders and Agile Managers
 
Agile portfolio management
Agile portfolio managementAgile portfolio management
Agile portfolio management
 
Kanban Brazil 2022
Kanban Brazil 2022Kanban Brazil 2022
Kanban Brazil 2022
 
Business Value of Agile Product Management
Business Value of Agile Product ManagementBusiness Value of Agile Product Management
Business Value of Agile Product Management
 

Similar a An Actionable Framework for DX

Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2soloeng
 
Alessi sandra-portfolio-13
Alessi sandra-portfolio-13Alessi sandra-portfolio-13
Alessi sandra-portfolio-13sandrazen
 
MSF (Microsoft Solution Framework)
MSF (Microsoft Solution Framework)MSF (Microsoft Solution Framework)
MSF (Microsoft Solution Framework)Deniz Kılınç
 
Y3 ICT Lecture 6 Planning
Y3 ICT Lecture 6 PlanningY3 ICT Lecture 6 Planning
Y3 ICT Lecture 6 PlanningMiles Berry
 
Induction Proposal - Synergetics India
Induction Proposal - Synergetics IndiaInduction Proposal - Synergetics India
Induction Proposal - Synergetics IndiaSynergetics India
 
Productive Developer - Synergetics India
Productive Developer - Synergetics IndiaProductive Developer - Synergetics India
Productive Developer - Synergetics IndiaSynergetics India
 
Inductionproposal - Synergetics India
Inductionproposal - Synergetics IndiaInductionproposal - Synergetics India
Inductionproposal - Synergetics IndiaRuchi
 
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest IrelandMarkus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest IrelandDavid O'Dowd
 
Casro Presentation Project And Change Management 1st June 2011
Casro Presentation   Project And Change Management 1st June 2011Casro Presentation   Project And Change Management 1st June 2011
Casro Presentation Project And Change Management 1st June 2011sam_inamdar
 
CETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project Successful
CETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project SuccessfulCETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project Successful
CETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project SuccessfulChicago eLearning & Technology Showcase
 
An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development PrimerDerek Winter
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and AgileMemi Beltrame
 
Agile Manifesto & XP
Agile Manifesto & XPAgile Manifesto & XP
Agile Manifesto & XPSemen Arslan
 
Project Management Complete Concept
Project Management Complete Concept Project Management Complete Concept
Project Management Complete Concept MuhammadTalha436
 
The Secret, Yet Obvious, Ingredient to Sustainable Agility
The Secret, Yet Obvious, Ingredient to Sustainable AgilityThe Secret, Yet Obvious, Ingredient to Sustainable Agility
The Secret, Yet Obvious, Ingredient to Sustainable AgilityAhmed Sidky
 

Similar a An Actionable Framework for DX (20)

Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2
 
Alessi sandra-portfolio-13
Alessi sandra-portfolio-13Alessi sandra-portfolio-13
Alessi sandra-portfolio-13
 
MSF (Microsoft Solution Framework)
MSF (Microsoft Solution Framework)MSF (Microsoft Solution Framework)
MSF (Microsoft Solution Framework)
 
Agile testing
Agile testingAgile testing
Agile testing
 
Y3 ICT Lecture 6 Planning
Y3 ICT Lecture 6 PlanningY3 ICT Lecture 6 Planning
Y3 ICT Lecture 6 Planning
 
Induction Plan - Synergetics India
Induction Plan - Synergetics IndiaInduction Plan - Synergetics India
Induction Plan - Synergetics India
 
Induction Proposal - Synergetics India
Induction Proposal - Synergetics IndiaInduction Proposal - Synergetics India
Induction Proposal - Synergetics India
 
Productive Developer - Synergetics India
Productive Developer - Synergetics IndiaProductive Developer - Synergetics India
Productive Developer - Synergetics India
 
Inductionproposal - Synergetics India
Inductionproposal - Synergetics IndiaInductionproposal - Synergetics India
Inductionproposal - Synergetics India
 
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest IrelandMarkus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
 
U Xmagic Agile Presentation
U Xmagic Agile PresentationU Xmagic Agile Presentation
U Xmagic Agile Presentation
 
Casro Presentation Project And Change Management 1st June 2011
Casro Presentation   Project And Change Management 1st June 2011Casro Presentation   Project And Change Management 1st June 2011
Casro Presentation Project And Change Management 1st June 2011
 
Agile Engineering Practices
Agile Engineering PracticesAgile Engineering Practices
Agile Engineering Practices
 
CETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project Successful
CETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project SuccessfulCETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project Successful
CETS 2011, Mark Steiner, Top 10 Ways to Make Your eLearning Project Successful
 
An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development Primer
 
Just Married: User Centered Design and Agile
Just Married: User Centered Design and AgileJust Married: User Centered Design and Agile
Just Married: User Centered Design and Agile
 
Michael Elkabetz
Michael Elkabetz Michael Elkabetz
Michael Elkabetz
 
Agile Manifesto & XP
Agile Manifesto & XPAgile Manifesto & XP
Agile Manifesto & XP
 
Project Management Complete Concept
Project Management Complete Concept Project Management Complete Concept
Project Management Complete Concept
 
The Secret, Yet Obvious, Ingredient to Sustainable Agility
The Secret, Yet Obvious, Ingredient to Sustainable AgilityThe Secret, Yet Obvious, Ingredient to Sustainable Agility
The Secret, Yet Obvious, Ingredient to Sustainable Agility
 

Más de Margaret-Anne Storey

ASE Keynote 2022: From Automation to Empowering Software Developers
ASE Keynote 2022: From Automation to Empowering Software Developers ASE Keynote 2022: From Automation to Empowering Software Developers
ASE Keynote 2022: From Automation to Empowering Software Developers Margaret-Anne Storey
 
Software Bots as Superheroes in the SPACE of Developer Productivity
Software Bots as Superheroes in the SPACE of Developer ProductivitySoftware Bots as Superheroes in the SPACE of Developer Productivity
Software Bots as Superheroes in the SPACE of Developer ProductivityMargaret-Anne Storey
 
After the Pandemic: Rethinking Developer Productivity (There’s more to it th...
After the Pandemic:  Rethinking Developer Productivity (There’s more to it th...After the Pandemic:  Rethinking Developer Productivity (There’s more to it th...
After the Pandemic: Rethinking Developer Productivity (There’s more to it th...Margaret-Anne Storey
 
Towards a Theory of Developer Satisfaction and Productivity
Towards a Theory of Developer Satisfaction and ProductivityTowards a Theory of Developer Satisfaction and Productivity
Towards a Theory of Developer Satisfaction and ProductivityMargaret-Anne Storey
 
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...Publish or Perish: Questioning the Impact of Our Research on the Software Dev...
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...Margaret-Anne Storey
 
Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...
Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...
Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...Margaret-Anne Storey
 
The Elusive Nature of Software Documentation
The Elusive Nature of Software DocumentationThe Elusive Nature of Software Documentation
The Elusive Nature of Software DocumentationMargaret-Anne Storey
 
FSE 2016 Panel: The State of Software Engineering Research
FSE 2016 Panel: The State of Software Engineering ResearchFSE 2016 Panel: The State of Software Engineering Research
FSE 2016 Panel: The State of Software Engineering ResearchMargaret-Anne Storey
 
Cascon 2016 Keynote: Disrupting Developer Productivity One Bot at a Time
Cascon 2016 Keynote: Disrupting Developer Productivity One Bot at a TimeCascon 2016 Keynote: Disrupting Developer Productivity One Bot at a Time
Cascon 2016 Keynote: Disrupting Developer Productivity One Bot at a TimeMargaret-Anne Storey
 
To Bot or Not: How Bots can Support Collaboration in Software Engineering (I...
To Bot or Not:  How Bots can Support Collaboration in Software Engineering (I...To Bot or Not:  How Bots can Support Collaboration in Software Engineering (I...
To Bot or Not: How Bots can Support Collaboration in Software Engineering (I...Margaret-Anne Storey
 
Lies, Damned Lies and Software Analytics: Why Big Data Needs Rich Data
Lies, Damned Lies and Software Analytics:  Why Big Data Needs Rich DataLies, Damned Lies and Software Analytics:  Why Big Data Needs Rich Data
Lies, Damned Lies and Software Analytics: Why Big Data Needs Rich DataMargaret-Anne Storey
 
Visualization for Software Analytics
Visualization for Software AnalyticsVisualization for Software Analytics
Visualization for Software AnalyticsMargaret-Anne Storey
 
The (R)evolution of Social Media in Software Engineering
The (R)evolution of Social Media in Software EngineeringThe (R)evolution of Social Media in Software Engineering
The (R)evolution of Social Media in Software EngineeringMargaret-Anne Storey
 
How Developers Stay Current Using Twitter
How Developers Stay Current Using TwitterHow Developers Stay Current Using Twitter
How Developers Stay Current Using TwitterMargaret-Anne Storey
 
Crowdsourcing Documentation in Software Engineering
Crowdsourcing Documentation in Software EngineeringCrowdsourcing Documentation in Software Engineering
Crowdsourcing Documentation in Software EngineeringMargaret-Anne Storey
 
Benevol 2012 Keynote: The Social Software (R)evolution
Benevol 2012 Keynote: The Social Software (R)evolutionBenevol 2012 Keynote: The Social Software (R)evolution
Benevol 2012 Keynote: The Social Software (R)evolutionMargaret-Anne Storey
 
SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...
SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...
SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...Margaret-Anne Storey
 
Towards the Social Programmer (MSR 2012 Keynote by M. Storey)
Towards the Social Programmer (MSR 2012 Keynote by M. Storey)Towards the Social Programmer (MSR 2012 Keynote by M. Storey)
Towards the Social Programmer (MSR 2012 Keynote by M. Storey)Margaret-Anne Storey
 

Más de Margaret-Anne Storey (20)

ASE Keynote 2022: From Automation to Empowering Software Developers
ASE Keynote 2022: From Automation to Empowering Software Developers ASE Keynote 2022: From Automation to Empowering Software Developers
ASE Keynote 2022: From Automation to Empowering Software Developers
 
Software Bots as Superheroes in the SPACE of Developer Productivity
Software Bots as Superheroes in the SPACE of Developer ProductivitySoftware Bots as Superheroes in the SPACE of Developer Productivity
Software Bots as Superheroes in the SPACE of Developer Productivity
 
After the Pandemic: Rethinking Developer Productivity (There’s more to it th...
After the Pandemic:  Rethinking Developer Productivity (There’s more to it th...After the Pandemic:  Rethinking Developer Productivity (There’s more to it th...
After the Pandemic: Rethinking Developer Productivity (There’s more to it th...
 
Icse 2020 bof reviewing papers
Icse 2020 bof reviewing papersIcse 2020 bof reviewing papers
Icse 2020 bof reviewing papers
 
Towards a Theory of Developer Satisfaction and Productivity
Towards a Theory of Developer Satisfaction and ProductivityTowards a Theory of Developer Satisfaction and Productivity
Towards a Theory of Developer Satisfaction and Productivity
 
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...Publish or Perish: Questioning the Impact of Our Research on the Software Dev...
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...
 
Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...
Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...
Using a Visual Abstract as a Lens for Communicating and Promoting Design Scie...
 
The Elusive Nature of Software Documentation
The Elusive Nature of Software DocumentationThe Elusive Nature of Software Documentation
The Elusive Nature of Software Documentation
 
FSE 2016 Panel: The State of Software Engineering Research
FSE 2016 Panel: The State of Software Engineering ResearchFSE 2016 Panel: The State of Software Engineering Research
FSE 2016 Panel: The State of Software Engineering Research
 
Cascon 2016 Keynote: Disrupting Developer Productivity One Bot at a Time
Cascon 2016 Keynote: Disrupting Developer Productivity One Bot at a TimeCascon 2016 Keynote: Disrupting Developer Productivity One Bot at a Time
Cascon 2016 Keynote: Disrupting Developer Productivity One Bot at a Time
 
To Bot or Not: How Bots can Support Collaboration in Software Engineering (I...
To Bot or Not:  How Bots can Support Collaboration in Software Engineering (I...To Bot or Not:  How Bots can Support Collaboration in Software Engineering (I...
To Bot or Not: How Bots can Support Collaboration in Software Engineering (I...
 
Lies, Damned Lies and Software Analytics: Why Big Data Needs Rich Data
Lies, Damned Lies and Software Analytics:  Why Big Data Needs Rich DataLies, Damned Lies and Software Analytics:  Why Big Data Needs Rich Data
Lies, Damned Lies and Software Analytics: Why Big Data Needs Rich Data
 
Visualization for Software Analytics
Visualization for Software AnalyticsVisualization for Software Analytics
Visualization for Software Analytics
 
The (R)evolution of Social Media in Software Engineering
The (R)evolution of Social Media in Software EngineeringThe (R)evolution of Social Media in Software Engineering
The (R)evolution of Social Media in Software Engineering
 
How Developers Stay Current Using Twitter
How Developers Stay Current Using TwitterHow Developers Stay Current Using Twitter
How Developers Stay Current Using Twitter
 
Crowdsourcing Documentation in Software Engineering
Crowdsourcing Documentation in Software EngineeringCrowdsourcing Documentation in Software Engineering
Crowdsourcing Documentation in Software Engineering
 
Benevol 2012 Keynote: The Social Software (R)evolution
Benevol 2012 Keynote: The Social Software (R)evolutionBenevol 2012 Keynote: The Social Software (R)evolution
Benevol 2012 Keynote: The Social Software (R)evolution
 
SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...
SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...
SLE 2012 Keynote: Cognitive and Social Challenges of Ontology Use in the Biom...
 
Research industry panel review
Research industry panel reviewResearch industry panel review
Research industry panel review
 
Towards the Social Programmer (MSR 2012 Keynote by M. Storey)
Towards the Social Programmer (MSR 2012 Keynote by M. Storey)Towards the Social Programmer (MSR 2012 Keynote by M. Storey)
Towards the Social Programmer (MSR 2012 Keynote by M. Storey)
 

Último

11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdf11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdfHafizMudaserAhmad
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdfAkritiPradhan2
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSsandhya757531
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxRomil Mishra
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Romil Mishra
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming languageSmritiSharma901052
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHSneha Padhiar
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosVictor Morales
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating SystemRashmi Bhat
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxsiddharthjain2303
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfBalamuruganV28
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingBootNeck1
 
Artificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewArtificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewsandhya757531
 
Novel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsNovel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsResearcher Researcher
 
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...Stork
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionSneha Padhiar
 
Engineering Drawing section of solid
Engineering Drawing     section of solidEngineering Drawing     section of solid
Engineering Drawing section of solidnamansinghjarodiya
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSneha Padhiar
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTSneha Padhiar
 

Último (20)

Designing pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptxDesigning pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptx
 
11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdf11. Properties of Liquid Fuels in Energy Engineering.pdf
11. Properties of Liquid Fuels in Energy Engineering.pdf
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptx
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming language
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitos
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating System
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptx
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdf
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event Scheduling
 
Artificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewArtificial Intelligence in Power System overview
Artificial Intelligence in Power System overview
 
Novel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsNovel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending Actuators
 
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
Stork Webinar | APM Transformational planning, Tool Selection & Performance T...
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based question
 
Engineering Drawing section of solid
Engineering Drawing     section of solidEngineering Drawing     section of solid
Engineering Drawing section of solid
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
 

An Actionable Framework for DX

  • 1. An Actionable Framework for Understanding and Improving Developer Experience Michaela Greiler Margaret-Anne Storey Abi Noda ESEC/FSE 2022 Presentation of Journal First Paper Published at TSE 2022 mgreiler margaretstorey abinoda
  • 2. The SPACE of developer productivity S – Satisfaction & Well Being P – Performance A – Activity C – Collaboration & Communication E – Efficiency & Flow Nicole Forsgren, Margaret-Anne Storey, Chandra Maddila, Thomas Zimmermann, Brian Houck, and Jenna Butler. 2021. The SPACE of Developer Productivity: There's more to it than you think. ACM Queue. 2021
  • 4. Once upon a time, there were two software developers who worked for a social media company that was recently acquired in a hostile takeover….
  • 5. What is developer experience? How developers Feel about Think about and Value their work Fabian Fagerholm and Jürgen Münch. 2012. Developer experience: concept and definition. In Proceedings of the International Conference on Software and System Process (ICSSP '12). IEEE Press, 73–77.
  • 6. Our research aim… An actionable conceptual framework to understand and guide developer experience
  • 7. Our study Semi-structured interview study with 21 developers from different companies Guiding (and emergent) research questions: 1) What important factors affect developer experience 2) What contextual characteristics influence factor importance 3) What barriers impede positive experience 4) What strategies do developers and teams use to improve their experience 5) What coping mechanisms do developers resort to
  • 8. Coding example… Transcript unit: “The founders of the company, when we would go to them for that criticism, or what we need - they werenʼt very responsive for it. They didnʼt care, or at least they didnʼt show any sort of empathy about it or any understanding of our situation. They just said keep working. And so, I think there was always effort to try to improve, but we started noticing the patterns and gave up trying. We knew that at some point it doesnʼt matter. We just need to do our job. And that was kind of the reason why we would just complain to each other because there was no point to reach out anymore because we tried and it didnʼt work.” [P11] Preliminary Code: Developers stop speaking up when not heard Focused Code: Stop speaking up Core Category: Coping Mechanism
  • 9. Threats to credibility Validity and reliability in qualitative work mostly has to do with how careful, thorough and honest the researchers have been during data collection and analysis (Robson, 2002: 176). Thoroughness and trustworthiness - interview guideline - coded each transcript (automatically transcribed/ manually improved) - replayed video during coding Interpretive validity - Paraphrasing and asking clarifying questions - Involvement from all researchers in axial coding process - Left an extensive trail (videas, transcripts, notes) open to all researchers External credibility - 21 participants - Saturation reached
  • 10. The DevEX Framework DX Factors Contextual Characteristics Developer Experience Barriers to Improvement Strategies to Improve Experience Coping Mechanisms
  • 11. The DevEX Framework DX Factors Contextual Characteristics Developer Experience Barriers to Improvement Strategies to Improve Experience Coping Mechanisms
  • 12. Collaboration and culture Development and release Product management Developer flow and fulfillment Important Factors that Impact Developer Experience
  • 13. Important Factors that Impact Developer Experience
  • 14. The DevEX Framework DX Factors Contextual Characteristics Developer Experience Barriers to Improvement Strategies to Improve Experience Coping Mechanisms
  • 15. Contextual Characteristics: Psychological safety Presence of problems Expectations Seniority Company goals Company maturity Frequency of problems “I don’t think that a not perfect codebase is a reason for somebody to leave the company. […] Whereas if you have a toxic culture in your company, that’s when people think of leaving a company and actually really do it.” [P9] “The weight of these categories changes drastically depending on how senior an engineer is. So if you’re a junior developer, you might actually really only care about codebase health and the developer workflow.” [P2]
  • 16. The DevEX Framework DX Factors Contextual Characteristics Developer Experience Barriers to Improvement Strategies to Improve Experience Coping Mechanisms
  • 17. Barriers to Improvement: Low prioritization Inability to quantify problems Lack of visibility/awareness Lack of buy-in, ownership Undefined expectations Lack of incentives Unclear process No visible solutions Organizational politics “As long as it’s not visible in the KPIs, it’s not so important for the company. [...] It’s hard to make a case for it.” [P10]
  • 18. The DevEX Framework DX Factors Contextual Characteristics Developer Experience Barriers to Improvement Strategies to Improve Experience Coping Mechanisms
  • 19. Individual Strategies: Job crafting Taking risks Speaking up Local improvement Workarounds Mimicking success Being pragmatic “I started finding ways to improve our process, or our systems and have a guard rail. I felt that brought value to the business because it would save us from rolling back on releases and reducing any issues [...]” [P11] “...it’s really about having a shared understanding, being able to trust each other, that when I say this is important, my product manager will say, well, then let’s do it.” [P12] Team Strategies: Building bridges Creating transparency Convincing others Making incremental changes Metrics and measurements Having a driver Involving experts
  • 20. The DevEX Framework DX Factors Contextual Characteristics Developer Experience Barriers to Improvement Strategies to Improve Experience Coping Mechanisms
  • 21. Coping Mechanisms: Focusing on personal projects Validating negative experiences Working overtime No longer speaking up Reduced engagement Gaming the system Leaving their job “The quality and overall greatness of the software we were building was declining, as we were scaling. And I started to question what was happening? … I got really cynical about my experience at [company name] and I started going into work and just being like, whatever, I’m not going to care about these things anymore.” [P8]
  • 22. The DevEX Framework DX Factors Contextual Characteristics Developer Experience Barriers to Improvement Strategies to Improve Experience Coping Mechanisms
  • 25. EXPERIENC E drives productivity and performance DEVELOPER Being empowered to do my best work, joyfully. mgreiler margaretstorey abinoda