DEV Community

Cover image for 🎉5 Dev skills that will boost your salary in 2020
Shadid Haque
Shadid Haque

Posted on

🎉5 Dev skills that will boost your salary in 2020

I remember getting a 20% raise in my salary after 3 months of self studying node.js with couple online courses. Self learning is a crucial part of being a software developer.

🤔What skills can optimize your market value as a developer in 2020?

I have curated a list of emerging dev skills based on data insights from StackOverflow developer survey, Indeed and RemoteOk and Linkedin.

1. Amazon Web Services (AWS)

aws

AWS emerged as the most diverse and widely adopted cloud service among many companies. Big, small alike most companies are moving to cloud from on prem. Moreover, many larger organizations are concerned with scaling than ever before. AWS being of the major cloud provider in the space there is a huge demand for developers with AWS skills.

2. React.js

react

React.js has surpassed all the other modern frontend framework in 2019 and it is growing. Backed by Facebook and trusted by some of the industry giants React is becoming the framework that everyone loves. React has a solid community behind it and has introduced some great features like hooks in 2019 that accelerated its popularity. The demand for good react developers will continue to rise in 2020. If you are already familiar with React it would be a good idea to learn some of the other tools in the ecosystem such as GraphQL, SSR etc.

Want to know what's new with javascript in 2020? Check this post out

3. GO

Go

Google’s GO language is gaining popularity. There are tons of remote companies that are actively looking for GO developers in North America and Europe. If you are already proficient with either one of Node.js, Ruby on Rails or PHP (Laravel) you should pickup GO as your second backend language of choice. If you are new to backend development, I would not recommend GO right away. I noticed most of the GO jobs listed are geared towards senior devs so it might not be very practical to learn GO as someone who is just starting out. GO is also very efficient in developing cloud native applications.

4. Redis

redis

If you are thinking of picking up a new database/datastore to learn Redis is the way to go. StackOverflow rates Redis as most loved and rapidly growing technology.

Unlike traditional databases Redis is an in-memory data structure store. Redis is a popular choice among large scale applications and microservices as it can be easily implemented and can be used as a message broker and caching system.

5. Apache Spark

redis

If you are already a full stack developer and looking to wet your feet in the big data field then Apache Spark will be a profitable skill to have. Data gathering and analysis is becoming crucial for many organizations. Thus demands for developers with data skills is also on the rise.

These are my top picks. Would love to hear what you think. Do you agree/disagree? Have I missed something? Let me know in the comment section. Until next time 😀

Top comments (42)

Collapse
 
jmfayard profile image
Jean-Michel 🕵🏻‍♂️ Fayard • Edited

No offense but while there is nothing wrong with learning Go, AWS, ... you forgot the single most important skill to actually boost your salary

==> becoming better at salary negotiation

*Edit: * wow my comment has hit a nerve. As I said I have ideas and a draft post on how to be less naive during the salary negotiation. Connect with me if you are looking for a job currently and want to try those ideas out

dev.to/jmfayard/

Collapse
 
mbougarne profile image
Mourad Bougarne

As a freelancer my biggest weakness is that!

Collapse
 
jmfayard profile image
Jean-Michel 🕵🏻‍♂️ Fayard

I have a draft of a post on salary negotiation but I'm procrastinating on it :)

Thread Thread
 
shadid12 profile image
Shadid Haque

share it :)

Thread Thread
 
mbougarne profile image
Mourad Bougarne

I'll wait your post then.

Thread Thread
 
jmfayard profile image
Jean-Michel 🕵🏻‍♂️ Fayard

Cool!
That would not be soon though.
I feel in this case that I have to practice the ideas I want to share instead of letting the others do all the hard job :)

Collapse
 
ghanshyamkdobariya profile image
Ghanshyam

This weakness is common in Full time employees as well... like me.. :P

It takes a lot time, courage to be pro in salary / compensation negotiation.

Read this blog
medium.com/@bayareabelletrist/i-in...

Collapse
 
leob profile image
leob

Cool list, but including Apache Spark is a bit far fetched IMO ... if your specialty is web dev then I don't really see how it makes sense to spend time on Apache Spark, unless it's for hobby purposes.

Data science is a completely different game from web dev and it's not that trivial to get into it. Employers are not going to pay you a cool salary just because you played a bit with Apache Spark, while you don't know anything about the principles of data science.

People who are able to get good at web dev and at data science are probably an extreme rare species, in virtually all cases you would choose either one or the other to specialze in.

On the other hand, things like Docker and GraphQL would be good to add to this list :-)

Collapse
 
shadid12 profile image
Shadid Haque

