Thursday, August 27, 2009

Completed three years in this industry..

YES. This month i will be completing three years in this industry.

I can still remember my first day in mindtree. I was completely clueless about the work that i am supposed to do in mindtree. I always used to wonder about the work that we need to do, to get such a nice pay ( Yes three years back I was in a illusion that Mindtree is giving me a nice package). Then in first week I figured it out that we have to do coding and I did not knew any computer languages. I just knew C in bits and pieces which i studied in my first Sem. Most of other people who joined mindtree with me were like experts in multiple languages. That's when I realized that I am neither fit for this industry, nor well prepared enough to work in a company. May be my mentor figured it out that i will never be able to learn anything other than C(Even after three years i know only one language - C ). So after two months of C training and some good C results I landed in Mindtree Bluetooth Research team.

First couple of months was horrible and I used to get some nice scolding. All my variable names will be like a,b,c...z and I used to have all magic numbers in my code. Then my PM asked me to stop coding. He wanted me to go through the code of some already implemented application for a week. Then i came to know that coding in a certain style is as important as making sure that there are no bugs. At that time i wanted to be a expert in bluetooth. But soon i realized that its a dying technology( And we were not able to market our BT IP as well..).

After getting a release from BT, I got a chance to work in USB driver. Project was to port whole USB from Linux to Nucleus RTOS ( I know thats illegal to port code from a open source, but we were doing that to build expertise in both USB and Nucleus RTOS). As soon as that project got over I knew it was time for a jump. By that time I was pretty comfortable with embedded systems and had worked with 3 processors and had knowledge of both bluetooth and USB. I had also designed and implemented bootloader for couple of boards in ARM.

Things I have gained in Mindtree :
1. Most ideal company to start off my career.
2. Mindtree is the company which gave a direction to my career and made me a embedded engineer. Thanks to my mentor who thought that i cannot do programming in any language, other than C.
3. Company culture is one of the best in industry and got a chance to learn more about industry.
4. Mindtree went public and gave me a chance to make some money as well.
5. Got a chance to learn two important technologies there, Blue tooth and USB.
6. Met some wonderful people in form of my mentors, colleagues and project managers.
7. Got to see some nice, good looking and cute girls everyday :)

Things i have lost in Mindtree:
1. Mindtree is like government company. People don't have that spark and commitment to excel.
2. I am a very complacent and lazy guy. Mindtree ideology made me more complacent and lazy.
3. Pay Sucks.

With time, I was becoming more and more complacent and desperate in mindtree. Then came to know that symphony is looking for a embedded guy who has some experience in USB and Bootloader. They selected me in just one round of interview. Two days after that some bank in USA went bankrupt, marking the beginning of recession and all companies including symphony stopped hiring.

In last eight months, i have learned more things in Symphony than what i have learned in two years in mindtree. Even though the project was small ( It was a bar code scanner that we see in all shopping malls), it was like working from scratch. Developing something from end to end. Starting from requirements, design and implementation. Best part of the project is that there were only three people to do this and it was mandatory for all three people to know and understand each and every module.

I feel kind of weird to call myself a software engineer, because i never implemented application that runs on a actual system (apart from some modifications in USB driver code in Windows). May be I can be called as a firmware engineer or semi hardware engineer. Most of the code that I have developed are running on small embedded devices.

Things I have gained from this industry in three years..

1. Satisfaction in work. I never thought much about my career. Its just that things came up and I accepted all of them. Today i am very glad with whatever i am doing. Life is like a running stream. Sometimes its better not to struggle much and just flow with the stream.

2. Financial stability. Not need to think much while spending. You always feel good when you know that there is some money in your pocket.

3. Five days a week. So lot of time to do things which i love the most. Like traveling, reading, eating and sleeping ( playing cricket some times..). Best part of my career is that i had never been to office on weekends.

The only bad thing about being a embedded engineer is that there is no on site opportunities. The best on site I might get in my career is either a week in korea for requirement gathering or a week in Singapore for customer demo. But anyhow on site is not in my priority list. So i can do without that.

Sad part is that In last three years i have lost lot of hair and gained lot of weight because of this industry.

Nitin

No comments: