Pages

Tuesday, December 14, 2010

Software Consultants. Die. Die. Die.

Oh you software consultants.* I appreciate your role. Really. I respect you and value the work you do, namely talking with the clients so I don't have to. I worked for years in various jobs where I had to face the customer, and I can appreciate trying to keep a balance between doing your job well and managing what are sometimes ludicrious customer demands, from several customers even. I try not to waste your time.

Here are some tips on how you can not waste my time.

  1. Please don't write crap specifications.
This is so obvious to me, I can't believe I have to mention it, so forgive me if I'm a little brusque. This one is doubly important as it will save two people a lot of nerves and confusion: your developer and your tester. Teamwork, a'ight? A'ight.

spec·i·fi·ca·tion –noun

Usually, specifications. a detailed description or assessment of requirements, dimensions, materials, etc., as of a proposed building, machine, bridge, etc.
ge, etc.
- Dictionary.com



Here are some excerpts of some actual specifications that have made their way across my desk lately:

"New business rule must be created."

"Add new drop down to form."

"Create new table for new form"

"XYZ Security Profile should be modified to allow client access to ABC Module / Form."

Nevermind that reconfiguring the security profile in such a way will shatter the security profile everywhere else and now its completely destroyed and we've got to fix it now to make everything peaches n' cream.  Please consider specifying new security profiles instead of asking for endless modifications of current configurations.  Nit picking at security here, patching up an access issue there (over and over again)--this never goes down well.

      2.  If you client has paid for 300+ additional security profiles and only an absurd combination will work to get anything to function correctly, then say so early on!  Statements like "Yeah, its confusing if you've never used it before." and "Oh, yeah." only make me want to karate chop you in the throat. 

     3.  Return phone calls / emails.  Again please see my opening paragraph.  I am probably the last person to get upset about your busy schedule and postphoned calls.  However please trust that I am not calling to waste your time and most likely have a question about something which will affect the end product for your customer.  If you don't answer you run the risk of it being completely wrong.  Something I am sure you want to avoid explaining.  I try to help you, so you look brillant in your job.  Please get back in touch.

Again, I appreciate you and your role.  If it weren't for you, we'd probably have to spend more time on project coordination than our actual jobs.  Everyone can take a moment and think about the little things they could do to help their team members jobs a little easier to do.  I personally hate writing emails, but take those extra minutes to write short messages to relevant people about the progress of their project because a) I know it's important to them, b) saves me interruptions later in the week when they would come by and ask anyways.  Your five minutes of time could help someone save 30 minutes of frustration.

*To those consultants who do their job well, and they exist, this doesn't apply to you.