Is it possible to get a $1.2 million salary as a developer?
It is certainly unusual but not unheard of. Take the case of Sergey Aleynikov for example.
Sergey was a developer for Goldman Sachs who was paid $400K salary way back in 2007. He got a threefold raise (around $1.2 million per year) at competing trading firm Teza Technologies in 2009, which made him one of the highest-paid developers in the country. Goldman Sachs was not happy with the move and they accused him of stealing Intellectual Property/source code.
He was prosecuted and jailed at least twice by Feds and state governments but was finally acquitted, after enduring a good amount of jail time and humiliation, and losing everything he had in the process. Again, his legal case itself makes very interesting reading, but his salary history makes one of the most unusual fairytale dreams runs, in annals of software development.
In the words of Michael Lewis who wrote an article about Sergey Aleynikov for Vanity Fair, “He was not just smart but seriously gifted.”
Ok. You might argue here.
“Less than 10% of developers make that kind of money”
“The guy got plain lucky”
No. This is not about luck. Luck as a statistical probability happens to everyone in time at some point or the other. The key is to use that luck and maximize it.
Most of the people who earn higher salaries maximize the opportunity available and make the best use of it. If less than 10% of developers are earning that kind of money, it only means that they are doing something different every day that makes them better than others. And that does not certainly mean, you should not aim that high! Simple as that.
And here are some things, which can be done to increase your salary as a hands-on developer.
Become a generalist — and a specialist
The rule of thumb is to be a generalist in your current technology and then specialize in one or two emerging technologies.
For example, if you are working as an SAP ABAP developer, you need to delve into the complete range of functionalities starting from reports, exits, smart forms, adobe forms, and workflows. This will establish your credentials and enable you to sell yourself as a general problem solver; a handyman for anything and everything.
On the other hand, specializing in one or two emerging technologies will pay you handsomely in the long run and you can reap “early mover” benefits of being one of the few professionals available in that area.
For example, if you are an ABAP developer, you earn in general somewhere between 90,000–110,000 USD per year. But if you also specialize in HANA or Fiori, additionally, you can command up to $214,500 per year. This will make you a hot and invaluable asset to have for any employer.
Remember the key is to stand apart from the crowd and bring that “extra” bit to the table. Once you do that, the sky is the limit.
Work as a contractor or consultant
As a contractor, you need to make more than 60–100% more to replicate the total compensation of a full-time salary.
That said, you would make a lot of money as a contractor if you can demonstrate your value proposition, niche skills, and efficiency. In America, compensation is generally based around a standard 40-hour workweek. Therefore, if you are willing to work 60 hours a week, you will make 50% more than someone earning the same rate based on a 40-hour workweek will. And adding to that you have the freedom to make your own decisions, clients of your choosing, and work remotely as required.
However, there are flipsides. Contractors seldom get any of the important benefits, including paid time off, health care, tuition reimbursement, ongoing educational training, short-term disability, long-term disability, life insurance, worker’s compensation, and sabbatical time. And in the times of blame game or project downsizing, you become the fall guy first.
Remember, with the greater risks come potentially bigger rewards. If you are comfortable with the uncertainty, big bucks are not far off.
Cultivate Your Connections
Most developers just focus on learning and developing their skills assuming that once they become experts, their skills will speak for them. They cannot be more wrong.
In the real world, connections and contacts play a very important role especially when you are aiming for your next big break. Connect with your peer developers, contractors, and even your past organization’s teams to be part of the grapevine. Connect with coding groups online. Cultivate a weekend coding buddy for programming in pairs.
Take part in codeathons. They’re a fun and exciting way to get to know tech people who share your interests, help tackle relevant problems, test your coding skills, and maybe win prizes!. Local discussion groups in your city can also make you aware of various programming events/discussions happening within your city.
Foray online and answer questions on Stack Overflow, comment on Medium blogs, Twitter threads related to development, or help out on the WordPress.org forum. Whether you meet in person or on the Internet, you will be expanding your horizons and getting to know people who can turn out to be your future co-workers or superiors at those dream developer jobs. The possibilities are endless for you to display your skills and inform people that you have arrived!
Remember you are competing against a multitude. There are probably a dozen other developers approaching the same employer for the same job. You need to stand out by broadening your network for success.
Lastly, be a Versatilist
“Versatilist” is a good description of the professional needs expected in today’s world.
The term “Versatilist” was first coined in an article from Gartner (Gartner, Inc. Technology Consultants & Research Group) where it states: “Versatilists are able to apply a depth of skill to progressively widening the scope of situations and experiences, equally at ease with technical issues as with business strategy.”
OK.you might ask here.
“What can I do as a developer? I only know to code.”
The short and simple answer is to do more than what is expected from you and then ask the company to be compensated for it. Remember your current salary is a reflection of the skills the company is aware of at a point in time. But if you want to earn more than the current salary, you need to do more than what is expected of you. Any company is in the business of generating revenue. So if your additional activities bring them additional revenue, there is no shame in asking what you truly deserve.
Some things you can do can be.
· Manage more projects (more revenue)
· Fix more bugs holistically by giving permanent fixes(cycle time reduction)
· Train new team members (productivity increase)
· Take part in identifying automation opportunities to reduce the cost of operations.
· Take part in organization-level internal initiatives ( build reusability across projects)
The list is just a starter to whet your appetite. There is a lot more you can do and think of to improve your value for your organization. Remember to survive the future we have to learn more, evolve more, do more, give more, be more to have more…..we must be versatile and willing to go beyond our comfort zones.
Keep track of the ways you grow and add value. Keep track of your salary increases with the frequency. When your salary lags behind your expectations, investigate the reasons, implement the corrective actions, and do whatever it takes to realize your maximum potential. Do that consistently, and you will make a lot more money over your career.
As Bill Gates has rightly said.
“If you are born poor it’s not your mistake, but if you die poor it’s your mistake”
Ravi Shankar Rajan is an information technology program director working in Mumbai, India. He writes on a variety of subjects ranging from programming, leadership, creativity, and even dabbles a bit in poetry. Connect with Ravi on LinkedIn and Twitter. Subscribe to his blog “The Perfect Programmer” for the latest articles on programming, creativity, and much more…...