Thursday, April 22, 2010

Birthday morning



From Shlok's First Birthday - Home

Tuesday, April 06, 2010

The greatest pleasure in life is doing what others say you can't

I have been waiting for almost two years to write this blog post. The reason being for the past two years I have been working on a software project at Netapp, which most people thought was a foolish thing to pursue however it got completed today (I cannot reveal the details of the project for obvious reasons).

It all began three years ago (2007), when I had delivered two successful projects in a single release. At that time I was confident than ever and came about with the idea of this "foolish" project. I remember giving a presentation about the "foolish" project and bragging about it making into the same release that had my previous two projects. I was super certain that nothing could stop me from implementing this project. I went about designing and implementing the project and after fighting some tough battles was able to finish it in about 6 months by mid of 2007. I was feeling great about myself. However the worse followed as people started using the feature I had developed. It failed miserably and caused lots of pain especially since it started blocking the work of the other teams. My changes were about to put the whole product at risk and that is when sanity kicked it and we had to back out all of my changes towards the end of the year.

This failure was one of most embarrassing periods of my life. It was difficult facing the reality that I could fail, as I had never failed before. Also the worst thing was my manager (at that time) had taken a huge risk along with me and I had let him down. It was extremely tough sucking my ego and accepting failure. But in the end I did.

After the fiasco, I was almost about to give up on the idea when my manager came up to me and offered me a second chance. Second chances are extremely rare in life but I was fortunate (have always been) to get one. However this time I decided to slow down and not rush with the whole thing. I also tagged along with a senior engineer who was simply super brilliant. I had to do lots of soul searching after the failure and I did that by reading lots of books about the techniques of crafting a high quality software. Reading the books, practicing and working with my collegue I realised how naive I was. I started acknowledging my short comings and started consciously working on them. It was lots of hard work but when I look back now it was all worth it.

Since I had failed the first time implementing the project everyone was really skeptical about our second try. The battles we had to fight, the investigations, the measurements that we had to conduct, were ten times harder than before. However we stood strong and weathered all the storm. The first victory was getting our design accepted and we succeeded at it after presenting it to some of the senior most engineers at Netapp located at different geographies around the world. However once that was done my collegue had to leave our tag team and I was by myself once again. The next challenge was driving the implementation. This involved lots of coding, sleepless nights debugging, conducting inspections, reviews, no weekends. Everyday during the implementation phase I use to find a new problem however the thought of me getting a second chance kept me motivated to fix everything that stood in my way. I kept on going until finally when I have merged in my changes today.

Truly this has been one of the most exciting journeys that I have had as far as my profession goes. I can only hope I am faced with similar challenges again in the future. However I have learned some really important life lessons on the way and would like to share

* Opportunities are not given, you need to create or grab one for your self. True success lies in not doing what everyone else does but in doing what no one else wants to do.
* Failure is the biggest stepping stone for success. If you don't fail that means you aren't pushing hard enough in life. It is worth failing 99 times inorder to succeed once.
* When you fail, you just need to grab yourself up and move on. (This is applicable in relationships as well)
* Keep your skepticism in check, we tend to be more skeptical as we grow old. Too much skepticism is the surest way of killing new ideas and innovations.
* You need to keep on updating your knowledge. The day you stop learning anything new you are as good as dead.
* You live only once and hence it is important you do what you really like and are passionate about (Even today writing good software gives me the same happiness as writing my first C program)
* At the end of the day, career, money, success and fame do not matter if you don't have a happy family to come back to. For home is the place where your heart truly is.

Labels: ,