Its been nearly a year at Thoughworks and in this period I had improved a lot, as a person and as a developer, on the other hand my confidence level also got a hit and had been cut down by few meters (which signifies that it has to be improved)… So I thought I could take a step back and look at the things which I had observed and these takeaways could be useful to someone as it would be to me always,
NEWS - I have seen people committed to the core to their work and retaining the commitment till the end of the project is not an easy task. Being aware of things happening in the project is the basic need of it. Be it the way something is getting deployed or some functionality change that is going to happen or architecture decision, release date. Anything it could be .. Being aware of things happening in the project improves the confidence to go to work next day, makes you an active participant in the tech discussions instead of passive listener, gives you the feeling that you are an important person in the project and that feeling is THE core for commitment.
Speakout loud - I had spent lot of time wasting by taking the longest route to fix that problem at hand. If i try to explain that fix to the next person sitting to me, then within mins I would realise that there is an efficient and proper way to fix the things. I had lot of such moments that when I try to explain it to QA, BA or my pair, suddenly i would get a better way to do or they would pin point the problem with that approach, which is very valuable compared to the time spent taking the longest route and finding it at the last that i had gone no where.
Selfishness - Mostly everyone is selfish and if they are not then they can t sustain. Thats the truth. But what they are selfish about varies. I have seen people who are pride about their work, in future people want to say that this was developed by this guy and that is selfishness. When people got stuck somewhere he would go and figure out the issue coz there is something to learn there and it is selfishness. People would write blog, talk about technology, showcase their pet project and create a brand for themselves. That is selfishness.
Grow up - I feel matching problem with the solution is the most difficult part compared to using the technology or language or framework, coz there are lot of tutorials and blogs available for it and we just need to spend sometime with it. Or in other words, Trying to know the reason behind why it was done in that way is the key thing and not how to do it. Growth and experience comes by knowing about the rationale for the solution. I think its not rude to ask why it was done in that way, but its definitely stupid to do something without knowing why it was done in that way.
These are just my observations and all these things are intrinstic and am just speaking out loud, so that someone can pinpoint things which can be improved.