SlideShare a Scribd company logo
1 of 14
Towards a Theory of
Developer Satisfaction and Productivity
Margaret-Anne Storey, Thomas Zimmermann, Chris Bird,
Jacek Czerwonka, Brendan Murphy, Eirini Kalliamvakou
July 8th, ICSE 2020 Journal First
IEEE Transactions on Software Engineering
@margaretstorey
mstorey@uvic.ca
Special Thanks
Cassandra Petrachenko
Engineers at Microsoft
A Sabbatical at Microsoft Engineering System Team Spring
2017
Theory about Job Satisfaction and Performance
(Judge et al. 2001)
3
Job
Satisfaction
Job
Performance
Factors
4
Work context variables
Overall Job
Satisfaction
Productivity
Satisfaction
Social and
Technical
Factors
Social and
Technical
Factors
Challenges
Goal: develop a developer satisfaction and productivity theory
?
A literature review and
onsite interviews:
30 factors,
15 challenges
Jan-March 2017
Second survey
465 developers
satisfaction, importance
of 44 factors, and
impact of 24 challenges
Oct 2017
First survey
591 engineers
revealed additional
14 factors, 9 challenges
April 2017
Methodology5
The final survey with 44 factors, Fall 20176
7
Challenges Factors
A link indicates satisfaction
with a factor was significantly
lower in the presence of a
challenge:
8
Engineering system
Hardware
Engineering
processes
Collaboration tools
Engineering
tools
Composite factors
Work environmentPhysical
environment
Interruptions
# people in workspace
Private
office
Impactful Work
Learning skills for future
Work
vision
Work type
Can achieve
goals
Impact of work
Work culture
Manager
Team
culture
Collaborative team
Organization
culture
Important contributor
Skills are well used
Important team member
Linear regression models with standardized coefficients
shows how different factors influence overall job satisfaction
9
10
Linear regression models with standardized coefficients
shows how different factors influence perceived productivity
11 Instantiating the theory for a specific cohort of developers
External validity
Single company, but
diverse dev contexts
Internal validity
Ambiguity in questions
Response bias
Construct validity
Self reported productivity
Perceived importance
of factors
Limitations12
Transferability and credibility: Our findings align with other rigorous research
[Murphy-Hill, Graziotin] and resonated with our study subjects throughout the study.
Developer
Satisfaction
Perceived
Productivity
Impactful work
Important contributor
13
Appreciation
Work culture
Work-life balance
Autonomy
Can complete tasks
Engineering system
Technical skills
Work environment
Developer satisfaction and productivity theory @margaretstorey
mstorey@uvic.ca
14 Hello ICSE colleagues and friends….

More Related Content

What's hot

Software Development as an Experiment System: A Qualitative Survey on the St...
Software Development as an Experiment System:  A Qualitative Survey on the St...Software Development as an Experiment System:  A Qualitative Survey on the St...
Software Development as an Experiment System: A Qualitative Survey on the St...Jürgen Münch
 
Where do we stand in Requirements Engineering Improvement Today? First Result...
Where do we stand in Requirements Engineering Improvement Today? First Result...Where do we stand in Requirements Engineering Improvement Today? First Result...
Where do we stand in Requirements Engineering Improvement Today? First Result...Daniel Mendez
 
An Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software EngineeringAn Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software EngineeringDaniel Mendez
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineeringIvano Malavolta
 
Building Blocks for Continuous Experimentation
Building Blocks for Continuous ExperimentationBuilding Blocks for Continuous Experimentation
Building Blocks for Continuous ExperimentationJürgen Münch
 
Theory Building in RE - The NaPiRE Initiative
Theory Building in RE - The NaPiRE InitiativeTheory Building in RE - The NaPiRE Initiative
Theory Building in RE - The NaPiRE InitiativeDaniel Mendez
 
Design Thinking for Requirements Engineering
Design Thinking for Requirements EngineeringDesign Thinking for Requirements Engineering
Design Thinking for Requirements EngineeringDaniel Mendez
 
ICPC 2015 - MIP Introduction
ICPC 2015 - MIP IntroductionICPC 2015 - MIP Introduction
ICPC 2015 - MIP IntroductionRocco Oliveto
 
Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!Walid Maalej
 
