Impostors. Frauds. We’ve all hear of them and we all go out of our way during the hiring process to avoid them, but do they really exist? Sure, there are those that might not do as good a job as others, but is there really anyone applying for programming jobs that they are certain that they cannot do? I think not. Instead, these imposter’s might be more accurately slotted into a number groups based on their predilections and development habits.
The Inexperienced:
We’ve all had our first job. If it has been a long time for you, think back on that first three months. How many mistakes did make? How many lines of codes did you write that you would never allow through a code review today? Would it be easier to simply count the lines that would pass? Does that make the you from the past a fraud?
You don’t just have to be a green developer to be inexperienced. Consider moving to a completely different stack or platform. Are you used to working in a garbage collection language? Good, try some C++ or Objective-C (iOS and no cheating with ARC). Are you a Ruby on Rails guys? Awesome, how about you boot up the Windows box in your closet and clone your awesome Rails app in MVC 3? My point is not to be snarky but to point out that we were all beginners once and can be again if forced to move out of our respective comfort zones; though I do feel that it is a good idea to constantly play with technology outside of your comfort zone just for the educational value.
The Stubborn:
We all develop particular coding styles, habits, and a level or comfort with the technologies we use everyday but what happens when these things become hindrances to our development work? Well, many of us become stubborn not wanting to change our ways; this becomes particularly troublesome when the ‘Jr’ is dropped from our job title or replaced with a shiny new ‘Senior’ or ‘Lead.’ Of course, I am not arguing that we should all ditch our proven methods and tools in favor of whatever is trending on Twitter. However, we should be open to evaluating these trends; even if technology X turns out to be just another fad, there is always an educational value in learning something new.
The Optimistic:
There is always learning to be done when starting a new job or project, but have you ever been tempted to say “I can just learn technology X before I start the job and be fine.” Well, if you have you have more likely than not picked up that technology fine and are happy with your new position congratulations. If not, you are part of the reason for the “fraud” scare. Basically, you mislead your potential employer or client and have now put them and yourself in the awkward position of having to deal with reality. I’m not one for judgments, but keep that in mind the next time you fudge a resume to get that next big project. More likely than not, if you have been guilty of this type of fudging, you meant well and truly believed that you would pick up what you needed to know in time, but were mistaken.
The picky among you will be quick to point out that what I call “optimism” is in fact a form of fraud. I would argue that fudging one technology or tool though misguided is not the same as claiming to know something as big as an entire programming language when you do not. Am I too soft here? Are these people really just outright frauds? Let me know what you think on Twitter (@dominucco) or Google+.