Slide 1

Slide 1 text

Engineering Happiness Laura Thomson @lxt / laura@[laurathomson|mozilla].com 1 1

Slide 2

Slide 2 text

Process Software System —Any Software Engineering 101 Textbook People 2 2

Slide 3

Slide 3 text

For engineering managers Photo by Trev Grant, https://www.flickr.com/photos/trevgrant/13746359923 under https://creativecommons.org/licenses/by/2.0/ 3 3

Slide 4

Slide 4 text

And engineers (pretty interested in their own happiness) Photo by Trev Grant, https://www.flickr.com/photos/trevgrant/13496315673 under https://creativecommons.org/licenses/by/2.0/ 4 4

Slide 5

Slide 5 text

Hypothesis - happy engineers: Don’t quit Produce code Don’t complain (Assumptions: competence, motivation, fit) 5 5

Slide 6

Slide 6 text

Don’t quit? Metric: retention/turnover But turnover sucks as a metric: (Extremely) trailing indicator ~30% mean turnover in SV Changes (spikes) notable, too late to be actionable 6 6

Slide 7

Slide 7 text

Where is turnover useful/actionable? Look for anomalies Local maxima point to specific problems Junior? Senior? Management? Technical? 7 7

Slide 8

Slide 8 text

“People leave managers, not jobs” Not only managers: Company/project/culture jumped the shark Stopped learning Burned out Better offer (Good manager can mitigate but not fully overcome these things) 8 8

Slide 9

Slide 9 text

Productive? Critical happiness metric at the micro level, per person Less so as a macro measure of morale 9 9

Slide 10

Slide 10 text

0" 5000" 10000" 15000" 20000" 25000" 2008'03" 2008'05" 2008'07" 2008'09" 2008'11" 2009'01" 2009'03" 2009'05" 2009'07" 2009'09" 2009'11" 2010'01" 2010'03" 2010'05" 2010'07" 2010'09" 2010'11" 2011'01" 2011'03" 2011'05" 2011'07" 2011'09" 2011'11" 2012'01" 2012'03" 2012'05" 2012'07" 2012'09" 2012'11" 2013'01" 2013'03" 2013'05" 2013'07" 2013'09" 2013'11" 2014'01" 2014'03" 2014'05" 2014'07" 2014'09" 2014'11" 2015'01" 2015'03" Pushes&per&Month& Time& Pushes&to&hg.mozilla.org& Holidays FX10 Firefox 4.0 10 10

Slide 11

Slide 11 text

Complaints? “If the worst thing they have to complain about is the art hanging on the walls…” 11 11

Slide 12

Slide 12 text

Complaints? Sentiment (Slack, IRC, Basecamp, Yammer, commit comments etc) Silence Again: more about individuals than overall 12 12

Slide 13

Slide 13 text

What else can we look at? 13 13

Slide 14

Slide 14 text

Leading indicators: Hours worked Downtime or # pages/alerts Tech debt Stock prices / Market share Technology (TIOBE, HN, etc) in decline 14 14

Slide 15

Slide 15 text

“Glassdoor Bingo” (What companies? What causes?) 15 15

Slide 16

Slide 16 text

Technical debt is an energy vampire for good engineers. 16 16

Slide 17

Slide 17 text

Surveys (CultureAmp, etc) Infrequent, quantitative and qualitative Monitors (standu.ps, tinypulse, etc): Frequent, quantitative (graphite for humans) 17 17

Slide 18

Slide 18 text

Unhappiness 18 18

Slide 19

Slide 19 text

19 19

Slide 20

Slide 20 text

Not to be confused with 20 20

Slide 21

Slide 21 text

Not to be confused with Going into management 21 21

Slide 22

Slide 22 text

“Burnout is defined as a state of chronic stress and frustration that leads to: physical and emotional exhaustion; feelings of cynicism and detachment; and a sense of ineffectiveness and lack of accomplishment.” “Where do you fall on the burnout continuum?” https://www.psychologytoday.com/blog/high-octane-women/201205/where-do-you-fall-the-burnou (Downloaded June 1, 2015) 22 22

Slide 23

Slide 23 text

Causes of burnout: Long hours Death marches Too many pages Too much travel Politics Missing out on life/family 23 23

Slide 24

Slide 24 text

GSD/BS ratio: Politics Excessive meetings Cargo cult process Tech debt 24 24

Slide 25

Slide 25 text

25 25

Slide 26

Slide 26 text

Mastery Autonomy Purpose Pink, Dan. Drive: The Surprising Truth About What Motivates Us 26 26

Slide 27

Slide 27 text

Herzberg’s Two Factor Theory 27 27

Slide 28

Slide 28 text

Hygiene Work environment - hardware, tools, snacks Management / policies Salary / benefits Safety Messing these up makes people unhappy. 28 28

Slide 29

Slide 29 text

Motivation achievement / recognition interesting projects learning new stuff growth / advancement Getting these right makes people happy. 29 29

Slide 30

Slide 30 text

Motivation Hygiene Awesome Just a paycheck Early stage startup Terrible 30 30

Slide 31

Slide 31 text

Enough management talk. Photo by Trev Grant, https://www.flickr.com/photos/trevgrant/13746359923 under https://creativecommons.org/licenses/by/2.0/ 31 31

Slide 32

Slide 32 text

√ How can I be a happy engineer? Photo by Trev Grant, https://www.flickr.com/photos/trevgrant/13496315673 under https://creativecommons.org/licenses/by/2.0/ 32 32

Slide 33

Slide 33 text

Work on things you are good at and enjoy at places that fit the way you like to work and change once in a while. 33 33

Slide 34

Slide 34 text

First, know thyself. What type of engineer are you? (A short and unscientific quiz) Public domain, https://en.wikipedia.org/wiki/File:Sigmund_Freud_1926.jpg 34 34

Slide 35

Slide 35 text

Senior vs Junior 35 35

Slide 36

Slide 36 text

Structured vs Chaotic 36 36

Slide 37

Slide 37 text

Team Player vs Lone Wolf 37 37

Slide 38

Slide 38 text

Purist vs Pragmatist 38 38

Slide 39

Slide 39 text

Starter vs Finisher 39 39

Slide 40

Slide 40 text

(There is no punchline to this quiz, but if it makes you feel better, you can say I said you were a Level 70 Senior Chaos Wolf of Pragmatic Finishing or whatever.) Public domain. https://en.wikipedia.org/wiki/Gray_wolf#/media/File:Howlsnow.jpg 40 40

Slide 41

Slide 41 text

Progress Image: https://www.flickr.com/photos/jacksonmedeiros/2719799718 under https://creativecommons.org/licenses/by-nc-sa/2.0/ 41 41

Slide 42

Slide 42 text

I am often asked: “How do I progress as an engineer?” “How do I become a more senior engineer?” “How do I get promoted?” “Should I go into management?” 42 42

Slide 43

Slide 43 text

What’s progress to you? Do you want to: Move to a more challenging role? Move to a more interesting company? Work on a harder or more interesting project? Become an expert in something? Knowing what you want leads to how to get it 43 43

Slide 44

Slide 44 text

Helpful things: Change projects or teams every 1-2 years Learn from people who are awesome Learn to write 44 44

Slide 45

Slide 45 text

Skills maketh the engineer, for example: Java -> Android, Big Data, Financial Services Ruby -> Startups C or Rust -> Systems Programming (PHP, of course, leads to a ridiculously large number of web dev jobs, so it’s good that you’re here.) Be aware of the strategic consequences of your choices 45 45

Slide 46

Slide 46 text

tl;dl Don’t be afraid to leave bad jobs Know yourself and what you like to do Have a plan for what you want to learn next 46 46

Slide 47

Slide 47 text

Two last pieces of advice for long term happiness: 1. Check on yourself every 6-12 months 2. Develop good boundaries between work and personal life 47 47

Slide 48

Slide 48 text

Upwards, to the right, and straight on ’til morning. Get this print: https://www.etsy.com/listing/107306078/welcome-to-the-internet-hq-11x17 Questions? @lxt Slides? https://speakerdeck.com/lauraxt/ 48 48