Saturday 29 March 2014

What I learned being in software industry since 6 years

1. College education is different from working in a software company. You may have been a hero in academics but you may not be necessarily good in a company.

2. If software development is your passion and you are quite emotional about it then do not join the likes of Infosys, TCS, IBM, Accenture or any of those service companies. These places are not for developers. They are for IT professionals as the media calls them.

3. The most important subject that you might help you in software developmet in industry is not C, C++ or java but it is a basic understanding of operating system concepts.

4. If you think you will be writing new algorithm in the industry then you might not get that even in google or facebook.

5. Joining a startup is not as risky as it is considered if you have managed to stay or your startup managed to live for atleast 1.5 years.

6. One of the most important tool in software development is notepad, textpad etc which can allow you to search a piece of code in huge codebase.

7. Common sense is the important skill that would help you do good job in the company.

8. You don't need to be a TopCoder to survive in the best of the industry(likes of google, facebook etc) or a outstanding tech startup. You might need to be a top coder to just clear their interview.

9. Asking tricky programming questions in an interview(started by google, amazon etc) to judge a candidate is the crappiest way to hire but then this is how a tech interview is conducted in the best of the organisations.

10.If you think ,you can keep raising your salary by switching companies every 2 years then you are wrong. You can raise your salary only if you are underpaid and switch to the next league of paymaster companies.

11. 90% of your time in software development goes into investigation and googling while you put 10% into actual code.

12. You can never be a true software architect unless you have worked on non functional requirements like performance, scalablity, reliability aspects etc.

13. If you think being a CS graduate from an IIT would make any difference once you are recruited the let me tell you that your company doesn't give a shit about it.

14. A software company would never consider your interest in assigning a work to you. They just give you what they have.

15. Being a software developer is far more satisfying than being a pseudo researcher in any of those IBM, GE, Siemens etc. However if you are truly inclined in research then go for higher studies and join top universities.

.................and the gyan continues.......................