Developing Developers

gnschenker edited this page Oct 26, 2013 · 6 revisions

Conveened by @gnschenker

Ideas for Everyone

  • learn another language
  • Do something non-trivial (spike) in that other language[a].
  • Learning another language teaches the concept rather than the syntax of how to do it.
  • Types of Learners - Audio, Video, and Kinesthetic
  • If others are not willing, work on reducing friction for others if there is business value in it.
  • Pair those with passion with those who do not have passion to help drive the non-passion person forward. Passion is contagious.
  • You need to be able to treat toxic developers as people first. A toxic developer could undermine the entire development effort.

[a]What if the company you work for is not willing? You will have to learn it on your own.

DISC Personality Profiles might help you understand HOW to present your ideas. There are different learners

  • Audio
  • Video
  • Kinestenic

Tech Process Team Character

Greatness by David Marquet is a good video on leadership. http://www.youtube.com/watch?v=OqmdLcyES_Q

Try to remember that at the end of the day you are dealing with people. People can be trained for technical skills, but it is harder to change someones character.

When a team member is failing over and over, is it time to fire them?

  • Assume that the failures of your team is reflective of my leadership.
  • Does this team member know that I’m failing.
  • Is this failure repetitive? Does this team member want to change?
  • Address the situation directly and quickly
  • Use the situation as a teaching moment

Ideas for Teams

Not all developers are interested in, passionate about development and pushing the envelope. It is a challenge to build a developer team that is interested in continuous development.

What are some ideas to develop your developers?

  • Programmer's Lunch
  • Pair Programming (Pair Passion with Non-Passion)
  • Responsibility Rotation
  • Conferences/User Groups
  • Training Materials (online, books, etc)

Ideas for Leads

As a leader what method do we do to fix team member issues?

  • Coach
  • Reprimand
  • Isolate
  • Extricate

What do you do to help build your team and spread the knowledge?

  • Programmers Lunch
  • Pair Programming
  • Responsibility Rotation
  • Conferences/User Groups
  • Training Materials (Online, Books, Etc)
  • Allocate time for personal development. (Time during the sprint/development week, etc)

Allowing people to work on their own things, and personal development time seems to be a recognized important part of the team building.

There is a risk among passionate developers that they look down their nose at those who don’t have the passion.

Realize that there is a large number of developers that are 9 to 5 coders and while you may never change that, you can make them more passionate about their job, while they are there.

Working with people that are better than you, will make you better. Keep this in mind with team assignments.

Management Warning Signs:

  • No coding before hiring

Possible blocks/concerns

  • What if not willing?