Good to Great — How to become a top 5% developer in 2021!

Maximilian Zachow
5 min readDec 17, 2020

A few months ago already, Stack Overflow published the data of their developer survey 2020. First, I was hesitant to have a look at it myself, because the survey was conducted right before Covid-19 took over. But since I am going to graduate at the end of 2021, I wanted to see if I can already extract some guidelines for my professional career.

So what does a poor student in my position do? Right, I wanted to find out who the people are that make the most money in their respective countries. In the following I will explain my approach and the main developer profiles I extracted with the clustering algorithm of Graphext.

Project view of Graphext

I. DATA PREPARATION

  1. The Stack Overflow dataset holds the answers of ~60,000 respondents. 34,756 of those have provided information about their income.
  2. We then compute for each country individually the 95 percentile of the reported annual compensations. In their reported country of residence, 1,864 respondents lay above that threshold.
  3. Finally, we remove respondents from countries with less than 20 respondents overall. Otherwise, we cannot assure that the respondent’s salary is high compared to their compatriots. Our final dataset now holds the survey answers of 1,260 respondents. THE TOP 5%!

II. CLUSTERING

The median income of our top 5% is 908,000 USD per year and the median age is 32 years. Since we most likely can neither change our degrees anymore nor time travel and start practicing coding earlier, I decided to focus the analysis on the following 8 out of 61 total questions:

  1. What is your highest level of formal education?
  2. In which country do you live?
  3. How satisfied are you with your current job?
  4. Approximately how many people are employed by the company or organization you currently work for?
  5. How often do you work overtime or beyond the formal time expectation of your job?
  6. Imagine that you are deciding between two job offers with the same compensation, benefits, and location. Of the following factors, which 3 are MOST important to you?
  7. In general, what drives you to look for a new job?
  8. How frequently do you learn a new language or framework?

III. MAIN PROFILES

I will now introduce 4 out of the 9 clusters that Graphext has computed. At the end of this article I provided the project link, so that you can discover the characteristics of the other profiles as well :)

Let’s get started, but first please read the following information carefully.

IMPORTANT:

We analyze four clusters, e.g. four types of developers.

To understand what makes them special, we compare their answers with the answers of everybody.

Hence, you will see two types of bars, which represent the relative distribution of the answers of the whole dataset (gray) and of our current cluster (blue). Whenever the blue bar surpasses the gray bar, we can say that this answer is typical for that group and separates it from the rest. Whenever the gray bar surpasses the blue bar, this answer is less significant for our cluster.

Group #1:

  • >70% very or slightly satisfied
  • >60% of them work extra hours never, sometimes or occasionally
  • ~80% learn new languages or frameworks at least once a year
  • They change jobs when they have troubles with colleagues
  • They care about diversity, company culture, team & funding state

Group #2:

  • Only ~35% of them are somewhat satisfied with their job
  • ~40% learn new languages or frameworks every few months
  • ~55% work extra hours monthly or every week
  • They are willing to relocate, grow and increase their network
  • They care about professional development and industry

Group #3:

  • >30% learn new language or framework every few months
  • >75% are satisfied with what they are doing
  • >25% work extra hours every week
  • They change jobs to relocate and for trouble with colleagues
  • Their work should be impactful, family-friendly with a great team

Group #4:

  • Extra hours are standard, ~45% work extra every week
  • >20% are very dissatisfied
  • ~40% only learn a new language or framework every few years
  • Work/Life Balance, new Technologies and Networking is important
  • Of course they need remote work options and flex time schedules

IV. CONCLUSION

It was interesting to see that stereotypes not always hold true. Simply focusing on working your ass off can bring you far, but you have to consider more.

The most relatable groups for me are the blue and the brown one. Based on their answers I will try to make use of the following take-aways:

  1. Learning new languages and frameworks every few months is crucial.
  2. Focusing on a good team and company culture will bring you far.
  3. A master’s degree or ph.d can still be very useful, especially in Europe.

I was really surprised about the variety of profiles that exist among the top 5% developers. The profiles above only are a subset, so if you want you can also check out the other clusters via the public project link here.

I hope you enjoyed my analysis. Feel free to get in touch on LinkedIn if you have any questions.

--

--

Maximilian Zachow

Robotics, Cognition, Intelligence at TU Munich | Data Analyst at Telefónica Germany