Super Projects

1,772 views

Published on

My observations and stuff I learned about projects, teams, and related stuff.

Published in: Education, Technology, Business
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,772
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
20
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Super Projects

  1. 1. Super Projects<br />Ladislav Martinčík<br />
  2. 2. Content<br /><ul><li> Introduction
  3. 3. Customer
  4. 4. Project Design Process
  5. 5. Teams
  6. 6. Summary
  7. 7. Q&A</li></ul> cca 45 min<br />
  8. 8. Double-click to add title<br />Ladislav Martinčík<br /> Software Engineer<br />martincik.com, slowpath.com, foundum.com<br /> @martincik<br /> ladislav.martincik@gmail.com<br />
  9. 9. Who are you?<br />Students vs Work force ?<br /> Employee vs Employer ?<br /> Server vs Client ?<br />
  10. 10. How I started...<br /><ul><li> 8 years back, school, fun, fail
  11. 11. being naive, naive way
  12. 12. the czech way
  13. 13. not being able to say "No"
  14. 14. do not separate projects from company itself
  15. 15. not enough projects
  16. 16. "almost" everything as project</li></li></ul><li>Customers 1/3<br /><ul><li> market segmentation, customer niche
  17. 17. select right customers
  18. 18. clear statement who's your customer
  19. 19. Michal Berg (eSports.cz)
  20. 20. learn to say "No" to customers, 80/20
  21. 21. project control ( you vs customer )
  22. 22. manipulation from customer
  23. 23. check your customer credit
  24. 24. attorney, contracts</li></li></ul><li>Customers 2/3<br /><ul><li> Negotiations ( The Truth About Negotiations - L. Thompson)
  25. 25. Good products CANNOT fix bad strategy
  26. 26. Strategy determines:
  27. 27. market segment we'll compete IN
  28. 28. compete WITH
  29. 29. HOW we'll compete
  30. 30. measured by profitability</li></li></ul><li>Customers 3/3<br /><ul><li> you need to understand:
  31. 31. internal economics
  32. 32. distribution channels
  33. 33. competition channels
  34. 34. do good job at setting the strategy
  35. 35. deeply understand the customer
  36. 36. customer reviews
  37. 37. focus not only on what, but mainly why</li></li></ul><li>Project C. Triangle<br /><ul><li> Before you start designing your design process you need to understand Project Control Triangle
  38. 38. Project Control Triangle
  39. 39. Schedule (Time)
  40. 40. Resources
  41. 41. Scope</li></li></ul><li>Project C. Triangle<br />Scope<br />performance<br />price<br />Resources<br />people<br />computers<br />Quality<br />Time<br />
  42. 42. Project C. Triangle<br /><ul><li> the more variables the better
  43. 43. Reality scenarios:
  44. 44. Fix Resources, Fix Time, Variable Scope
  45. 45. Fix Resources, Fix Scope, Variable Time
  46. 46. The best thing you can do is to fix your team which is part of the resources
  47. 47. Always try to add non-human resource if possible ( computation to speedup devel. )
  48. 48. Peopleware - Tom DeMarco & T. Lister</li></li></ul><li>P. Design process<br /><ul><li> Designing process based on Project Control Triangle
  49. 49. Structure is the key to freedom
  50. 50. "The key is to standardize the lower levels of process architecture."
  51. 51. 2 ways of doing this standardization:
  52. 52. Modular structure
  53. 53. Learning from patterns</li></li></ul><li>Modular structure<br /><ul><li> Information Hidding
  54. 54. External interfaces
  55. 55. Object Oriented Programming
  56. 56. example with SCRUM</li></ul>Customer<br />Review<br />Product<br />Owner<br />Developers<br />
  57. 57. Patterns<br /><ul><li> Sequential vs Parallel
  58. 58. Information generation
  59. 59. Decentralized Control & Feedback
  60. 60. Queues
  61. 61. Automate
  62. 62. Development ( TDD, CIA, Paperless )
  63. 63. Business ( eMyth - Michael E. Gerber )
  64. 64. Other patterns
  65. 65. GTD, Scrum, Kanban, Toyota system...</li></li></ul><li>Seq. vs Parallel<br /><ul><li> If you can, you should do Parallel or Semi-Parallel
  66. 66. Discovery phase ( Inspired - Marty Cagan )
  67. 67. IMPORTANT: Sooner you involve lower parts of hierarchy of your team the better</li></ul>Test<br />Spec<br />Develop.<br />Develop.<br />Test<br />
  68. 68. Info Generation<br /><ul><li> The sooner you generate information more you eliminate risk
  69. 69. Information theory
  70. 70. Do 50% fails 50% successes</li></ul>Info<br />generated<br />Risk level<br />Time<br />
  71. 71. Decentralize C&F<br /><ul><li> Centralized Control is economical
  72. 72. Decentrealized control is better for quickly changing markets
  73. 73. Introduce Decision rules to allow lower parts of hierarchy to make decisions faster
  74. 74. Most dev teams use rule: "Do not ask for permission ask for forgiveness."
  75. 75. Small amounts, slowly increasing with inscreasing trust</li></li></ul><li>Feedback<br /><ul><li> Open Feedback loop
  76. 76. Good for leaders with high skills presured by time
  77. 77. Closed Feedback loop
  78. 78. Group Feedback
  79. 79. Change dynamics by adding/removing member
  80. 80. Personal Feedback
  81. 81. One-on-One, Beer yes in CZ but I prefer to listen first write all down + do!</li></li></ul><li>Queues Theory<br /><ul><li> Smaller batch sizes ( Sprint )
  82. 82. Observe time of item in the queue
  83. 83. For better queue fighting is to have multi-functional members of the team
  84. 84. Teach programmers to do a bit of desing and designer a bit of coding
  85. 85. Have a master queue ( Backlog ) for every small idea or bug</li></li></ul><li>Automation<br /><ul><li> Business Automation
  86. 86. ( eMyth - Michael E. Gerber )
  87. 87. Dev Automation
  88. 88. Testing ( CIA )
  89. 89. Servers ( Clouds )
  90. 90. Backups
  91. 91. Deployment</li></li></ul><li>Other Patterns<br /><ul><li> GTD
  92. 92. Scrum
  93. 93. Kanban or Scrumban
  94. 94. Toyota System
  95. 95. Lean Startup
  96. 96. ...</li></li></ul><li>Teams<br /><ul><li> Productivity
  97. 97. Team Structure
  98. 98. Collaboration
  99. 99. Motivation vs Inspiration
  100. 100. Flow vs Momentum</li></li></ul><li>Productivity<br /><ul><li>60-70% load not more (Q. Theory)
  101. 101. Teach them to teach other
  102. 102. Pair Programming/Work
  103. 103. People for People
  104. 104. We write code for people not computers.
  105. 105. Hire the best people you can
  106. 106. 3 types of people
  107. 107. Make excuses (Lazy)
  108. 108. Do whatever it takes (Kamikaze)
  109. 109. Ventage point (Sniper)</li></li></ul><li>Team Structure<br /><ul><li> Diversification ( FE, BE, Design, PO, SM )
  110. 110. Size 7 +- 2 ( Complexity of Communication )
  111. 111. Women in the team
  112. 112. Architect = Consistency
  113. 113. Product Owner/Manager
  114. 114. "Project without PO is like Movie without director."
  115. 115. QA - Human testing is inevitable for quality products</li></li></ul><li>Collaboration<br /><ul><li>Work together - collaboration requires emotional engagement
  116. 116. High respect for each other's competence on the topic of the collaboration
  117. 117. Have skills and permission to creatively bargain with each other over costs and benefits
  118. 118. Reality over Virtuality ( Whiteboard )
  119. 119. Show by example ( Abstractions are hard )</li></li></ul><li>Motivate vs Ins. 1/2<br /><ul><li> Motivation is tricky
  120. 120. Story of Teacher and grades
  121. 121. Game Mechanics
  122. 122. Forsquare, Geolocation
  123. 123. Work vs Game play
  124. 124. 3D world simulation
  125. 125. Inspire for innovation (Give people enough money so they don't think about it.)</li></li></ul><li>Motivate vs Ins. 2/2<br /><ul><li> Motivation by Money
  126. 126. Story of Pensioner and Kids
  127. 127. Specialized skills + Facilitation skills (pay attention to work) = Success
  128. 128. Every employee has inner and outer goals. If you cannot sync them with companies goals and they'll have need to move they'll create random change which will cause random result. </li></li></ul><li>Flow Vs Momentum<br /><ul><li> Flow is when time stops
  129. 129. Quite place, Food, Maslow's hierarchy
  130. 130. Momentum
  131. 131. Default mode of our behaviour
  132. 132. Solving problem for need of solving problems
  133. 133. STOP
  134. 134. Step back
  135. 135. Think and decide
  136. 136. Organize
  137. 137. Proceed</li></li></ul><li>Summary<br /><ul><li>Pick Customer not Customers you
  138. 138. Begin with P.C. Triangle
  139. 139. Deliberately Desing your Design process
  140. 140. Modules, Patterns
  141. 141. Generate Info early
  142. 142. Work on your Feedback loops
  143. 143. Observe Queues
  144. 144. Automate
  145. 145. Understand Teams, Collaboration, Motivation, Inspiration, Flow, Momentum</li></li></ul><li>Thank you! Q&A?<br />Ladislav Martinčík<br />martincik.com, slowpath.com, foundum.com<br /> Twitter: @martincik<br /> Email: ladislav.martincik@gmail.com<br />

×