JavaRush /Java Blog /Random EN /How to estimate your value on the labor market: a guide f...

How to estimate your value on the labor market: a guide for developers

Published in the Random EN group
What salary amount should I announce at the interview? Can I ask for a salary increase? All these questions stem from the fact that the developer does not know how much his work costs, or incorrectly estimates its value. In this article we will highlight the factors that influence the formation of a programmer’s salary. We will analyze general ideas about what increases the value of an IT specialist in the labor market, and also present an assessment of these factors by experienced developers - our graduates and an expert from EPAM. How to estimate your value on the labor market: a guide for developers - 1

Level of work experience

It’s trite, but work experience is the thing that recruiters look at first. And 20 years ago, and now, and in the future, applicants with impressive experience can qualify for a higher salary than newcomers. It’s simple: only with experience does a programmer acquire some valuable skills - he writes readable and functional code, knows how to understand someone else’s and confusing code, sees the task “in general”, and not just in details.

Technology stack

Programming languages ​​or specific technical solutions used by a software developer also affect salary. An entry-level programmer with little to no experience will cost less than a programming guru. Less common technologies, including Clojure, Rust, Elixir, or conversely, technology stacks that are currently in demand, such as Go or Swift, usually have a higher price tag. The highest paying programming languages ​​include Golang, Perl, Shell scripting, Node.js/JavaScript, Java , Typescript, Python, Ruby, Swift, C#, writes “How I got the Job”, based on data from the US Bureau of Labor Statistics. The technology stack also includes knowledge of additional frameworks and tools.

Programmer Specialization

Developers who have mastered complex technologies receive higher salaries than their peers in the market. For example, a machine learning specialist in the US can earn about $110 thousand per year (about $9 thousand per month). In Ukraine, a machine learning specialist can earn from 5 to 7 thousand dollars a month, in Russia - about 3-4 thousand dollars. If a product idea has convoluted logic, it means it is more difficult to develop, test, and deploy. Whether it's technological complexity or design complexity, hourly rates will increase in proportion to the number of features.

Soft skills

Sure, technical skills are key in the world of development, but in today's technological society, soft skills are valued more than ever before. Developers who have improved their communication, adaptive and social skills and have a significant set of technical skills tend to earn more than those who have only technical skills.

Country of residence and employment

The cost of hiring a programmer in Ukraine or Russia will differ from the cost of hiring the same developer in the USA. According to research from Devox Software, programmer hourly rates are significantly lower in Europe, Africa and South America compared to Canada and the United States.

Insights from developers and JavaRush graduates: what affects salary levels

About the importance of experience

JavaRush graduates took part in our job evaluation survey—almost all of them have been working in the IT field for several years. First, let's talk about the correlation between work experience and salary. One way or another, most developers believe that work experience affects salary levels. We asked them to rate how important experience is for salary growth from 0 to 9. About 27% of programmers voted for a rating of 7, another 17% for a rating of 6. Another almost 12% rated the importance of experience at 5 points. This result means that the length of service factor is important, but not decisive when determining the salary level for a developer. How to estimate your value on the labor market: a guide for developers - 2

About the balance of hard and soft skills

As for technical skills that affect the salary level of a Java developer, respondents highlighted knowledge of the following technologies and tools:
  • Java Spring (Boot, Data, Security especially),
  • Hibernate
  • Setting up and working with NoSQL and SQL,
  • DBMS ( Database Management System - ed.),
  • fullstack development (AngularJS, ReactJS),
  • Threads,
  • Soap,
  • Git,
  • Docker
  • Kubernetes,
  • Cloud (AWS/GCP/Azure).
“The Googling skill helps a lot at the start, but the deeper you dive, the more you need to know. A deep understanding of the tools used makes it possible to quickly select and implement the right solution. This increases the specialist’s “personal weight,” notes Evgeniy.
Among the “soft” skills that affect salary levels, programmers highlight responsibility, sociability, flexibility, perseverance, and stress resistance.
“The ability to interact with the team and with managers is very important. The ability to convey your thoughts briefly and clearly, the ability to value your own and other people’s time, the ability to listen and agree,” says Vladimir.
“The ability to present information correctly to a specific person is very valuable,” adds Daniel.
Among the factors that also influence salary levels, developers highlight networking (the ability to establish contacts with colleagues and future employers), continuous improvement in development, a successful change of job, and speed of learning.
“But the most important tool is a sober assessment of your skills and strong confidence in yourself and your abilities!” notes Artem.

