What is the best career advice for a software developer to earn higher total compensation?

Here's a few things I think are important.

Switch companies, but not too often. Try to move after getting a promotion or finishing a project. It shows you complete things, and you get rewarded for your efforts. But you do need to switch companies to maximize compensation. Otherwise you're paid what it takes to keep you, not what it would take to acquire you (which is generally higher).

Don't quit your job before you have a new one. Your existing position and compensation let you negotiate from a position of strength, and look more desirable in a candidate.

Interview with at least two companies when moving. Ideally you want offers from both companies, and for each to be aware you're interviewing elsewhere. You'll get a better initial offer, and they'll be more willing to negotiate.


Be good at your job, and get results. You want people to know you as 'that guy who always makes progress and gets things done.' That's the sort of person who gets recommended when someone who knows you moves and is asked "who else should we be recruiting?"


Network. Networking gets you presented with opportunities you wouldn't have otherwise. It won't usually get you a job you don't deserve, but it WILL move you to the front of the line for being evaluated. You don't have to be a social butterfly, just take the time to get to know the people you work with, be helpful, and learn about what they're doing - which are all good things to do anyways.


Be willing to relocate. If you want to follow the almighty dollar, you may need to do some moving around for the best opportunity in each case.


Don't forget to enjoy your career and your life while you're doing this.


----------------------------------------------------------------------------------------------------

1) Increasing skill sets alone is of little use if you cannot market them. Market your skill sets. Two things to keep in mind here:

 a) Invest in skill sets that will pay. No use learning something just because you like it. Learn something for which companies are willing to pay top dollar.

b) Certifications - Get certified in things for which there will be a long-term demand. Not many developers do this. Build a diverse portfolio here. Just don't do all your certifications in Java for example.  Something like Scrum, Salesforce, and AWS is a good mix.

2) Look at your colleagues who are 10+ years older than you and ask yourself if you want to be doing the same stuff they are doing today. If the answer is no, find out what you need to do differently so as not to land in the same position as theirs ten years from now.


3) Read, Read, Read: Readers are Leaders / Leaders are Readers.

 4) Confidence:  This was something I lacked a few years ago, mainly because of my own technical shortcomings. After having followed steps 1 through 3 above, over the years I seem to have (unconsciously) developed a sense 'dont give a crap' about my job security.
Don't get me wrong. I try to have the humblest attitude at work. But i think when you lose the fear of losing and know that the world's your oyster, people will respect that.
I politely declined their initial offer at first. But they liked me so much they went out of their way to finally give me more than what i asked for. Lesson learnt - a humble attitude combined with  no sense of fear of losing can be a lethal (and a very rewarding) combination.

Source: Google.com

No comments:

Post a Comment