Crappy Code
All my professional life I have been a programmer. Many in my country India have an engineering degree, but are not engineers. They do no know to write good code, design system and integrate them. Every coding house in India have crappy coders, and they are the ones who take on MBA's and goto the management. So is that a good end of the story? No, nope, nope. Its where the problem starts.
There have been lot of times I have invited to join the management, but the truth is it sucks, the reason is as soon as one goes to management, one forgets the thing about coding, one forgets what it takes. Its like a president of a nation waging war upon war without knowing the true cost. Some how the management people are eclipsed from the toils programmers endure. They simply forget what it takes to be a human.
They over simplify things. hey seem to think by making one work 8 hours a day produces output of X means making one work 16 hours a day will make one produce an output of 2X. That's nuts. Bosses at the top may have a vision and they think it can be propagated to the entire organization, which ignores the fact that some one may be having some other equivalent and powerful idea and may be voiceless in that company. Another factory mentality is if you have 10 employees and earn Y, then if you have 20 employees you will earn 2Y.
The most common mistake that happens is hastiness. The need to finish something quickly even if it means to take a dirty coding path. All the companies I have been, this one happens. I see the specs and see a beautiful way it could be coded. Then some interference happens in mid coding process, and many times blame will descend upon me and others. Most time its so ironic that we are caught unaware. We respond to one thing that comes from client or management, and the mood changes the other day. Our works become the weapons used against us!
The life of I.T worker is life in vein, unless you have a successful product. To have a successful product is very slim, possibly one in thousand succeed. One in a million become a facebook or google. Even if you do, there are investors who will try to rob you and take your invention away from you.
The result of all these frustration is crappy code. Finish it some how show some, demo it and blah blah. Thats why I think paid software like Microsoft Windows has become so crap due to programmers frustion and free soft like Linux are rising to the top because programmers contribute to it with love.
To all those who are aspiring to be engineers, my advice is don't become one. Today's I.T field is not respectable one. If dog in ones house does not eat a bone it might be taken to a vet. If you (in I.T field tomorrow) don't eat the bone thrown by your company or client, all you will get is lashing and you will be made to swallow it. The field has become like that and it won't change. Never it will.
How I wish to be born as a pet dog (to an owner who will feed me briyani and tandoori chicken).