Actually that's a good point. I was thinking of adding graphql but then I decided to mention it in the react section. As for big data I totally agree, I was little uncomfortable putting it in there. I feel like having a broad overview of how data science fits in fullstack development is a skill that can go a long way. Then again I'm no expert in data science either. As you said practically one can only be an expert in one of these.

Collapse
 
leob profile image
leob • Edited

Right!

However I fully agree with the other 4 items: AWS, React, Go and Redis ... all 4 are technologies that are definitely in high demand and can be used on many web dev projects.

React is a no-brainer, AWS (cloud) is definitely mainstream, and Redis is pretty ubiquitous.

Go is a bit of a special one because it goes again the trend of "everything Javascript" but I can definitely see that Go has a lot of momentum on the backend.

Thread Thread
 
dannydwarren profile image
Danny Warren

I think Apache Spark and other data streaming techs are a huge deal to web dev. At Pluralsight we are using Spark to read from Kafka and transform the data in real-time to show analytics to our customers. My team's stack was React/C#/Postgres. We're now introducing Spark using the Scala API. We're not doing data science or machine learning. We're still a web dev team, but Spark, combined with Kafaka, is so powerful it is helping us to move faster with more agility. I think it absolutely belongs on this kind of a list.

Thread Thread
 
leob profile image
leob

I can see where you're coming from, but in my book this is still "niche" and only relevant for top 5% websites/apps which need that amount of scalability and data processing. I've never had a use case for this sort of tech for the small to medium scale sites/apps that I'm building.

Thread Thread
 
dannydwarren profile image
Danny Warren

Sure. It may not be in as popular demand as the other techs on the list, but you can definitely increase your salary by learning Apache Spark. From my experience the supply of Spark devs is low so those few who know it have an advantage in the salary negotiation. I just don't want anyone to think "I shouldn't learn Spark because it won't help me increase my marketability." It is not your typical web dev work, as of today, but it could be in the future. :shrug:

Thread Thread
 
leob profile image
leob

Thanks! I'm a self-employed freelance web dev however, so that probably makes my situation slightly different. But maybe it's something that I could utilize in one of my future projects, or add to my resume to attract (more/better) clients.

Then again, there's already a mountain of interesting technologies that I want to look at (at the moment I'm looking at Blockstack and dApps, pretty cool), the problem is there are only 24 hours in a day.

But I'll definitely keep Spark at the back of my mind.

Thread Thread
 
ndy40 profile image
Ndy • Edited

I work in a shop that is heavily php based and we build a lot of reports. Query dB, do some mapping and spew out some bespoke report for different arms of the business. Sometimes the task is so long that we end up writing php logic that becomes difficult and boring to maintain and resource intensive. Apache spark can handle this with a simpler codes. I do hate building complex reports in PHP and the bulk of the task is looping and mapping and reducing.

Thread Thread
 
leob profile image
leob

Well that's interesting, puts a different perspective on things. Apache Spark and Kafka aren't things you hear a lot about and seem to be a bit outside of the mainstream so it's interesting to hear about it.

For a project which I'm currently doing I'll need to implement something like full text search (or at least powerful multidimensional search) but I guess there are other technologies that are more suitable for that than Spark/Kafka.

Collapse
 
kmyokoyama profile image
Kazuki Yokoyama

Yes, I pretty much agree with it. In fact I would replace Spark with Kafka.

Collapse
 
dannydwarren profile image
Danny Warren • Edited

I think Spark, for real-time web dev, needs something like Kafka so starting there is a great idea.

Collapse
 
leob profile image
leob

Apparently (I know next to nothing about it but I'm reading one of the other posters' comments) Spark and Kafka can be used in tandem and have synergies.

Collapse
 
stealthmusic profile image
Jan Wedel • Edited

I was thinking a bit, if „new emerging technology“ equals „salary raise“...

Here are a few meta-thoughts and questions apart from specific items of your list:

  • new technology is used first by newer companies and start-ups that tend to pay less than larger existing companies that stick to know tech stack.
  • Are those technologies really an indicator for high salaries in general?
  • I would not suggest people to learn stuff in their spare time just with the hope of getting more money. It should be the other way around: A company should pay trainings for employees to learn new stuff that is useful.
  • I’ve seen a lot of „emerging technologies“ disappearing after one or two years. So don’t bet all your savings on that
  • apart from that, it is always good to expand knowledge by learning new stuff and starting with one of those technologies mentioned in your article is probably not a bad idea 🤗
Collapse
 
leob profile image
leob

I'd say only learn something if you can somehow apply the knowledge (right now or in the foreseeable future) ... otherwise I'd call it hobby and not a professional investment.

Collapse
 
capellablue profile image
Amanda

You can make the code, but can you communicate how it was built and why it's of value to your whole team?

