How To Do Kick-Ass Software Development

39,345 views

Published on

With Kick-Ass Software Development you actually get stuff done. Feedback cycles are short, code quality is awesome and customers get the features they lust after. Less mangers managing, less testers testing and less IT-operators operating. The developers take the power back, making them much happier. Sound like paradise? It is! This session will show you how we do Kick-Ass Software Development at Atlassian.
I talk about how we: use pull requests for better code quality; collaborate fast to develop ideas; avoid meetings to get more stuff done; tighten our feedback loops to fail faster; shorten our release cycles; and work together happily on different continents. It's a great way to develop software and we think it can work in your company, too.

Watch the video if this talk: http://vimeo.com/70102926

Published in: Technology, Business
3 Comments
46 Likes
Statistics
Notes
No Downloads
Views
Total views
39,345
On SlideShare
0
From Embeds
0
Number of Embeds
5,793
Actions
Shares
0
Downloads
245
Comments
3
Likes
46
Embeds 0
No embeds

No notes for slide

How To Do Kick-Ass Software Development

  1. How to do Kick-Ass Software Development @svenpet
  2. Who expects to see some code?
  3. System.out.println ("Sorry, you may leave now");
  4. Who expects to learn a new methodology?
  5. There is no Kick-Ass manifesto! ...and no certification
  6. Who just wants to kick ass?
  7. Yes, that's me ;) THIS IS YOUR TALK
  8. How to do kick ass development?
  9. Use Java
  10. Use Java ...is not so important
  11. Sven Peters Atlassian Ambassador svenpet.com @svenpet
  12. better software less overhead faster development happy customer happy developers Agile
  13. What's the state of Agile 2013 ?
  14. The Dark Manifesto of Agile Software Development We are uncovering better the only ways of developing
 software by doing it and helping teaching others do it.
 Through this work we have come to value: Individuals and interactions over and not processes and tools
 Working software over and not comprehensive documentation
 Customer collaboration over and not contract negotiation
 Responding to change over and not following a plan That is, while since there is no value in the items
 on the right, we value only the items on the left more.
  15. Programming, Motherfucker Do you speak it?
  16. Is Agile dead?
  17. The Gartner Hype Curve Agile?
  18. We need some smart people! Guru
  19. Stop following the next guru and kick-ass again
  20. legacy teams think... adding processes helps changing stuff is too complicated old decisions still apply ONE WAY
  21. Let's improve! and kick-ass again
  22. legacy teams think... I don't give a #@!% NO WAY
  23. Ass Deliver Kick-Ass Software One Kick-Ass Team Kick-Ass Collaboration Kick-Ass Automation Kick ing Topi cs
  24. Deliver Kick-Ass Software
  25. Building the right thing before How do we know? Microsoft Kin
  26. Fake it til you Make it
  27. Speech-to-Text Experiment
  28. even one step before that.... Paper Prototypes
  29. Software ea Ar n Con ctio tru s ovin pr Im are oftw gS
  30. Generate a kick-ass Feedback Experience
  31. Easy to find Make it simple Fast to submit
  32. GOT FEEDBACK?
  33. GOT FEEDBACK?
  34. GOT FEEDBACK? Got Feedback? Rate the page * What do you like? * What needs to be improved?* Awesome Good Good tools, but this talk doesn't kick ass at all! Add more jokes! Browse Upload a screenshot Name Freddy Eedback Email f.eedback@complain.com Submit Meh! Cancel Bad Horrible
  35. GOT FEEDBACK? Easy to find Got Feedback? Rate the page * What do you like? * What needs to be improved?* Awesome Good Good tools, but this talk doesn't kick ass at all! Browse Name Freddy Eedback Email f.eedback@complain.com Cancel Bad Horrible Make it simple Fast to submit Add more jokes! Upload a screenshot Submit Meh!
  36. Protect your Developers
  37. The Sh*t umbrella 425 million user 100 developer
  38. We're not doing
  39. Everyone On The Front Line
  40. Feedback Close the Loop and get pers nal
  41. Developers on Support
  42. Care about your customers! Have an effective feedback loop Keep improving!
  43. One Kick-Ass Team
  44. Different Developer Roles Responsibilities Tester
  45. The P roble Bottlenecks : Accountability : Scalability Developer Tester ms
  46. Developer on DoT Test
  47. So the developers are doing all the work?
  48. QA Qual·i·ty As·sis·tance [kwol-i-tee] [uh-sis-tuh ns] Quality is everybody's responsibility. QA employees help and train developers to become better tester, testing the more complicated stuff, creating test data, investigating in new test tools and working on test strategies.
  49. 6 Tips for kick-ass DoTing
  50. 1. Training
  51. 2. Pairing
  52. 3. Blitz Test
  53. 4. Test Recipe* * advanced doting
  54. 5. Split Sessions* * advanced doting
  55. 6. Bug Hunter* * advanced doting
  56. Quality is everybody's responsibility
  57. Developers are doing Design
  58. Developers are doing Design
  59. Whyshould we have designers? Because we suck!
  60. Scaling Designers? Designer Designer ? ?
  61. Scaling Designers? Use Developers FTW! Designer Designer Developer Developer
  62. Our developers need some Design guidance!
  63. Design Guidelines Just a few controls Simple rules Tools to test design Dev Speed Kick-Ass https://developer.atlassian.com/design/
  64. Design Workshop for Developers
  65. Developers are Designers
  66. Designers Developers removing friction
  67. Developers are Desig ner in are Designers code
  68. Department barriers slows you down! Work together as one team! Keep improving!
  69. Kick-Ass Collaboration
  70. Lonesome Cowboy Coder
  71. The trouble starts with the team
  72. Traffic Rules are protecting us from accidents
  73. Development Rules are protecting us from making mistakes
  74. BRANCH PULL MERGE
  75. A branch for every task
  76. Branches have short lives average 2 days
  77. we use Pull Requests what do you think?
  78. feel better learn better quality blame Why do you want to discuss your code changes?
  79. fast approvals 2+ moving fast
  80. we prefer Collocated Teams
  81. the truth is It's not always possible
  82. Where do you work best? ...in the office? ...in the coffee bar next door? ...on your couch at home? it dep ends
  83. How do you communicate effectively?
  84. offline Emails one to many asynchronous add people
  85. Are you crazy ?
  86. too
  87. Prob are bad for conversations lots of spam lems Emails often too long needs an action
  88. Prob are bad for conversations lots of spam lems Emails often too long needs an action
  89. Who uses Chat ?
  90. Confluence Developer Design Team Enterprise Discussions Beer Drinkers Just the conversations you need to kick ass Chat Rooms
  91. Chat is great for remote conversations ...and local! People can stay in the zone
  92. Chat is great for different timezones The chat records all conversations that happened during the night
  93. Chat can pull people into the conversation with ease Just @mention someone
  94. Choose your tools wisely
  95. Camera We built portals! TV Mac mini
  96. Remove collaboration friction. Easy workflows -> fast development Keep improving!
  97. Kick-Ass Automation
  98. We're helping people to be faster by automating their work
  99. How much time do you spend a week to automate your software development?
  100. Who is doing continuous integration?
  101. Who kick-ass continuous integration? is doing
  102. Our builds sucked took to long were too complicated were unstable missed a concept
  103. Fail Fast
  104. 4 things how to tame monster builds and kick-ass again
  105. 1. Pass the artifact
  106. 2. Parallelize Tests
  107. 3. Have a build strategy performance tests platform tests nightly builds less frequent (every hour) building + unit & UI tests every check in
  108. Data Porn 4. Look at your stats!
  109. Care a bout a u tomati on Faster builds >> less task switching
  110. More automation awesomeness!
  111. Flakey Test Detector de up his si T st Te ey lak F re with andle H ca
  112. Wallboards
  113. Freud Bot
  114. Use your skills to automate things! Keep improving!
  115. Release Button single push deployment
  116. Deliver Kick-Ass Software One Kick-Ass Team Kick-Ass Collaboration Kick-Ass Automation
  117. Kick-Ass Software Development
  118. Kick-Ass Software Development Kick-Ass customers Kick-Ass team Kick-Ass dev speed Kick-Ass quality Kick-Ass scale
  119. Kick-Ass Software Development Kick-Ass customers Kick-Ass team Kick-Ass quality Kick-Ass dev speed Kick-Ass scale
  120. Is Agile dead?
  121. Be excellent in everything you do
  122. Managers are humans, too! harder easier
  123. Share & failures success
  124. Build a kick-ass culture
  125. Step out of your comfort zone and be more awesome
  126. Did you kick ass today?
  127. Thanks! svenpet.com/talks @svenpet

×