Who cares about Software Process Modelling? A First Investigation about the P...
Who cares about Software Process Modelling? A First Investigation about the P...Who cares about Software Process Modelling? A First Investigation about the P...
Who cares about Software Process Modelling? A First Investigation about the P...Daniel Mendez
 
Improving Requirements Engineering by Artefact Orientation
Improving Requirements Engineering by Artefact OrientationImproving Requirements Engineering by Artefact Orientation
Improving Requirements Engineering by Artefact OrientationDaniel Mendez
 
Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...
Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...
Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...Daniel Mendez
 
Empirical Software Engineering
Empirical Software EngineeringEmpirical Software Engineering
Empirical Software EngineeringRahimLotfi
 
The Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer EcosystemThe Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer EcosystemNicole Novielli
 
A Case Study on Artefact-based RE Improvement in Practice
A Case Study on Artefact-based RE Improvement in PracticeA Case Study on Artefact-based RE Improvement in Practice
A Case Study on Artefact-based RE Improvement in PracticeDaniel Mendez
 
Building and Evaluating Theories 
 in Software Engineering
Building and Evaluating Theories 
 in Software EngineeringBuilding and Evaluating Theories 
 in Software Engineering
Building and Evaluating Theories 
 in Software EngineeringDaniel Mendez
 
Msr14 tutorial 4upload
Msr14 tutorial 4uploadMsr14 tutorial 4upload
Msr14 tutorial 4uploadWalid Maalej
 

What's hot (20)

Software Development as an Experiment System: A Qualitative Survey on the St...
Software Development as an Experiment System:  A Qualitative Survey on the St...Software Development as an Experiment System:  A Qualitative Survey on the St...
Software Development as an Experiment System: A Qualitative Survey on the St...
 
Where do we stand in Requirements Engineering Improvement Today? First Result...
Where do we stand in Requirements Engineering Improvement Today? First Result...Where do we stand in Requirements Engineering Improvement Today? First Result...
Where do we stand in Requirements Engineering Improvement Today? First Result...
 
An Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software EngineeringAn Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software Engineering
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering
 
Building Blocks for Continuous Experimentation
Building Blocks for Continuous ExperimentationBuilding Blocks for Continuous Experimentation
Building Blocks for Continuous Experimentation
 
Theory Building in RE - The NaPiRE Initiative
Theory Building in RE - The NaPiRE InitiativeTheory Building in RE - The NaPiRE Initiative
Theory Building in RE - The NaPiRE Initiative
 
Design Thinking for Requirements Engineering
Design Thinking for Requirements EngineeringDesign Thinking for Requirements Engineering
Design Thinking for Requirements Engineering
 
ICPC 2015 - MIP Introduction
ICPC 2015 - MIP IntroductionICPC 2015 - MIP Introduction
ICPC 2015 - MIP Introduction
 
Rachele Floeser Resume
Rachele Floeser ResumeRachele Floeser Resume
Rachele Floeser Resume
 
Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!
 
Who cares about Software Process Modelling? A First Investigation about the P...
Who cares about Software Process Modelling? A First Investigation about the P...Who cares about Software Process Modelling? A First Investigation about the P...
Who cares about Software Process Modelling? A First Investigation about the P...
 
Improving Requirements Engineering by Artefact Orientation
Improving Requirements Engineering by Artefact OrientationImproving Requirements Engineering by Artefact Orientation
Improving Requirements Engineering by Artefact Orientation
 
Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...
Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...
Artefact-based Requirements Engineering Improvement - Learning to Walk in Pra...
 
Empirical Software Engineering
Empirical Software EngineeringEmpirical Software Engineering
Empirical Software Engineering
 
The Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer EcosystemThe Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer Ecosystem
 
Thinking in software testing
Thinking in software testingThinking in software testing
Thinking in software testing
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
A Case Study on Artefact-based RE Improvement in Practice
A Case Study on Artefact-based RE Improvement in PracticeA Case Study on Artefact-based RE Improvement in Practice
A Case Study on Artefact-based RE Improvement in Practice
 
Building and Evaluating Theories 
 in Software Engineering
Building and Evaluating Theories 
 in Software EngineeringBuilding and Evaluating Theories 
 in Software Engineering
