was giving some interviews to get to another company. reason being dint find the current atmosphere challenging anymore,secondly wanted to move to a j2ee dev. environment. have around 1.5 years in a core java domain. know what I found out.. that in 1.5 years I have learnt absolutely nothing. All that I have done is work hard on the projects I was assigned to, in terms of preparing high-low level documents, gathering system understanding, coding (mainly drawing from code here and there) to create results fast. Result was although I am very applauded in my org. when I come to the external market, I have no value coz my skill sets are nil. In 1.5 years I cannot even say I know core java fully. all I have read is the four chapters in Core Java vol I: Objects, Inheritance, Interfaces and Exceptions. Amd the rest I have just managed from seeing code here and there. Like for streams, there is a particular code which I uses it, so I just copied from there. All to deliver the results as fast as possible. But the trade off has proved to be costly. I dont know anything about algorithsm/networking/data structures/j2ee which seems to be the pet areas i.views are based on. Given two till date. Failed both. Looks like that working for the company was stupid. Should have instead concentrated on my skill sets coz one day i would have to leave the company and then only the skill will matter. I have people of 3-5 years ex. in my company who were on my teams for my prev projects and I have proved to be 3-4 times more productive as them. And yet they know j2ee, c, c++, and have impressive skill sets. So why do companies just go only for the skill sets. Dont they realize that all these can be picked up.And it is not only the skill sets that determine productivity. And inspite of being better than them when put in alive project, by better I mean, more receptive to changes, quicker at understanding the system (code and general funct.) and faster at coding. I can cut copy paste very fast, the relevant fragments!Yet when we go out into the market, they get better offers than me coz of their skill sets.
I have become a little disillusioned by all this. It seems all that matters is just enhancing your skill sets to get to better and more complex/challenging projects. But how do you draw the line. I mean it's all code. I can't differentiate between code that's useful for me and code that's a waste of time. I love code, true I do and so I cant just leave my office code and do some other coz that will get me the next offer. I must be sounding confused and contradictory but thats the way my mind is spinning right now. Thanks for reading and apologies for bothering, Ali
A Professional is one who can work best when he doesn't feel like it!
In 1.5 years you must have been exposed to many different facets of java. Yet you say that a lot of time you have taken code from other sources in order to get the results faster. What you need to learn is that employers and managers always want results as fast as possible, but more importantly, managers want their coders to be learning as they go. Copy pasting is all well and good but unless you are going through the code and understanding every line, you will be wasting your time and eventually your managers time. What happens when you are asked to code something that you can't find on the internet?
You also say that you proved to be more productive than other workers. You may have been more productive, but you were not learning anything if you were just copy pasting. Managers want results, but managers want their workers to be learning and not copy pasting. So you may have been your managers favorite employee, but how do you gain from that? You need to develop a learning attitude in any work environment rather than a result based attitude. This way you will find that your skill set will develop with every project that you undertake.
I am a manager and I am involved in hiring people. We hire people based on attitude. They must have a learning attitude because there is always something that they will not know, no matter how experienced. But we also hire based on skill set. The week or two weeks that it takes someone to have a basic understanding of a fundamental skill is simply too long in our business.
My advice to you is that you need to start learning in your work environment. By all means, look for code on the internet, but make sure that you understand every line of code. Ask your manager for more challenging projects so that you can keep learning. It will be frustrating from time to time, but you will have the advantage of your skill set at the end of this job.