Eric Wise

Sponsors

The Lounge

Blogs I Read

Fun & Games

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
What is a Great Developer?

A great developer is a person who:

  1. Understands that different tools and languages excel at different tasks.  They do not engage in "zealotry" choosing only one pattern or paradigm and jamming it into every problem situation.
  2. Understands that the goal of development is to produce "Working Software".  Anything that distracts from working software should be shunned.
  3. Realizes that they will not be the only or last person to experience the code.  Avoids unecessary complexity and comments where appropriate.
  4. Gets along with other developers.  Realizes there are many solutions that can viably solve a problem and that their way is not always right or best.  Is able to be a leader and take direction equally well.
  5. Gets along with end users.  Is able to explain technical concepts in "layman terms".  Over time, builds a trusting relationship with end users and becomes an advisor, not a dictator, for software requests.  Makes every effort to learn the domain from the user perspective.
  6. Is intellectually honest.  Does not over or underestimate deadlines, provides software in a timely fashion.
  7. Is always watchful.  Constantly looks for ways to improve the day to day productivity and end user experience.

Posted Wed, Sep 6 2006 2:45 PM by Eric Wise

[Advertisement]

Comments

Jason Haley wrote Interesting Finds: September 6, 2006
on Wed, Sep 6 2006 9:34 PM
James Simmonds wrote re: What is a Great Developer?
on Thu, Sep 7 2006 6:57 AM

Absolutely spot on - great summary

Jonathan Choy wrote re: What is a Great Developer?
on Thu, Sep 14 2006 3:02 PM

Ah, but there IS, always, a right, or best way.

There is also a best way for business need.

There is also a best way for technical constraint X.

Great developers undertand that the best is the enemy of the good; and great working software doesn't need to be 'Best'. It needs to be running, tested software that meets user goals including both functionality and delivery timeframe.