Building and Evaluating Theories 
 in Software Engineering
 
Msr14 tutorial 4upload
Msr14 tutorial 4uploadMsr14 tutorial 4upload
Msr14 tutorial 4upload
 

Similar to Towards a Theory of Developer Satisfaction and Productivity

Towards Advanced Business Analytics using Text Mining and Deep Learning
Towards Advanced Business Analytics using Text Mining and Deep LearningTowards Advanced Business Analytics using Text Mining and Deep Learning
Towards Advanced Business Analytics using Text Mining and Deep LearningGene Moo Lee
 
On to code review lessons learned at microsoft
On to code review lessons learned at microsoftOn to code review lessons learned at microsoft
On to code review lessons learned at microsoftMichaela Greiler
 
Service Innovation - Increasing effectiveness for corporate clients at JOSEPHS
Service Innovation - Increasing effectiveness for corporate clients at JOSEPHSService Innovation - Increasing effectiveness for corporate clients at JOSEPHS
Service Innovation - Increasing effectiveness for corporate clients at JOSEPHSF789GH
 
Promise 2011: "Empirical validation of human factors on predicting issue reso...
Promise 2011: "Empirical validation of human factors on predicting issue reso...Promise 2011: "Empirical validation of human factors on predicting issue reso...
Promise 2011: "Empirical validation of human factors on predicting issue reso...CS, NcState
 
Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives Christoph Matthies
 
The Organization Motivation on Employee Performance in an Engineering College...
The Organization Motivation on Employee Performance in an Engineering College...The Organization Motivation on Employee Performance in an Engineering College...
The Organization Motivation on Employee Performance in an Engineering College...IRJET Journal
 
Web Collaboration for Software Engineering
Web Collaboration for Software EngineeringWeb Collaboration for Software Engineering
Web Collaboration for Software EngineeringTiago Teixeira
 
ICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-final
ICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-finalICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-final
ICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-finalriedlc
 
Leveraging HPC Resources to Improve the Experimental Design of Software Analy...
Leveraging HPC Resources to Improve the Experimental Design of Software Analy...Leveraging HPC Resources to Improve the Experimental Design of Software Analy...
Leveraging HPC Resources to Improve the Experimental Design of Software Analy...Chakkrit (Kla) Tantithamthavorn
 
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docxEDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docxtidwellveronique
 
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docxEDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docxbudabrooks46239
 
The Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesThe Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesChristoph Matthies
 
Information Systems design science research
Information Systems design science  researchInformation Systems design science  research
Information Systems design science researchRaimo Halinen
 
Software Analytics = Sharing Information
Software Analytics = Sharing InformationSoftware Analytics = Sharing Information
Software Analytics = Sharing InformationThomas Zimmermann
 
Mining Correlations of ATL Transformation and Metamodel Metrics
Mining Correlations of ATL Transformation and Metamodel MetricsMining Correlations of ATL Transformation and Metamodel Metrics
Mining Correlations of ATL Transformation and Metamodel Metrics Davide Ruscio
 

Similar to Towards a Theory of Developer Satisfaction and Productivity (20)

2011 EASE - Motivation in Software Engineering: A Systematic Review Update
2011 EASE - Motivation in Software Engineering: A Systematic Review Update2011 EASE - Motivation in Software Engineering: A Systematic Review Update
2011 EASE - Motivation in Software Engineering: A Systematic Review Update
 
Towards Advanced Business Analytics using Text Mining and Deep Learning
Towards Advanced Business Analytics using Text Mining and Deep LearningTowards Advanced Business Analytics using Text Mining and Deep Learning
Towards Advanced Business Analytics using Text Mining and Deep Learning
 
On to code review lessons learned at microsoft
On to code review lessons learned at microsoftOn to code review lessons learned at microsoft
On to code review lessons learned at microsoft
 
Service Innovation - Increasing effectiveness for corporate clients at JOSEPHS
Service Innovation - Increasing effectiveness for corporate clients at JOSEPHSService Innovation - Increasing effectiveness for corporate clients at JOSEPHS
Service Innovation - Increasing effectiveness for corporate clients at JOSEPHS
 
