Home > Miscellaneous > Dont be a Programmer, be a Consultant

Dont be a Programmer, be a Consultant

So, what is the difference between them? well imagine the situation i had before. My boss told me to develop a system to retrieve CSV(Comma Separated Value) file that sent by another company. As a programmer, it’s nice and easy to do, the things i have to do are:

  1. Listening to the certain connection.
  2. Accept the file.
  3. Save the file.
  4. And done.

Easy and easy, right? but… as a consultant, i have to think more than those 4 steps. At least i still have many pre and postconditions, such as:

  • What if the connection isn’t established well?
  • What if the client is sending the wrong file?
  • What if the connection down meanwhile process is still on progress?
  • What if the client is sending the file twice?

What if, what if and what if. They are still many of Ifs available. Of course we cant handle all of the IF situations, but at least we prepared for common and certain problems already. We cant anticipated all of them, but we try to reduce the possibilities.

So, from my point of view, the huge and main differences between Programmer and Consultant are:

  • Programmer does ONLY the code, meanwhile Consultant has to be a solution maker.
  • Programmer is preparing for now situation, meanwhile, Consultant is preparing the ‘future’ condition and try anticipating a new born problem.
  • Programmer does the job with their technical skill, meanwhile, Consultant does it with combination of Technical Skill and Experience.
  • Programmer solve the task, meanwhile, Consultant solve the problem.

Easy to be a Programmer, you can learn it if you have a passion, patience, and practicing the programming language, but not all of us can be a good consultant, it need time and experience, sometimes the problem cant be solve with common and text-book based solution, sometimes we have to solve it (or patch it) with a tricky solution.

So, from now on, prepare and learn to be a Consultant, not only do the code but try to learn the problem with sense, feel, analyze and give solution for it.

Categories: Miscellaneous
  1. sanjaykhattri
    29 March 2011 at 14:24

    Nice article..

    • RDeJourney
      29 March 2011 at 16:59

      Thanx, Sanjaykhattri.

  2. Nicolas
    30 March 2011 at 15:53

    I would not agree on the terms, but I understand your point.

    • RDeJourney
      30 March 2011 at 15:55

      Hi Nicolas,
      Thnx for the reply, well, im glad you have my point and have no misunderstood in here 🙂

  3. Michal
    30 March 2011 at 16:06

    cmon, in your consideration programmer is man who just started to learn. I doubt there are many programmers who can afford not looking at ‘What if the client is sending the wrong file’.

    In my opinion consultant need to know business side of project and has ability to talk about them with programmer. Programmer do the rest ; )

    • RDeJourney
      30 March 2011 at 16:22

      Hi Michal,
      in my point of view, Programmer not only doing the rest, we have to be more critical, in example: My Supervisor told me to do this this and this… well as GOOD programmer, we have analyse the problem that may arise from that ‘this-this-this’, since we are doing analyzing thing, so we are the consultant itself. Not the title, but the “How we think”

      Got my point ? honestly, hard to take explain it in words.. hope you understand it…

      • Michal
        30 March 2011 at 16:54

        I got it but I dont agree. Its still programmers’ job. Consultant is ‘bridge’ between more complicated businness logic/use cases and programmers.
        Problems like ‘What if the client is sending the file twice’ is normal exception which we should workaround in code. Also we should get into specific logic in project, but we have many things to learn about frameworks etc so in more complicated businness cases we need to ask consultants.

  4. 30 March 2011 at 16:10

    I don’t know what kind of programmer you’re talking about, but a real programmer design his app to take care of those situations. A programmer tries to write a robust application that takes into account extreme exceptions. Now if you feel you need the fancy name of consultant, good for you but don’t diminish the job of a programmer as one who doesn’t think forward. Or is just focused on solving one task. Developers solve problems. If you don’t get that you must have misunderstood the essence of programming, and you should stick to being a consultant and doing a lot talk.

    • RDeJourney
      30 March 2011 at 16:26

      Hi Sam K,

      Im talking about ‘only code programmer’, well im agree with you a real programmer design his robust app.. Absolutely no doubt. but in my point is, as i wrote on michal too, we have be mo critical coder, not only doing the code but try to analyse the probs, and be a consultant (at least for ourself) .

      Once again, not the title… My title itself is “Programmer”… 🙂

      Well, maybe im a little biased when writing the title, how about “Dont only do the code, think forward” sounds better?

  1. 12 May 2011 at 22:56

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: