Fyhr House | home
back to Ray's Resume
Top 10 Traits of a Great Software Developer
This is an article I found on the net. Ironically it echos my feelings about Software Developers and it is in a format that I always enjoyed.
(IDG) -- Late show host David Letterman is well-known for his Top 10 lists, which highlight the social or political topics of the day with much needed humor. I, too, have Top 10 lists percolating, though they generally pertain to technology or business rather than other topics. This week I present one of my favorite Top 10 lists -- the Top 10 Things That Make a Great Software Developer. This list is applicable whether you are a developer seeking improvement or a hiring manager determining what to look for in a great developer. Without further ado ...
No. 10: Superlative technical skills
This is obvious, but it must be stated. Any great developer will be accomplished in several areas including, but not limited to, analysis, software design, good coding practices, and debugging skills.
No. 9: Strength in business skills
This is not as obvious as No. 10. A skilled software developer can create applications, but a great software developer also understands the business impact of the application. An application developed with a skilled understanding of both business and technical issues can prove to be a powerful competitive advantage for an organization.
No. 8: Speak English as well as "tech-ese"
Software developers increasingly communicate across larger sections of the organization. Clients are focused on business process and great developers need to communicate on this level, as well.
No. 7: Paradigm openness
I often hear developers heatedly debating the merits of using one paradigm vs. another. A great developer is open to all paradigms and utilizes that which makes the most sense for the project and the environment at hand.
No. 6: No tool or platform marriages
Likewise, developers often define themselves in terms of a tool or a platform. They may refer to themselves as "VBers," "Delphites," or Unix or Windows developers. A great developer views his or her skills outside the scope of tools and platforms, and applies the best solutions.
No. 5: Learning as an ongoing process
This goes hand in hand with No. 6. Developers do need to be skilled in particular languages or platforms, but a great developer does not stand still in knowledge attainment. Great developers continually challenge themselves to learn new skills.
No. 4: Code reuse
A good developer always maintains common code for later reuse. A great developer will also share code with other developers as an expanded means of reuse.
No. 3: Collaboration skills
Building relationships with other developers goes beyond sharing code. A great developer utilizes other developer skills to ask questions, provide help on a particular issue, or to discuss best development practices.
No. 2: Teach others
I believe experienced developers should also give something back to the software community. This can mean a presentation at a user group, a session at a college, or helping another developer work through an issue.
And, (drum roll, please), the No. 1 thing that makes a great software developer ...
No. 1: A sense of humor
Too often, heavy project schedules and the demands of solving ever-complex business and technical issues leave developers in an all-too-serious state. A great developer finds balance in having a good sense of humor.
For example, I recently heard from a developer I know in St. Paul, Minn., who is working on a Y2K project. He was asked to provide a status report on the project, and he responded with the following humorous e-mail:
"I hope I haven't misunderstood the instructions because frankly none of this Y "to" K problem makes any sense to me. Nevertheless, I have completed conversion of our company calendar so that following the year 2000, we are prepared to go forward with the following new months:
Likewise, we are fully compliant with the new days, as I understand them:
Note: I have not performed the Y "to" K conversion for Saturday or Sunday, as this will not impact our business."
Senior Analyst Maggie Biggs evaluates application development and database technologies for the InfoWorld Test Center. Send her e-mail at firstname.lastname@example.org.