Friday, October 3, 2014

A simple way of spotting a good developer

When I was first learning how to shoe horses, other blacksmiths and farriers would treat me like garbage.  All they could say were derogatory things, in their minds everything that I did was terrible.  They would purposely make me burn my hands while working with hot shoes and then laugh to no end.  The only name that they thought was appropriate for me was: "Boy!".

They loved to shout: "Hey Boy! Go fetch me a bucket of water!" or "Boy! Hurry up you're never gonna' get this!...blah blah blah."

I swore that one day when I was on my own I would never treat any new comers to the farrier/blacksmith world like that.  Over the 7.5 years that I was self employed shoeing horses I helped several people get into shoeing and let them ride along with me to the different barns I worked at.  I think I helped people learn more about horses, more about making horseshoes, and shoeing horses.  I always felt good when someone would say: "I thought all farriers were nasty old men, but you are really nice!".

How does this apply to coding and development?  I'll show you.  Not all farriers were mean, I rode with 7 different farriers over the span of 2 years, and learned a surefire way to spot the good ones from the bad.  The good farrier treats you like an intelligent human being when you are "learning the ropes", when you make mistakes he points them out to you, shows you how to not repeat them, and let's you fix the mistake.

A nasty farrier looks for ways to humiliate you in front of a barn full of people.  A nasty farrier talks down to you, gives you tasks that are far beyond anything you can handle, and then loudly and public says how poor of a job you did. 

My secret was to try and only ride with the farriers that treated me like a human being from the start as much as possible.  The farriers that treated me like crap when I was an apprentice and didn't know anything, would then want to be buddies once I was doing well and on my own.  They would ask me to cover for them from time to time, sometimes I would help them sometimes I wouldn't.  I would always bend over backwards to help a farrier who had treated me with respect from the start.

I remember driving up to Washington D.C. at 11:30pm to fix a shoe for a D.C. Park Police horse that needed to be on patrol the next day for a nice farrier that was out of town.  I didn't make a penny from that work, or even have the cost of my gas paid for, it didn't matter I was more then happy to help out.

I was reminded of this recently when I was at a place I won't mention publicly.  I won't go into the details, but just suffice it to say that the same principles are true across the board whether it be as an apprentice or a junior developer.  I am so thankfully and grateful for my original mentor +David Bock , for all of his time, incredible teaching style and most of all his respect.  I now know how experienced and skilled David is and I am sure there were many times he could have been rude or said things that didn't encourage, but instead he always encouraged me to a higher level, to learn more.

I don't own a company, but I know if I did, and was looking for good developers, I would look for someone like David who takes the time to share his wealth of knowledge with others.  It's late, 12:45am so I will end this post.  After spending the last 4 hours working on fixing errors on my computer, I am ready to crawl into bed!

Never give up and keep coding peeps, you can do this  :-)