So you want to be a Senior Developer: A response

A response to the Gypsy's Sr. Developer Attributes

So my buddy and former student -- the webgypsy -- has written a post that he attributes to the lessons he learned from me.  My initial response is "Oh no, don't pin this one on me."  So I decided to have a little fun and respond in a point by point manner (it's all in fun, don't take me too seriously)...

#1 (A Senior Developer needs to be a leader.) - He mentions that if you're not a natural leader you might not be cut out for this... I'm glad you think I'm a "natural leader" Dave.  Could you send some of those drugs you're taking to me?  Mainly, I'm looking to get the project done despite my team sometimes.   I have thrown people off my teams if they weren't willing to follow instructions (I guess when I am working with a willing team I'm not too bad of leader... but leadership skils aren't my personal strong suit.. Dave must have gotten this one from Eric, so don't blame me.

#2 (A Senior Developer needs to be a teacher.) - I thoroughly agree; as long as your junior programmers are teachable otherwise you get them away from your project or the parts of the project that can hurt it. 

#3 (A Senior Developer needs to be compassionate.) - only goes so far (in case you haven't guessed)... The Junior Developer or new hire is "FNG" and stays that way to the developer is not given a chance to screw up (for those who don't know what "FNG" is it's "F-ing New Guy" as in "That FNG nearly screwed up the whole project!  Why did they hire him/her?").  Again, compassionate to a point.

#4 (A Senior Developer needs to understands customer service.) - The real point to remember here is that the client pays the bills.  The client may or may not have a clue what they want, and if they do know what they want they can't explain it to you, so be nice.

#5 (A Senior Developer needs to understand the technology.) - The reason for this is that nothing else matters to us geeks.. new toys...

Some additional thoughts... Just because you have 5 years of experience doesn't necessarily make you a senior developer.  At times I don't feel like one.  As I have said repeatedly here, I want to get better at what I do... if you have that attitude, then you'll be great!

Also, be careful who you hire it may end up biting you in the butt.

Finally evoking a healthy respect (do I dare say fear) in junior developers is always helpful when it comes to leading/instructing them.

Print | posted on Friday, August 12, 2005 4:16 PM

Feedback

# re: So you want to be a Senior Developer: A response

left by at 8/12/2005 6:18 PM Gravatar

#3 is completely false.  You don't need to be compassionate.  Lead, follow, or get out of the way - Gen Patton.

They'll never get better if you baby them.  

# re: So you want to be a Senior Developer: A response

left by at 8/12/2005 6:55 PM Gravatar

And just who said I thought you exhibited any of these qualities???  <grin />

Thanks for your response to my post, you hate monger!

Sincerly,

Your original FNG

# re: So you want to be a Senior Developer: A response

left by at 8/15/2005 11:48 AM Gravatar

WOW!  This is, perhaps. one of the saddest commentaries I have read in a long time.  Made sadder by how commonly accepted I believe your wisdom to be.  

Your position on #3 is made a requirement by your positon on #2.  It has been many years since I've found someone who needs coaching (most people do at some level) but won't accept it.  The problem is, to come to the position where people accept you as a coach you need to have earned their respect.  Title means nothing.  Years of experience means nothing.  They will respect and listen to you if you clearly know a whole heck of a lot more about their job than they do.

When you come to this point and then take the time to work with the FNG they won't mess up your project because a) you know what they can and can't be relied on to do and b) you have helped them avoid the mistakes that would cause them to mess up the project.

Lastly, worst case, no one should be ABLE to mess up your project.  Worst case you should need to do nothing more than throw away the work they did and start over on it.  That puts you in more or less the same position as you would have been in anyway if you gave them nothing meaningful to do.  Bad design can foil this, however.

# re: So you want to be a Senior Developer: A response

left by at 8/15/2005 1:30 PM Gravatar

I'm glad a couple of you took this for the fun that it was... Dave needed a salty response to his sugarey sweet post.

Sorry I haven't been back to the old blog over the weekend to approve comments... I have no A/C in my home (and I live in Florida... temperatures have been in the 100s during the day).

# re: So you want to be a Senior Developer: A response

left by at 8/15/2005 2:55 PM Gravatar

IMHO, I would change compassion to passion.  If you're passionate about building systems and knowing the technology surrounding it, others will feed off of it and seek you out.  People who are passionate about developing software  survive through paradigm shifts (fat-client -> web -> webservices).  People who are passionate never stop thinking about software and build their skill set continuously and they are always thinking about how to handle the existing problem better.

Lastly, I think Senior developers ruthlessly triage their risk list.  While I think formal "risk management" is a good practice, it really drops the ball on how it should be applied.  A good senior developer is constantly assessing the threats to the project and schedule and keeps alternate plans in mind.  

# re: So you want to be a Senior Developer: A response

left by at 8/15/2005 3:04 PM Gravatar

you are a human first, senior developer second...

# re: So you want to be a Senior Developer: A response

left by at 8/15/2005 5:26 PM Gravatar

"The problem is, to come to the position where people accept you as a coach you need to have earned their respect. Title means nothing. Years of experience means nothing. They will respect and listen to you if you clearly know a whole heck of a lot more about their job than they do."

is really hard for "senior developers" to accept the fact that someone 10-20+ years younger than them is smarter than them, I can write better code faster than those called "senior developers" here at work, but they won't come to me to ask an opinion

Title  
Name
Email (never displayed)
Url
Comments   
Please add 8 and 5 and type the answer here: