Save 37% off PRO during our Black Friday Sale! »

Engineering Happiness

Engineering Happiness

ZendCon 2016 keynote

Fead61362ab9263d8cc3af52bd74168e?s=128

Laura Thomson

October 19, 2016
Tweet

Transcript

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

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

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

    3 3
  4. 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
  5. Hypothesis - happy engineers: Don’t quit Produce code Don’t complain

    (Assumptions: competence, motivation, fit) 5 5
  6. 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
  7. Where is turnover useful/actionable? Look for anomalies Local maxima point

    to specific problems Junior? Senior? Management? Technical? 7 7
  8. “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
  9. Productive? Critical happiness metric at the micro level, per person

    Less so as a macro measure of morale 9 9
  10. 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
  11. Complaints? “If the worst thing they have to complain about

    is the art hanging on the walls…” 11 11
  12. Complaints? Sentiment (Slack, IRC, Basecamp, Yammer, commit comments etc) Silence

    Again: more about individuals than overall 12 12
  13. What else can we look at? 13 13

  14. Leading indicators: Hours worked Downtime or # pages/alerts Tech debt

    Stock prices / Market share Technology (TIOBE, HN, etc) in decline 14 14
  15. “Glassdoor Bingo” (What companies? What causes?) 15 15

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

    16
  17. Surveys (CultureAmp, etc) Infrequent, quantitative and qualitative Monitors (standu.ps, tinypulse,

    etc): Frequent, quantitative (graphite for humans) 17 17
  18. Unhappiness 18 18

  19. 19 19

  20. Not to be confused with 20 20

  21. Not to be confused with Going into management 21 21

  22. “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
  23. Causes of burnout: Long hours Death marches Too many pages

    Too much travel Politics Missing out on life/family 23 23
  24. GSD/BS ratio: Politics Excessive meetings Cargo cult process Tech debt

    24 24
  25. 25 25

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

    What Motivates Us 26 26
  27. Herzberg’s Two Factor Theory 27 27

  28. Hygiene Work environment - hardware, tools, snacks Management / policies

    Salary / benefits Safety Messing these up makes people unhappy. 28 28
  29. Motivation achievement / recognition interesting projects learning new stuff growth

    / advancement Getting these right makes people happy. 29 29
  30. Motivation Hygiene Awesome Just a paycheck Early stage startup Terrible

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

    31 31
  32. √ 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
  33. 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
  34. 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
  35. Senior vs Junior 35 35

  36. Structured vs Chaotic 36 36

  37. Team Player vs Lone Wolf 37 37

  38. Purist vs Pragmatist 38 38

  39. Starter vs Finisher 39 39

  40. (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
  41. Progress Image: https://www.flickr.com/photos/jacksonmedeiros/2719799718 under https://creativecommons.org/licenses/by-nc-sa/2.0/ 41 41

  42. 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
  43. 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
  44. Helpful things: Change projects or teams every 1-2 years Learn

    from people who are awesome Learn to write 44 44
  45. 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
  46. 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
  47. 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
  48. 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