How to become a successful software professional

Sheonarayan
Posted by in Others category on for Beginner level | Points: 250 | Views : 18101 red flag
Rating: 4.86 out of 5  
 7 vote(s)

In this article, I am going to write my thought about how to become a successful software professional.
Recommendation
Read How to start your software career? before this article.

Introduction


Till few years back (and even now?), software industry was one of the most lucrative industry to get job in and in general software professionals were getting more respect, money and value in the society than other industry professionals. However, recent down turn in the economy has changed this a bit but not completely. Still software professionals are rocking wherever they are and flourishing in their career and life. 

Objective


As I am also a software professional and have served this industry for more than 10 years, I am going to write down my thought on how to become a good software professional.

What is the success mantra to become a software professional?


Nothing !
 Just be a good human being and behave naturally ;)

Yes, I felt so. Before we go into in-depth analysis of how, what and why etc. Lets understand what is expected from a software professional in the company. Any employer expect their employees to be knowledgeable, loyal, attentive and smart so that they get most out of you. If you have all these, probably you will be the last person to get fired from the company even in the absurd situation.

Knowledge


Knowledge comes by reading or by experiencing. Unfortunately, its not a tablet that someone will give you and you drink with water and you are knowledgeable :). So start reading, read as much as you can. Whatever you are reading, practice them. Practice them really hard (no copy-paste, write the code with your own hand). Without practice, no one can remember what they have learnt. Even parrot practices what is told to keep it telling every time.

Google is my friend, isn't it?
Many folks can argue that with the help of google you can do everything, no need to remember or practice. Its funny and not true. Remember that google gives you search result based on the keyword you enter. To write keywords google understand, you should be knowing about what exactly your problem is. Even to understand what problem you are facing you should have knowledge about it. Otherwise, you are looking for Apple and Banana will come and you will keep hitting your head on the monitor to look for Apple. 

Remember the quote "God helps those who help themselves". So you consider Google as God, it will only help you when you help yourself (have certain level of knowledge about the subject and the problem). Even if you have found the solution in Google, you will face really tough time implementing it in your project if you do not have knowledge about the subject. As every application is unique and exact code that suits your application is near to impossible to get by googling. So keep reading, practising and sharing. 

I do not like reading, what should I do?
Look for other industry jobs! Software industry is not for you. Go and do farming or go to any other industry but I can bet you will not be happy there also. The world is changing so fast that every industry is changing. "Change is the only constant", it will keep happenoi.

In case you are happy thinking that you have now chosen a job where you do not have the headache you had in the software industry, you are wrong. Just after spending couple of months or years there you will come to know. Grass looks always greener the other side of the mountain but it is actually not. So feel fortunate that you are in the software industry and you have an opportunity to learn and implement. There are hundreds looking for the same or even less attractive opportunity that is in your hand right now.

How to read?
Get admitted in LKG :). Simply start one by one. Do not get deviated or shocked by seeing technologies popping in every day. Just take one subject at a time and give full respect to that subject by spending enough time. 

Technologies will keep coming, as the requirements are keep changing. Technologies have to be at par of the fast changing requirement so new technologies will come, newer versions will come. Just be on it and slowly keep enhancing your knowledge on the technology you like. You do not need to be master of all but you should be ready to learn what is required.

Why new version of the same software or technology comes every now and then?
I already explained above but if you are not satisfied with that, here is one more way to understand this.

Lets assume that 3 months back version 4 of the X framework was released and now 3 months after version 4.5 is being released. So what's wrong in it after all the developer of X framework have to keep working after releasing version 4 otherwise company will put them on bench and after few months throw them out. So to save their job, they have to keep inventing different ways to get the work done so they keep releasing X4 then X4.5, X4.5.1 and so on. In this way company thinks that something good is coming every day and their developer are working really hard. Also company has to pay to the employees and for other expenses so unless new version comes with some dependency, client will not buy it again and company will not met the expenses. So its a complete chain and its good for us :D Ha Ha Ha.

I do not like the work I am doing in my company, what should I do?
Resign and if you can, resign right now. There can be two scenarios here

Scenario 1: You have just joined the job as fresher and you do not like this kind of work. Then simply get out of it. Look for different type of job that you will enjoy doing. Do not think about what your parents, your society, your relatives will think and whether you will get enough do*ry or not. Ultimately you have to work/face and no body else will come for the rescue (permanently). If you enjoy the work you do in the job then its not a job, its a fun doing so you can do it with 100% concentration and dedication and in this way success is evident.

Scenario 2: You are keep doing the same kind of job for last several years and its no more exciting now. Then look for a change. Ask your manager/lead about this clearly, he is not a robot and he may understand you and put you at right place. If he doesn't, its your fault that you were working with a robot and you even didn't realize it. Look for a change in other companies. There is no lack of opportunities for good candidates. There are many companies who are looking for suitable candidates but they are not finding.

Loyal


