Copyright © 2014-2017 Software Developer Life Blog - All Rights Reserved.
Subscribe to Software Developer Life Blog
Search Articles Of My Blog

2014-04-22

Does your job description represent the traditional boring market? Part 1

This is brief and hopefully it is going to be a series. I am going to extract a few key words from various job descriptions and interpret them. These key words are related only to software development.
 
Hands on environment: Or any similar word of that is a really a "no-no" to work in a foolish company like that. Most of implementations are of poor quality with an emphasis of on hands-on work experience. Most likely that happens for not getting the requirements of the customers right (they are always hands-on, they never think of "what if?" questions).  This will result a lot of feedback from the customer saying "oh, you forgot this "what if" condition that you never thought about it, fix it!" a dozen times. Then, in order to correspond to multiple dozen of fixes, the programmers also must be "hands-on" to able to keep up with the pace of the customer demands. They do not have time to ask "what-if", but only "lets do it as fast as we can, cause you know...our design will change anyways again from the client". I have discussed this in a different perspective on the issue behind the client relationships a company works with. In few words, the hands-on work environment is an alarm that management does not care about the big picture of the software so much. Management environment will have a domino effect for programmers to do the same (after all, it is a chain more or less). Which programmer wants to work in an environment like that? Not the ideal one. It feels like you are one of the outsourced guys.

Be productive without others being over your shoulder: What does this mean? No really, why are they very indirect? If you have not guessed what that means, it means most of the tasks are operational based instead of implementation based. Most tasks that relate on implementing a new design or a feature that is complicated of nature will need the consent of others. For tasks that are quick fixes, they do not need the consent of others (it is a request from the user). In other words, what does it mean? This is what it means: "We are not forcing you, but we want you to be very heavy oriented to customers fixing their problems as fast as you can. Figure out how to help the most customers possible. Yes, we are embarrassed this job is not so rad, but you will join us no?". I think it is better for those job positions to be honest as possible instead of finding the traits of an individual. The individual may feel regret and work for the sake of the money. That is not cool.

Work hard & be motivated to provide the best performance: Again, this seems like I am working in a manufacturing company where output is all that matters. Seriously, human resource and company culture, what the hell are you thinking of!? These working environments are the choices a programmer will go for last resort (and there are plenty of those in such form). Programmers will not be satisfied on output and working hard. They will only be satisfied if the design works as expected. They care if the future output of work will be less based on the work they do now.  That they make the software more effective and efficient. To have a smart design that does not create a lot of loops between the client and the company (this will result in less changes, less work for the programmer). If the mentality is work hard and performance, they only care they can satisfy the customer with the most results possible. To charge the customer a lot of money with a dozen of changes instead of a single or two changes (that can be 50% off or more of the original charge). Is that the society we want to create? Shame on you human resource!

It is ironic that this was posted on a job board filling the requirements of Joel test. To see the honesty of a working environment, see if they use key words correctly or understand the key words they use. These key words translate what type of workers with a specific mentality that they want. Again, these jobs are not bad as a last resort. If I worked on those jobs, I would have tried to change the company culture. For some cases, this environment is appropriate. Also, as I have mentioned in previous blogs, changing this type of environment is very very hard, but possible and is for the best. And last but not least, do not let the keywords tell you what is right for you, but you choose for yourself (with ideal critical thinking) on what is right and wrong. I promise that in a hundred years and on, things that look correct right now will obviously be very very wrong in the future (and history has showed that to us repeatedly).