Promise 2011: "Empirical validation of human factors on predicting issue reso...
Promise 2011: "Empirical validation of human factors on predicting issue reso...Promise 2011: "Empirical validation of human factors on predicting issue reso...
Promise 2011: "Empirical validation of human factors on predicting issue reso...
 
Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives
 
2010 CHASE - Designing Motivation Strategies for Software Engineering Teams: ...
2010 CHASE - Designing Motivation Strategies for Software Engineering Teams: ...2010 CHASE - Designing Motivation Strategies for Software Engineering Teams: ...
2010 CHASE - Designing Motivation Strategies for Software Engineering Teams: ...
 
The Organization Motivation on Employee Performance in an Engineering College...
The Organization Motivation on Employee Performance in an Engineering College...The Organization Motivation on Employee Performance in an Engineering College...
The Organization Motivation on Employee Performance in an Engineering College...
 
Assignment 1
Assignment 1Assignment 1
Assignment 1
 
Web Collaboration for Software Engineering
Web Collaboration for Software EngineeringWeb Collaboration for Software Engineering
Web Collaboration for Software Engineering
 
ME2011 presentation by Mirandolle
ME2011 presentation by MirandolleME2011 presentation by Mirandolle
ME2011 presentation by Mirandolle
 
ICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-final
ICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-finalICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-final
ICIS Rating Scales for Collective IntelligenceIcis idea rating-v1.0-final
 
Leveraging HPC Resources to Improve the Experimental Design of Software Analy...
Leveraging HPC Resources to Improve the Experimental Design of Software Analy...Leveraging HPC Resources to Improve the Experimental Design of Software Analy...
Leveraging HPC Resources to Improve the Experimental Design of Software Analy...
 
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docxEDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docx
 
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docxEDR-8202 Statistics IIWeek 2 Assignment Worksheet  C.docx
EDR-8202 Statistics IIWeek 2 Assignment Worksheet C.docx
 
The Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesThe Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development Processes
 
2012 EASE - Towards an Explanatory Theory of Motivation in Software Engineeri...
2012 EASE - Towards an Explanatory Theory of Motivation in Software Engineeri...2012 EASE - Towards an Explanatory Theory of Motivation in Software Engineeri...
2012 EASE - Towards an Explanatory Theory of Motivation in Software Engineeri...
 
Information Systems design science research
Information Systems design science  researchInformation Systems design science  research
Information Systems design science research
 
Software Analytics = Sharing Information
Software Analytics = Sharing InformationSoftware Analytics = Sharing Information
Software Analytics = Sharing Information
 
Mining Correlations of ATL Transformation and Metamodel Metrics
Mining Correlations of ATL Transformation and Metamodel MetricsMining Correlations of ATL Transformation and Metamodel Metrics
Mining Correlations of ATL Transformation and Metamodel Metrics
 

More from Margaret-Anne Storey

An Actionable Framework for Understanding and Improving Developer Experience
An Actionable Framework for Understanding and Improving Developer ExperienceAn Actionable Framework for Understanding and Improving Developer Experience
An Actionable Framework for Understanding and Improving Developer ExperienceMargaret-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
 
What does productivity mean to developers
What does productivity mean to developersWhat does productivity mean to developers
What does productivity mean to developersMargaret-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
 
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
 

More from Margaret-Anne Storey (20)

An Actionable Framework for Understanding and Improving Developer Experience
An Actionable Framework for Understanding and Improving Developer ExperienceAn Actionable Framework for Understanding and Improving Developer Experience
An Actionable Framework for Understanding and Improving Developer Experience
 
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
 
What does productivity mean to developers
What does productivity mean to developersWhat does productivity mean to developers
What does productivity mean to developers
 
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
 
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)
 

Recently uploaded

Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxStephen Sitton
 
Levelling - Rise and fall - Height of instrument method
Levelling - Rise and fall - Height of instrument methodLevelling - Rise and fall - Height of instrument method
Levelling - Rise and fall - Height of instrument methodManicka Mamallan Andavar
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Romil Mishra
 
STATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectSTATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectGayathriM270621
 
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxCurve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxRomil Mishra
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTSneha Padhiar
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmDeepika Walanjkar
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfisabel213075
 
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.pptROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.pptJohnWilliam111370
 
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
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating SystemRashmi Bhat
 
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
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Communityprachaibot
 
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
 
Artificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewArtificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewsandhya757531
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Coursebim.edu.pl
 
A brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision ProA brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision ProRay Yuan Liu
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSneha Padhiar
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESkarthi keyan
 
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
 

Recently uploaded (20)

Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptx
 
Levelling - Rise and fall - Height of instrument method
Levelling - Rise and fall - Height of instrument methodLevelling - Rise and fall - Height of instrument method
Levelling - Rise and fall - Height of instrument method
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________
 
STATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectSTATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subject
 
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxCurve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdf
 
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.pptROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
 
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...
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating System
 
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
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Community
 
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
 
Artificial Intelligence in Power System overview
Artificial Intelligence in Power System overviewArtificial Intelligence in Power System overview
Artificial Intelligence in Power System overview
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Course
 
A brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision ProA brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision Pro
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
 
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
 

Towards a Theory of Developer Satisfaction and Productivity

  • 1. Towards a Theory of Developer Satisfaction and Productivity Margaret-Anne Storey, Thomas Zimmermann, Chris Bird, Jacek Czerwonka, Brendan Murphy, Eirini Kalliamvakou July 8th, ICSE 2020 Journal First IEEE Transactions on Software Engineering @margaretstorey mstorey@uvic.ca Special Thanks Cassandra Petrachenko Engineers at Microsoft
  • 2. A Sabbatical at Microsoft Engineering System Team Spring 2017
  • 3. Theory about Job Satisfaction and Performance (Judge et al. 2001) 3 Job Satisfaction Job Performance Factors
  • 4. 4 Work context variables Overall Job Satisfaction Productivity Satisfaction Social and Technical Factors Social and Technical Factors Challenges Goal: develop a developer satisfaction and productivity theory ?
  • 5. A literature review and onsite interviews: 30 factors, 15 challenges Jan-March 2017 Second survey 465 developers satisfaction, importance of 44 factors, and impact of 24 challenges Oct 2017 First survey 591 engineers revealed additional 14 factors, 9 challenges April 2017 Methodology5
  • 6. The final survey with 44 factors, Fall 20176
  • 7. 7 Challenges Factors A link indicates satisfaction with a factor was significantly lower in the presence of a challenge:
  • 8. 8 Engineering system Hardware Engineering processes Collaboration tools Engineering tools Composite factors Work environmentPhysical environment Interruptions # people in workspace Private office Impactful Work Learning skills for future Work vision Work type Can achieve goals Impact of work Work culture Manager Team culture Collaborative team Organization culture Important contributor Skills are well used Important team member
  • 9. Linear regression models with standardized coefficients shows how different factors influence overall job satisfaction 9
  • 10. 10 Linear regression models with standardized coefficients shows how different factors influence perceived productivity
  • 11. 11 Instantiating the theory for a specific cohort of developers
  • 12. External validity Single company, but diverse dev contexts Internal validity Ambiguity in questions Response bias Construct validity Self reported productivity Perceived importance of factors Limitations12 Transferability and credibility: Our findings align with other rigorous research [Murphy-Hill, Graziotin] and resonated with our study subjects throughout the study.
  • 13. Developer Satisfaction Perceived Productivity Impactful work Important contributor 13 Appreciation Work culture Work-life balance Autonomy Can complete tasks Engineering system Technical skills Work environment Developer satisfaction and productivity theory @margaretstorey mstorey@uvic.ca
  • 14. 14 Hello ICSE colleagues and friends….