I think 2020 is the year of separating those who only code and those with the ability to collaborate and code outside the dev team.

Collapse
 
kuuurt profile image
Kurt Renzo Acosta • Edited

Yes, hard skills will show your coding prowess but soft skills like being able to coach and mentor juniors, leading a team, etc. will get you even more. :)

Collapse
 
shadid12 profile image
Shadid Haque

I totally agree.

Collapse
 
notbobutah profile image
Rob Mackay

While i agree salary negotiation skills are critical the biggest most embarrassing technical skill i see lacking in modern developers is the tools they use everyday - in particular linux, bash, vim, simple things. If all you know is a an IDE i am unimpressed. Currently i manage multiple teams.

Collapse
 
jmfayard profile image
Jean-Michel 🕵🏻‍♂️ Fayard

If they manage to solve the problems at hand, why do you care if they are using git from the command-line or from the - honestly much better - interface in the IDE?

Collapse
 
notbobutah profile image
Rob Mackay

Its not about how they use git, the most common deployment platform for the languages you name and the cloud service providers in the suggested list is a linux OS. All of the products I have responsibility for are deployed in Kubernetes using a Docker container built on - you guessed it Linux.

Basically the most common building block across all of the technologies you named is that they run on top of Linux. If you don't understand the underlying platform you are deploying on then when things go wrong and a developer needs to diagnose a problem they will be incapable to do so without that basic knowledge.

It is truly like anything in life, if you don't understand the basics then your higher level skills are crippled which makes you worth less in the marketplace. In any job interview I give I ask about basic commands, if the dev doesn't know them they don't get the job.

Thread Thread
 
jmfayard profile image
Jean-Michel 🕵🏻‍♂️ Fayard

If they are not curious about or able to learn those things, I would no thire them either.
On the other hand, truth to be told, nobody can know the basics of everything, there are certainly basic things I don't know myself as for 2020.
It's actually a success of good computer science when most people don't have to understand how things works behind the scenes, it means we manage to invent an abstraction that is not leaky.

See Conceptual compression means beginners don’t need to know SQL — hallelujah!

Collapse
 
jwp profile image
John Peters

Love your list except Apache Spark, which; I'd substitute ASP.NET core.

Collapse
 
shadid12 profile image
Shadid Haque

Thanks..and I agree maybe shouldn't have put spark now that I think of it lol. ASP.NET is an emerging beast however. I am currently learning it and I can see some disruptive things coming from Microsoft (blazor, azure .net cloud functions to name a few). Good point, I will probably write another piece about these. But definitely agree having ASP.NET core makes you a very desirable developer in the enterprise world

Collapse
 
jwp profile image
John Peters • Edited

ASP.NET has been around for about 20 years. ASP.NET Core, its sucessor is currently on release 3.0. It brings ASP.NET to all platforms. It's currently clocking in as the fastest backend on market.

Other than Typescript and Github, ASP.NET Core is MSFT's power player for backend. They've spent huge budgets to get where they are now. I don't see it fading any time soon as the only competitor will be Node based servers. But Node may not yet be fully CPU agnostic like C#. That alone is why ASP.NET Core is a great choice.

The cons are it is not an Isomorphic Javascript solution. This is where Node shines. Some folks are saying node now has ability to use all cores on its single thread design. This will be a game changer.

Collapse
 
arpymastro profile image
Arpan

How about Azure, Angular?

Collapse
 
abmsourav profile image
Keramot UL Islam

Machine Learning, AI also comes in this list.

Collapse
 
leob profile image
leob

You should then make 2 separate lists, one list for web dev technologies and a second list for data science, AI and ML ... the overlap between these two areas (people who can do both) is close to zero.

Collapse
 
abmsourav profile image
Keramot UL Islam

I appreciate your opinion. But I really don't understand, why people treat Data Science differently...
Nowadays Data Science is everywhere. For example, if someone has an E-commerce site, they can trained a module based on existing data and make some predictions for his business strategy.

Now, Data Science has two parts,
1) Research -- Only for Data Scientist.
2) Coding staff -- web developers can do it easily.

Thread Thread
 
leob profile image
leob

Right, I see your point - if you leave the research (the conceptual "thinking") to a proper data scientist, then writing the code can probably be done by a developer versed in Python or whatever language is required. But in that case I wonder how much real "data science" is needed at all by the dev, it's a matter of coding what the data scientist cooks up.

Collapse
 
imhotep111 profile image
Dr Imhotep AlBasiel

Your analysis of AWS was really good because I'm in the Bay area and I talked to a recruiter not too long ago and they don't even care if you can code but if you have any WS you just fit into so many places I would see it's better if you can but there's just a lot of support work out there with AWS managing other people's code bases so I'm trying to like really lock that down in the next month to two months