Rockstars & Consultants, who needs 'em? - Aloha Ruby Conf

Rockstars & Consultants, who needs 'em? - Aloha Ruby Conf

Sound familiar? The Rails ecosystem has grown in leaps and bounds, like the Java ecosystem did in its’ early days. So many languages, frameworks, plugins, engines, libraries and tools. So little time to deliver your new project.

It’s tempting to hire a rock star who knows absolutely everything to get your new project off the ground. You can also hire "consultants" to help fill in the holes in your team when taking your existing product to the next level. Or maybe just hire a whole bunch of people for cheap, and they’ll get the job done... But did you ever consider the untapped wealth of the team you already have?

In this session we’ll explore ways in which the average development team can explore, learn, teach, and grow, until the sum of members of the team is as great as any Consultant or Rockstar.

B36ea58289890176b6170e382b3194fe?s=128

Lori M Olson

October 09, 2012
Tweet

Transcript

  1. Rockstars & Consultants Who needs ‘em? Aloha Ruby Conference, Oct

    8-9, 2012 Tuesday, 9 October, 12
  2. Tuesday, 9 October, 12 Equal time for dogs, and dog

    lovers.
  3. Lori M Olson @wndxlori http://wndx.posterous.com http://ror4real.com http://rails4ios.com Photo Credit: @etrever

    Tuesday, 9 October, 12
  4. So really... Who needs them? Tuesday, 9 October, 12

  5. YOU do. Tuesday, 9 October, 12 Because there’s an awful

    lot of job postings looking for them...
  6. Tuesday, 9 October, 12 And there’s even a reality TV

    show about them.
  7. Everyone does Tuesday, 9 October, 12 But the simple fact

    is, at one time or another, pretty much everyone does
  8. Why? Tuesday, 9 October, 12 The real question is why

    do we think we need a rockstar or a consultant? And why do we continue to need them?
  9. What makes a rockstar? Tuesday, 9 October, 12 Let’s start

    with breaking the question down.
  10. They know *everything* Tuesday, 9 October, 12

  11. Photo credit: http://en.wikipedia.org/wiki/File:The_brain.gif Tuesday, 9 October, 12 But not just

    that. Rockstars are self-motivated learners. They learn new things, because they enjoy learning new things.
  12. They’ve “done it all before” Tuesday, 9 October, 12

  13. Super productive Tuesday, 9 October, 12 They’ll “get ‘er done

    fast”, and push that critical release out the door
  14. http://www.flickr.com/photos/hsinho/345518426/ Tuesday, 9 October, 12 Because we all need a

    superhero every now and then, right?
  15. They have no fear Tuesday, 9 October, 12 The difficult

    we do immediately, the impossible could take a little longer.
  16. What makes a consultant? Tuesday, 9 October, 12 Actually, consultants

    tend to come in a couple of different flavors
  17. *knows* one thing very, very well Tuesday, 9 October, 12

  18. Photo credit: http://www.ftcwebconsulting.com/consultants/consult-a-seo-expert/ Tuesday, 9 October, 12 These would be

    your experts. They have deep knowledge of a critical piece of your technology stack.
  19. know *hard* things Tuesday, 9 October, 12 Tuning that database.

    Scaling that app to 5 million users
  20. Photo Credit: http://www.motivationalmemo.com/how-to-unveil-your-inner-genius/ Tuesday, 9 October, 12 Your team thinks

    a problem is really too hard, then you bring in the expert(s). Things that are hard to learn. Things that are difficult to understand.
  21. Consultancies Tuesday, 9 October, 12 Consultants are frequently part of

    a group.
  22. deep knowledge pool Tuesday, 9 October, 12 And as a

    group, Consultancies have a vast pool of knowledge to call upon, from their colleagues.
  23. http://thoughtworker.com/fun-thoughtworks Tuesday, 9 October, 12 This is the kind of

    work Thoughtworks specializes in
  24. Why not? Tuesday, 9 October, 12 So, if Rockstars &

    Consultants are so great, why would you not want to hire them? What, exactly, are the downsides?
  25. Risks Tuesday, 9 October, 12 There are some risks associated

    with each of these types
  26. Boredom Tuesday, 9 October, 12 Self motivated learners... once there

    is nothing new to learn, they get bored, and they run away when the next opportunity to learn presents itself.
  27. Photo Credit: I can haz Cheezburger Tuesday, 9 October, 12

    Or worse, they don’t run away, and start...
  28. Burnout Tuesday, 9 October, 12 Those rockstar ninjas know everything,

    do everything, work insane hours, burn out...
  29. @ezmobius: So don't forget to get up from ur desk

    and get some exercise. 4 years of 14 hour, red bull fueled days sitting in a chair can kill you! Tuesday, 9 October, 12 I still remember hearing about Ezra (don’t make me say his last name). This was just last year/
  30. the big payoff Tuesday, 9 October, 12 Some of your

    rockstars are just looking for what I like to call the illusion of the big payoff.
  31. Fail to deliver promptly? they leave http://alltopstartups.com/2011/04/25/twelve-reasons-why-businesses-fail/ Tuesday, 9 October,

    12 If you don’t produce that, they’ll move on for another try.
  32. Succeed in delivering? they leave http://media.photobucket.com/image/pile%20of%20money/xxandyshredxx/pile-of-money.png?o=6 Tuesday, 9 October, 12

    You do? then they “retire”. So that’s the problem with the big payoff. It’s a lose-lose proposition for most companies.
  33. Hit by a bus Tuesday, 9 October, 12 This is

    often joked about, but
  34. Looney Tunes: Fast & Furryous Tuesday, 9 October, 12 It’s

    only funny when it’s not happening to YOU or YOUR COMPANY.
  35. Prima Donna Tuesday, 9 October, 12 Official definition: someone who

    behaves in demanding, often temperamental, fashion revealing an inflated view of themselves, their talent, and their importance. What if they are hard to work with? They can be mono-focused and not open to new, alternative ideas.
  36. Don’t come cheap Tuesday, 9 October, 12 Last but not

    least, the Rockstar who knows he/she is a Rockstar, will know their own worth. They will never come cheaply.
  37. Wildly expensive Tuesday, 9 October, 12 Consultants on the other

    hand...
  38. Buy In Tuesday, 9 October, 12 Consultants will lack knowledge

    of your business, your operational limits, your long term plans.
  39. Bait & switch Tuesday, 9 October, 12 The ole bait

    & switch.
  40. http://kaufmanpost.com/2009/11/no-bait-and-switch-permitted-here/ Tuesday, 9 October, 12 You hire them for their

    expertise, and they send in the B-team. Quality control becomes an issue
  41. Culture Clash Tuesday, 9 October, 12 Culture clash. The Impedence

    Mismatch between your way of perceiving problems and solutions, and your consultants way of perceiving problems and solutions may be difficult to manage.
  42. Focus Tuesday, 9 October, 12 You may not have your

    consultant’s complete attention.
  43. Photo credit: http://www.ou.edu/ouija/ Tuesday, 9 October, 12 They may be

    juggling 2 or 3 projects at the same time.
  44. Audits Tuesday, 9 October, 12 Most taxation agencies will look

    at you cross-eyed, if all you hire are consultants. They’ll watch you closely, to see if you are misclassifying your workers.
  45. http://pictures.howbits.com/irs-auditor-meets-a-rabbi/ Tuesday, 9 October, 12 The IRS or the CRA

    or whatever your local taxation agency is called... will come and get you. Because if your relationship with a consultant can be classified as a “personal services” contract, you and your consultant are both gonna have a bad time.
  46. Knowledge walking out the door Tuesday, 9 October, 12 All

    that knowledge that they came in with? Most of it walks out the door with them, when the contract ends, when the better opportunity arises, when the payoff happens. Knowledge walking out the door is an asset lost.
  47. Alternatives? Tuesday, 9 October, 12 So what *are* your alternatives

  48. Tuesday, 9 October, 12 That’s Cinder, as a puppy. I

    dare you to not find that cute.
  49. GROW your TEAM Tuesday, 9 October, 12 How about you

    spend some time and grow your own team. Grow is such an interesting word. It could mean expand, but I prefer to think about it as organic growth. We’ll come back to it, and reflect on the many aspects of grow.
  50. KNOW your team Tuesday, 9 October, 12 In order to

    effectively grow your team, first you must know your team. single? workaholic? married? kids? pets? aging parents? illness or disability?
  51. http://www.thetoyzone.com/2009/blocks-for-kids/ Tuesday, 9 October, 12 These are never things to

    be discriminated about, just ... knowing enough about your people in order to make the most effective use of your team. http://www.thetoyzone.com/2009/blocks-for-kids/
  52. KNOW your ecosystem Tuesday, 9 October, 12

  53. Identify core technologies Tuesday, 9 October, 12 everything involved in

    the devops of your application or project development
  54. Dev Tuesday, 9 October, 12

  55. Basics Tuesday, 9 October, 12

  56. Ruby Tuesday, 9 October, 12 MRI or JRuby or Rubinius?

    Old projects on still lingering on 1.8 or new ones on 1.9?
  57. Rails or Sinatra or... Tuesday, 9 October, 12 AngularJS or

    Backbone.js or Ember.js
  58. ERB or HAML Tuesday, 9 October, 12

  59. CSS or Sass or Less Tuesday, 9 October, 12

  60. JavaScript or CoffeeScript Tuesday, 9 October, 12

  61. Testing Tuesday, 9 October, 12

  62. MiniTest or Test::Unit or RSpec Tuesday, 9 October, 12

  63. Mocking framework Tuesday, 9 October, 12 Mocha, Flexmock, Factory Girl

  64. Integration or Acceptance testing Tuesday, 9 October, 12 Cucumber, Capybara,

    Webrat
  65. Client side testing Tuesday, 9 October, 12 Jasmine, BrowserMob, BrowserStack,

    Browserling, Sauce Labs
  66. Toolset Tuesday, 9 October, 12 OS, Editor(s), VCS, debuggers, profilers,

    CI Ok, that was a handful, now...
  67. Ops Tuesday, 9 October, 12

  68. OS, DB Tuesday, 9 October, 12 Not just from the

    dev/user side, but the server configuration and customization side of things
  69. Deploy Tuesday, 9 October, 12 Heroku or VPS Linux, Hardware,

    memory, RAID, firewalls, etc or Cloud EC2, S3 Capistrano, SSH Apache, Nginx, IIS, Passenger, Unicorn, Load Balancer
  70. Manage Tuesday, 9 October, 12 Backups, Monitoring, Analytics

  71. HOW? Tuesday, 9 October, 12 How does any one person

    keep on top of all of that? Poorly, at best. What to do? There’s got to be an alternative...
  72. http://www.flickr.com/photos/divadivadina/2726296562/ Tuesday, 9 October, 12 Because if you don’t, some

    day your rockstar
  73. http://johnnynotsid.buzznet.com/user/journal/1333031/favorite-musician-quotes/ Tuesday, 9 October, 12 is gonna start looking like

    this.
  74. Training Tuesday, 9 October, 12 To go back to the

    organic/growth/plant analogy... Training your people is like using fertilizer.
  75. TIME Tuesday, 9 October, 12 Hard cash money is one

    component to that fertilizer, but training is as much about time, as it is about money
  76. Learn, absorb, try Tuesday, 9 October, 12 If you fail

    to give your people the time, not only to learn, but to absorb that learning, and try it out for size, then your money is wasted.
  77. Types of training Tuesday, 9 October, 12 Lets not forget,

    there are many types of learning. Remember how we were going to KNOW our TEAM? If you don’t know your team, you won’t know which is the most effective type of training to apply
  78. Self Learning Tuesday, 9 October, 12

  79. web based Tuesday, 9 October, 12

  80. screencasts Tuesday, 9 October, 12

  81. read books Tuesday, 9 October, 12

  82. Formal Tuesday, 9 October, 12

  83. courses Tuesday, 9 October, 12 like the Pragmatic Studios

  84. certifications Tuesday, 9 October, 12 yuck, I know, but there

    it is.
  85. conferences Tuesday, 9 October, 12 Conferences are great learning experiences.

  86. Sharing Tuesday, 9 October, 12 If you spend money, as

    well as time, on all this training, make certain it’s shared. This multiplies the effect of all that training, across your team. Make sure that anyone taking training has the opportunity to pass that learning on to the team
  87. lunch & learn Tuesday, 9 October, 12

  88. bar camp Tuesday, 9 October, 12 Back to “know your

    team”. If they are all married with kids, Bar Camp = bad idea. Lunch & Learn = good idea. Bunch of single workaholics? Bar Camp all the way.
  89. But? Tuesday, 9 October, 12 What if they take all

    that training and leave?
  90. Replacement costs Tuesday, 9 October, 12 Replacing an unhappy developer

    who walks away is almost always going to cost you more than doing what’s necessary to keep them. Not just in terms of finders fees, but time. Lots and lots of wasteful time.
  91. Valued people, stay. Tuesday, 9 October, 12 If you prove

    to people that they are valued, they will be more likely to stay, than those who think that they are just another warm body, down in the trenches, a replaceable cog in the machine.
  92. Engage Tuesday, 9 October, 12 So beyond Training, we have

    Engagement. Make certain that every single person on the team is engaged, and feels ownership of SOMETHING. So how do we do that?
  93. Split Responsibilities Tuesday, 9 October, 12 Collective code ownership is

    great, but as I think I have amply demonstrated, not everyone can be an expert in every single piece of the puzzle. For each of your core technologies, you need to identify a primary and secondary point person
  94. The Primary Tuesday, 9 October, 12 The go-to person for

    that piece of the puzzle.
  95. The Secondary Tuesday, 9 October, 12 Remember when we talked

    about that “hit by a bus” thing? How about vacations? Sick Leave, Mat leave?
  96. Not enough Tuesday, 9 October, 12 Just declaring primary and

    secondary point person is not enough. You need more.
  97. Par-ti-ci-pa-tion Tuesday, 9 October, 12 I guess given that so

    many developers are introverts, it shouldn’t be surprising, but... you can’t just sit back, you need to step up and participate. If you want to step up, and BE the expert, then you’ll need to participate
  98. Resources Tuesday, 9 October, 12 There are hundreds/thousands of resources

    out on the web, USE THEM.
  99. mailing lists Tuesday, 9 October, 12

  100. blogs Tuesday, 9 October, 12

  101. twitter Tuesday, 9 October, 12

  102. irc Tuesday, 9 October, 12

  103. forums Tuesday, 9 October, 12

  104. lurk Tuesday, 9 October, 12

  105. ask questions Tuesday, 9 October, 12

  106. answer questions Tuesday, 9 October, 12

  107. Stay on Top Tuesday, 9 October, 12 Everyone has to

    start somewhere. The point is to make the effort to stay on top of at least one thing
  108. Know the Issues Tuesday, 9 October, 12 What are the

    bugs? Incompatibilities? Stability issues?
  109. Plan for Upgrades Tuesday, 9 October, 12 Unless your tool

    is stagnant and never changes (code smell! run away!), you’ll need to manage your updates
  110. beta tests Tuesday, 9 October, 12 Participate. Don’t have to

    inflict on your team, but try it out, get an idea of what the impact will be. If you need a second opinion, that’s why you’ve got a secondary.
  111. release candidates Tuesday, 9 October, 12 Then when release candidates

    come out, you will be well positioned to use them.
  112. contribute Tuesday, 9 October, 12 As Wes mentioned yesterday, and

    as my Public Service Announcement of the presentation, if it’s open source, then for gawd’s sake contribute back!
  113. TIME Tuesday, 9 October, 12 Did I mention that this

    takes time?
  114. Sustainable pace Tuesday, 9 October, 12 Factor all this learning,

    and growing, and developing expertise into your sustainable pace.
  115. Stagnation Tuesday, 9 October, 12 Don’t let people sit back

    on their laurels, either. Some elements and projects will be more interesting than others. Make certain you rotate people around, and let them develop expertise in new areas. When you have primary and secondary experts, it’s a lot easier to do this, and you’ll keep people from getting stale, bored, and frustrated.
  116. So, what does “GROW your TEAM” mean? Tuesday, 9 October,

    12
  117. Training Tuesday, 9 October, 12

  118. Participation Tuesday, 9 October, 12

  119. Develop Expertise Tuesday, 9 October, 12

  120. Training Participation Develop Expertise Tuesday, 9 October, 12 Looks to

    me like we’ve got one of those virtuous circles here.
  121. Continuous Improvement! Tuesday, 9 October, 12 Training, Participation, Developing Expertise...

    All these things combine into a continuous improvement process for your team.
  122. GROW your TEAM Tuesday, 9 October, 12 And that is

    what will GROW your TEAM into something better than all the Rockstars & Consultants out there.
  123. Tuesday, 9 October, 12 And that’s Finnegan, saying, that’s all

    folks, we’re done.
  124. Thanks! Lori M Olson @wndxlori http://wndx.posterous.com http://ror4real.com http://rails4ios.com Tuesday, 9

    October, 12