Editor's Notes

  1. (Transcript) Today, I have the pleasure of presenting a journal-first paper about a theory of developer satisfaction and productivity, joint work with Tom Zimmermann, Chris Bird, Jacek Czerwonka, Brendan Murphy and Eirini Kalliamvakou.
  2. This research started when I visited Microsoft for a sabbatical in 2017. I was hosted by the 1ES team that is responsible for building the engineering systems for most of Microsoft. One of their mandates is to understand developer satisfaction with engineering tools, but they also wanted to know what other factors may affect engineering satisfaction and productivity. Image from : https://www.archdaily.com/909841/microsoft-is-investing-500-dollars-million-in-seattle-affordable-housing/5c45f358284dd1c2410000dd-microsoft-is-investing-500-dollars-million-in-seattle-affordable-housing-photo
  3. Understanding knowledge worker job satisfaction and the relationship with job performance has been studied for several decades. Early in this research, many assumed there was no relationship or at best a unidirectional relationship between satisfaction and performance. However, a meta review by Judge et al. showed that there is a bidirectional relationship between the two, and that other factors mediate that relationship. They also showed that the correlation between job satisfaction and performance is likely higher for more complex work. Consequently, we expected this theory would hold for software developers, but we didn’t know what specific factors may associate more closely with satisfaction and performance. Image attribution: https://lmi.workforcegps.org/resources/2015/06/18/11/23/State_Level_Job-to-Job_Flows
  4. So our goal for this study was to identify which factors as well as which challenges may impact satisfaction and productivity. We also wanted to identify if work context variables may play a role in these relationships (such as the kind of work a developer does).
  5. Our research methodology followed three phases. First, weeks of onsite informal interviews and a literature review led to a preliminary set of 30 factors and 15 challenges. We then conducted a survey, answered by 591 engineers, to confirm these factors and challenges, and identified an additional 14 factors and 9 challenges from open-ended responses. We conducted a second survey, answered by 465 developers, to probe how important they thought these factors were to developers, and how satisfied they were with the factors. We also identified the impact of the 24 challenges on developer satisfaction and productivity. (see the paper’s supplementary materials for the origin of all factors/challenges) Notes: Response rate of 14% for first survey, 13% for the second. However, of the 640 for the second survey, only 465 were developers. More precisely 10 factors emerged from the first survey, but we also added a further 3 factors to the survey from a paper on work characteristics by Shaw and Gupta on work complexity.
  6. This is how the second survey looked for the importance (and similarly for the satisfaction) question with a 5-point likert scale. No new factors emerged from this survey.
  7. Looking at the challenges, we found that the presence of some challenges was associated with lower satisfaction of several factors. For example, the challenge of a poor manager was correlated with lower satisfaction across 16 different factors.
  8. We anticipated that some of the 44 factors may be related. We clustered the factors into composite factors, using a correlation cut-off of 0.50 and identified 20 composite factors, for example, we clustered factors that relate to the engineering system, doing impactful work, culture of work, their work environment, and feeling they are an important team contributor. Note: We refined the factors into composite factors by averaging their scores in the remaining analysis.
  9. We built a linear regression model with standardized coefficients showing how these composite factors influence overall job satisfaction for developers. The main factors in this model are doing impactful work, feeling they are an important team contributor and having a good work culture, and we see that higher perceived productivity is associated with higher job satisfaction. Note: The level of statistical significance is indicated with asterisks: (*) for p < :05, (**) for p < :01, and (***) for p < :001. Adjusted R-squared: 0.581. (RQ3.1)
  10. A second linear regression model shows how the composite factors influence perceived productivity for developers. The main influencing factors were work autonomy, the engineering system and doing impactful work, and again we see job satisfaction as a factor in the model for perceived productivity. Note: The level of statistical significance is indicated with asterisks: (*) for p < :05, (**) for p < :01, and (***) for p < :001. Adjusted R-squared: 0.5585. (RQ3.1).
  11. As we built our models, we also considered different work context variables. Here we show which challenges and factors appear in a model that focused on developers who code less than 37% of their time.
  12. Like any study, there are limitations that we discuss in our paper. We note that our findings align with other studies that consider similar constructs or different settings. Our findings resonated with developers and management at Microsoft, and helped them understand that improving developer satisfaction and productivity requires attention to many different factors.
  13. To conclude, we found that for the developers we studied at Microsoft, doing impactful work and being an important contributor are associated with both satisfaction and productivity. While appreciation, a good work culture, and work life balance are important for satisfaction, and autonomy over one’s work, ability to complete tasks, a good engineering system, strong technical skills, and a positive work environment are associated with higher productivity. Most importantly, we also found that a developer that feels more productive may feel more satisfied and vice-versa, and so steps taken to improve productivity that may lower satisfaction may ultimately lower productivity -- so care has to be paid to both aspects. Thank you for listening
  14. Missing friends and colleagues from last year!