[an error occurred while processing this directive] [an error occurred while processing this directive]
Brian Jack's Weblog

« "The Delicate Balance" | Main | "Who provides LIMS project cohesion?" »

March 01, 2005

Coder to Developer to Consultant

Mike Gunderloy wrote a popular software development book called Coder to Developer in which he stated that coding skills alone would not make successful software. He argued that coders that learn how to develop software (meaning those that learned all of the non-programming skills needed for software development) would be more valuable and produce better end products than those that focused on just writing code. In the book, Mike discussed topics such as unit testing, source code control, bug tracking, and creating documentation as examples of some of the skills that coders have to master before they can be true software developers.

Eric Sink argued a similar point 2 years ago in his weblog. Eric runs a small ISV (Independent Software Vendor). His point is that when a team is small, employees must be able to do anything in order to produce the product. There is no room for specialists that only produce code. Everyone on Eric's team has to be able to answer customer support calls, test code, fix bugs, and work on documentation. Small companies cannot afford to have employees with a small range of skills. For the team to be successful, everyone must be able to contribute across a wide range.

Working for a small software consultancy is no different. In fact, working as a consultant for a small software consultancy requires that each team member be even more well-rounded than a traditional ISV. For us to provide real value to our customers, not only must we be able to do our core jobs (such as produce software or write user documentation) we also have to be able to perform the following routinely:


  • Understand the business requirements of users such that we understand the context of our work and where it fits into the needs of our customers.

  • Talk to customers and users in their business-language. We must understand their business as well as we understand our own in order to succeed. We have to be able to effectively communicate.

  • Advise customers on the best processes for operating their business.

  • Provide a business solution that addresses customer needs. Sometimes this will come from work that we produce; sometimes this comes from applying work from others.

  • Effectively manage the implementation of solutions.

The point is that in order for our consultants to succeed, they have to be multi-dimensional individuals. Good development skills are a given; consultants must be able to apply those skills in a customer's business environment in order to provide value.

Posted by Brian Jack at March 1, 2005 09:04 AM

Trackback Pings

TrackBack URL for this entry:
http://www.jandrconsult.com/cgi-bin/mt/mt-tb.cgi/19

Comments

Post a comment

Thanks for signing in, . Now you can comment. (sign out)

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)


Remember me?


 
[an error occurred while processing this directive]