No body like non loyal person or company. Even you do not want to join a company who doesn't understand your real problem, give you enough respect and wish for your success. Loyalty doesn't mean harming yourself for the benefit of the company. For me loyalty means not cheating to the company by any means. Working hard on the work assigned to you and finish it on time. In simple terms understand it like "Give your 100% for the work assigned to you". Do not look a way out to escape from the work assigned. Remember, there is no short cut of hard, and now smart work. 

Attentiveness


Attentiveness to me in this case is to know about the company, the work that is assigned and mould ourselves accordingly. Be flexible on the time you spend for the work, be flexible with the type of work you do. The end result should be to get the work done. Do not pull or push legs or blame others.

Smart work


Do not misunderstand the word "Smart work". Few thinks smart work is like a cheating (somehow get the work done). Its not! To be smart, you first have to be knowledgeable, attentive and aware about what's happening around and do the work in the best possible way. Remember, "There is no benefit if its a temporary benefit". Look for permanent solution and permanent benefit to the application, client or the company.

Conclusion

All above points I have described are simple to follow and I feel these help in getting success in the software industry. To be successful, you do not necessarily need to do complicated stuff. 

If this article help even a single person to be better in their software career, I would feel fortunate.

Thanks for reading, if you liked this article do share with your friends and colleagues by clicking on the social icons below. To read my previous articles, click here.

Disclaimer: The opinion/views expressed here is my personal, it may or may not be correct. Please feel free to respond to this article for any comment or suggestions.
Recommendation
Read 10 enemies of being a good programmer after this article.
Page copy protected against web site content infringement by Copyscape

About the Author

Sheonarayan
Full Name: Sheo Narayan
Member Level: HonoraryPlatinum
Member Status: Administrator
Member Since: 7/8/2008 6:32:14 PM
Country: India
Regards, Sheo Narayan http://www.dotnetfunda.com

Ex-Microsoft MVP, Author, Writer, Mentor & architecting applications since year 2001. Connect me on http://www.facebook.com/sheo.narayan | https://twitter.com/sheonarayan | http://www.linkedin.com/in/sheonarayan

Login to vote for this post.

Comments or Responses

Posted by: Ermahesh2009 on: 2/11/2014 | Points: 25
Awesome thanks for guide me
It will very helpful for me . Keep posting such a wonderful articles.
Posted by: Akiii on: 3/3/2014 | Points: 25
Wonderful article sir.....and very true indeed !

Regards,
Akiii
Posted by: Sheonarayan on: 3/7/2014 | Points: 25
Thanks Akiii and Ermahesh. Do refer this article to your friend and colleague. I am committed to make all of you successful.
Posted by: Argeraju on: 4/26/2014 | Points: 25
awesome.......good job....keep posting this kind of articles
Posted by: Meetguru123 on: 5/13/2014 | Points: 25
good article boass thank you
Posted by: Sheonarayan on: 5/13/2014 | Points: 25
Thanks @Argeraju and @Meetguru123. Do share this article to your friends or colleagues.

Posted by: Vivek.Ramapuram on: 8/30/2014 | Points: 25
Good article Sir Good encouragement Sir
.... This article is very helpful for the people who are thinking in negative minded towards software that we cant grow in software .... They can get some postive thoughts and encouragement by themselves by reading this kind of a good articles ..... Keep Posting this kind of articles sir

Posted by: Dkdinesh172 on: 2/6/2016 | Points: 25
Thanks sir, for such a great lesson!!
Posted by: Bhuvanesh6 on: 7/31/2016 | Points: 25
Is that mandate to take up external certifications for proving that I am strong technically?
Posted by: Sheonarayan on: 7/31/2016 | Points: 25
@Bhuvanesh6,

It is not mandatory to take external certification however sometimes it gives a push in your resume. At the end only knowledge and real time experience counts.

(I would suggest not to buy the certificate but really learn, appear and pass the exam).

Thanks

Posted by: Aptroninnoida on: 5/11/2019 | Points: 25
Well to be honest the steps are very simple:
1. Acquire a proper degree
2. Learn to code in few programming languages
3. Create your resume/CV showing your skill
4. Forward your CV to all companies with openings
5. Sit for aptitude tests.
6. If cleared above technical interview round
7. If all goes well and you join the company
8. Undergo training process in the technology the company wants you to work
9. Qualify in the tests they have.
10. If they have a project in hand for you, then Voila! You are a software engineer.
11. Seems pretty easy.
I think above mentioned are a norm practiced usually by most people as well as companies alike when hiring.
For More Details follow us on-http://aptronnoida.in/best-.net-training-in-noida.html
Posted by: Vinket on: 8/3/2019 | Points: 25
The article is written in a very amazing manner.I was searching information about training institute in noida and somehow came across this article.The information you have provided forced me to do a comment on this amazing piece of article.Thanks again.https://kvch.in/best-dot-net-training-noida.html

Login to post response

Comment using Facebook(Author doesn't get notification)