Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Programmer Anarchy and Managerless Processes

2,173 views

Published on

There is an emerging movement to strip organizations down to just customers and developers. In this talk, I explore when/why this works, and cite actual experiences with this thinking. From AATC Raleigh 2016.

Published in: Software
  • Be the first to comment

Programmer Anarchy and Managerless Processes

  1. 1. Copyright © 2011-2016 by Fred George PROGRAMMER ANARCHY and MANAGERLESS PROCESSES Fred George FredGeorge@acm.org @fgeorge52 1
  2. 2. Fred George Copyright © 2015 by Fred George. All rights reserved. 2 Technologist • Computer networks – 70’s • Token Ring LAN – 80’s • GUI’s – late 80’s • OO – late 80’s • Agile – late 90’s • MicroServices – mid-2000’s Programmer • Since 1968 (Basic) • 65,000 hours experience • 70+ languages • Computer Science Degree 1973 Manager • 17 years IBM • Business degree, MIT Sloan School 1986 • Product Owner, IBM • VP, ThoughtWorks • Co-founder, Outpace (Silicon Valley) • Senior Advisor to 3 tech companies
  3. 3. Fred George Copyright © 2015 by Fred George. All rights reserved. 3 Consulting Roles • Change Agent • Disruptor • “Hand grenade I am throwing into development” • CTO describing Fred to his Vice President
  4. 4. Copyright © 2011-2016 by Fred GeorgeCopyright © 2012-2013 by Fred George. All rights reserved. Emerging Experiences at... 4
  5. 5. Copyright © 2011-2016 by Fred George 5 Agile Manifesto ✦ Individuals and interactions over processes and tools ✦ Working software over comprehensive documentation ✦ Customer collaboration over contract negotiation ✦ Responding to change over following a plan ✓ ✓ ✓ ✓
  6. 6. Copyright © 2011-2016 by Fred George 6 XP Values ✦ Feedback ✦ Communication ✦ Simplicity ✦ Courage ✦ Respect ✓ ✓ ✓ ✓ ✓
  7. 7. Copyright © 2011-2016 by Fred George Agile Best Practices ✦ Stand ups ✦ Story narratives ✦ Retrospectives ✦ Estimates ✦ Iterations ✦ Mandatory pairing 7 ✦ Unit tests ✦ Acceptance tests ✦ Refactoring ✦ Patterns ✦ Continuous integration Not Used
  8. 8. Copyright © 2011-2016 by Fred George 8 Agile Roles Agile Roles developmentbusiness management programmercustomer BA QA DBA UI designer architect project manager iteration manager developer
  9. 9. Copyright © 2011-2016 by Fred George 9 Anarchy Roles ✦ Customer ✦ Project manager ✦ Business analyst ✦ Developer ✦ Quality assurance / tester ✓ X ✓ X X ✦ Manager of programmersX
  10. 10. Copyright © 2011-2016 by Fred George Process Has Many NamesStartup Model Developer-Driven Development One Hacker Way
  11. 11. Copyright © 2011-2016 by Fred George Simple ComplicatedComplex Chaotic Cause a Effect Cause aaa Effect Effect? Cause? Cause ? Effect Disorder New Problem Domains: The Cynefin Framework
  12. 12. Copyright © 2011-2016 by Fred George Simple ComplicatedComplex Chaotic
  13. 13. Copyright © 2011-2016 by Fred George Project Delivery Cycles 5 yrs. 1980 1990 2000 1 mon. 1 week 1 day 2010 1 year ProjectDuration(log) Waterfall Waterfall Agile Agile A2 A2 Waterfall w OO
  14. 14. Copyright © 2011-2016 by Fred George ✦ Development driven by stories ✦ Stories small ✦ Priority set by customer ✦ Story-level estimates and metrics Agile Side Effect: Story Tyranny Problem: 14 Developers become disconnected from business problem (Drones)
  15. 15. Copyright © 2011-2016 by Fred George Requirements Hierarchy 15 Tasks Stories Features Projects Initiatives Credit: Greg Reiser, ThoughtWorks, 2005
  16. 16. Over-Specialization Copyright © 2015 by Fred George •Theory: • Specialist are more productive •Practice: • Overhead of communication is under-estimated • Unbalanced workload creates delays 16
  17. 17. Copyright © 2011-2016 by Fred George ✦ QA tools are Programming tools ✦ Selenium ✦ Cucumber ✦ Service Architecture creates complex systems ✦ Need architecture skills to properly test ✦ Shift toward monitoring over acceptance testing 17 Fate of Roles: Agile Roles developmentbusiness management customer BA QA project manager iteration manager developer QA
  18. 18. Copyright © 2011-2016 by Fred George BA 18 Fate of Roles: Agile Roles developmentbusiness management customer project manager iteration manager developer BA Too complex for programmers! Programmers can’t talk Programmers lack “social skills”
  19. 19. Copyright © 2011-2016 by Fred George 19 Fate of Roles: Agile Roles developmentbusiness management customer project manager iteration manager developer
  20. 20. Copyright © 2011-2016 by Fred George 20 Fate of Roles: Manage r ClerkLeaderAmbassadorCoach/mentorConcierge Power- Hungry Boss
  21. 21. Copyright © 2011-2016 by Fred George 21 Anarchy Roles Agile Roles developmentbusiness management customer developer
  22. 22. Copyright © 2011-2016 by Fred George forwardtechnology.co.uk 22
  23. 23. Copyright © 2011-2016 by Fred George Example: Energy Revolution ✦ Prior system: ✦ .NET with SQLServer ✦ New system: ✦ Ruby, Clojure, C++, Node.js, R ✦ MySQL, MongoDB ✦ HAML, SASS 23
  24. 24. Copyright © 2011-2016 by Fred George Example: Energy Revolution ✦ Ruby for energy calculation - big improvement! ✦ Rewrote in Clojure ✦ Rewrote in Clojure (again) Question: What manager would let them to do it? Hence: No manager! 24
  25. 25. Copyright © 2011-2016 by Fred George Example: Click Tracking ✦ Old system: ✦ Ruby-based, 32 servers with 40% utilization ✦ New system: ✦ Node.js, 22 servers with 10% utilization and lower latency 25
  26. 26. Copyright © 2011-2016 by Fred George Agile Best Practices ✦ Stand ups ✦ Story narratives ✦ Retrospectives ✦ Estimates ✦ Iterations ✦ Mandatory pairing 26 ✦ Unit tests ✦ Acceptance tests ✦ Refactoring ✦ Patterns ✦ Continuous integration Trust w collocation Results, not blame Small, short-lived apps Continuous deployment Not Used
  27. 27. Copyright © 2011-2016 by Fred George Agile 2013: Implementing Anarchy 27 ✦ Online version of Daily Mail ✦ Company established in late 1800’s ✦ MailOnline largest online newspaper in world ✦ Challenge: Introduce Anarchy to an established IT
  28. 28. Specialization Institutionalized with Titles Copyright © 2015 by Fred George. All rights reserved. 28 Case Study: •50 IT professionals •25+ titles •0 people understanding projects
  29. 29. 29 Master Journeyman Apprentice Key Business Tech Platform iOS Android Databases Big Data Languages HTML/CSS/JS Java Ruby Server-side JS Software Delivery Agile management OOD / Architecture Testing Solution: Fix the Titles
  30. 30. Matching HR Focus 3 0 Competent in at least 1 key technology Graduate Dev Developer Not yet competent in a key technology Senior Dev Master (expert) in at least 1 key technologySystems Dev Competent in 5-7 key technologies Master Dev Master in 3+ key technologies Dual career path for Developers
  31. 31. Copyright © 2011-2016 by Fred George ✦ Intensive OO training class (40 hourse, off-site) ✦ Developers, tech leads, QA, and SCRUM masters ✦ Everyone encouraged to participate (but still optional) Training in Working Together 31
  32. 32. Copyright © 2011-2016 by Fred George Flexible Project Approach 32 Developers time “Tables” A B C D E F G H
  33. 33. Copyright © 2011-2016 by Fred George MailOnline Scorecard ✦ Absorbed 20 more developers 1 Jan - 1 Mar ✦ By April 15 ✦ Delivering LeaderBoard, a new page (Ruby, Node.js) ✦ Building first replacement page (Clojure, Node.js) ✦ Explored numerous message bus technologies ✦ Supporting MicroService architecture ✦ Rebuilt Android application ✦ By September, replaced front-end completely ✦ 130K Java with 4K Clojure + Node.js micro-services monitoring 36
  34. 34. Copyright © 2011-2016 by Fred George 2014-15: Refining… 38
  35. 35. Copyright © 2011-2016 by Fred George Like MailOnline, Plus… ✦ Titles: Only “Developer” ✦ Remote pairing (4 time zones in US + Canada) ✦ Still meet developers face-to-face for the first time quarterly ✦ Teams decide assignments/roles each day ✦ New technologies/processes for most developers ✦ Clojure ✦ Micro-services ✦ Flat, self-organizing teams 39
  36. 36. Copyright © 2011-2016 by Fred George PROGRAMMER 40 ANARCHY

×