How to track salary compliance with the work performed

We also asked developers how they keep track of whether their salaries are commensurate with their job complexity and experience. Here are the following sources to track:
  1. Interviews (go to them periodically);
  2. Friends, acquaintances in IT;
  3. Job search sites and specialized resources for developers; (LinkedIn, Dou, Habr, Djinni).

Satisfaction with salary level

Finally, we asked the programmers if they were happy with their salary now. 63% responded that they were satisfied, almost 30% were dissatisfied, and another 7% fell into the “Other” category.
“Currently I’m balancing between improving my skills and getting paid, so I have to earn less while working on more complex and interesting projects. Although you can get 1.5-2 times more by drinking some kind of web junk,” says Mikhail.
How to estimate your value on the labor market: a guide for developers - 3

Expert opinion

How to estimate your value on the labor market: a guide for developers - 4The cost of a specialist in the market is a peculiar formulation. It definitely includes hard skills (that is, direct knowledge of technologies) and the ability to apply them. This last point is important because I have seen many excellent theorists with many different certifications who did the actual work not as effectively as expected of them. And while technological skills themselves are quite easy to test during an interview (at EPAM we use our own interview platform for this, on which candidates write code), resourcefulness and efficiency are more difficult. And yet this is possible: keep in mind that some companies ask for recommendations from past employers (EPAM, by the way, does not have such a practice), and there is also word of mouth. Professional reputation can be both your plus and minus. Of course, knowledge of English is required. At EPAM Ukraine, for example, we practically do not consider candidates without this skill. The required level of English proficiency depends on the vacancy for which the candidate is applying and his immediate tasks. In general, for engineers it is advisable to know the language at least level B1, for business analysts - at least B2. It happens that specialists with very basic knowledge of English have experience working with a foreign customer, but objectively this is always difficult. But knowledge of other foreign languages ​​is not required so often. There are situations when we need a business analyst with knowledge of French or a tester with knowledge of Swedish, but these are rare cases. Soft skills are also important for a specialist’s success. Almost the main one is the ability to communicate with clients and colleagues correctly and politely. This is especially felt in a multinational company: it is still useful to understand that in correspondence it is correct to write “could you”, but “can you” is already rude (and this is just one example, which again brings us back to the issue of English). As for clients, at EPAM engineers have the opportunity to communicate with a variety of customer representatives: these are technical people, managers, and managers at the service station level or the CEO of the company. Obviously, you need to be able to communicate with them - and do it in different ways! If you explain to a business representative that delivery times are slipping because the team did not build the object-oriented class model correctly, then they will look at you as if you were an alien. In this case, it is more important to indicate when the problem will be solved. Or, let's say, you start working on a project for a large enterprise company in the insurance industry with a 150-year history. You shouldn’t immediately impose the latest Agile developments and CI/CD processes on such a client, because his culture and dynamics are different. This understanding of the customer's context comes with experience and the opportunity to work with different clients and business representatives. You also need to be able to prioritize and understand the business. Lack of the latter is a common problem among engineers. Most technical graduates are ready to immerse themselves in the code and work hard to make it perfect, but they often do not see the big picture: what the client needs and how users will use the product. Such shortsightedness of an engineer can lead to a decent amount of wasted money. Remember that the industry does not stand still and IT specialists, like doctors, must constantly learn. Books read, articles, participation in conferences (including as a speaker), pet projects, high-quality GitHub - all this can be an additional advantage for you at an interview. I also recommend looking towards full-stack. This is exactly what customers are demanding now. Moreover, full-stack is understood differently: for some it is a specialist who can do both back-end and front-end, and for others it is an engineer who both writes code and tests. One way or another, the wider your expertise, the better. Do you agree with the factors that influence the salary level of a developer? Or maybe something else can influence the value of an IT specialist in the market? We are waiting for your comments ;)
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION