What skills will developers need in the future?
It was possible to touch the results of the study HackerRank 2018 Developer Skills Report, based on a survey of more than 39,000 developers from around the world. Under the cut a brief retelling of what is worth learning and what to look for, if you suddenly want the matrix to take you once to your digital world of the future.
Training and education
Every fourth developer who participated in the HackerRank study began coding long before he was officially allowed to drive a car.
It is never too early or too late to start programming. Of the approximately 39,000 developers surveyed at all professional levels, more than a quarter wrote their first piece of code before they turned 16 years old.
Meanwhile, of all developers who started coding after 26 years, 36% are now senior or even higher-level developers who are rapidly growing in their careers.
The PC revolution has created unique ambitions among the children of the 70s. Unlike subsequent generations, if the children of the seventies wanted to see innovative technologies, they would have to create them themselves - they had no other choice. There were no widely available resources to teach them how to create software. Almost half of all developers (47%) between the ages of 45 and 54 began to code up to 16 years. Meanwhile, developers between 18 and 24 are by far the least likely to start coding up to 16 (only 20%).
Developers between the ages of 45 and 54 were among the first to get into their own hands relatively powerful PCs, such as Acorn Archimedes, TRS-80, Commodore 64, and Apple II. With limited access to formal education, the young people who participated in the PC revolution had an unusually strong desire to learn how to program independently.
The UK can boast of leadership in the issue of educating young coders. Of the 17 countries represented in the survey, the birthplace of Sherlock Holmes and football stands out for the highest proportion of young developers who began coding between the ages of 5 and 10 years. There is a very reasonable explanation for this. England became the first country to modernize its curriculum in such a way that they now require children from the age of 5 to attend programming classes.
The government has repeatedly referred to the fact that early acquaintance with coding is an important step in creating a gateway to a career in software and an understanding of the principles of computational thinking and software that affects daily life.
Study, study and study again!
It seems that annually there is a new programming language, framework or library that is distributed on the blogs of developers. Self-education is the norm for developers of all ages. Despite the fact that 67% of developers have academic degrees, about 74% said that they are at least partially self-taught.
On average, developers know 4 programming languages and want to learn another 4. The thirst for learning varies depending on the generation — young developers from 18 to 24 plan to learn 6 languages, while people over 35 plan to learn only 3.
Since programming is focused on independent research aimed at solving new problems, self-education is an important part of a successful developer. When choosing what to study further, the best guiding principle is to plant yourself in one discipline and study the tools as a means to grow. Tools will always change. Ultimately, this is curiosity and genuine interest in programs that should stimulate the desire to learn new tools and adapt to the changing technology landscape.
The new generation of self-study instead of books prefers YouTube. Developers appreciate the step-by-step advice from colleagues who came, saw, and overcame their tasks.
The very nature of learning is changing. Younger generations flock to YouTube, while older generations prefer books to learn new skills.
Both have unique advantages. YouTube provides a systematic paradigm of learning, allowing you to get structured, steady progress by mimicking university curricula, with the difference that you can do it at your own pace. Another advantage is adaptability. While YouTube may offer you an endless stream of flexible software advances, tutorials are a kind of perpetual relic of CS fundamentals. In any case, it is clear that we are on the threshold of the evolution of education.
Developers learn the languages that employers are looking for
There are slight differences in the most requested languages by industry. Java, for example, has been popular in the financial services world for many years. C dominates hardware due to its performance, direct low-level hardware API and compiler availability on many platforms. And C # is more common among government organizations.
By the way, these 3 frameworks also have the biggest gap between what developers know and what employers want. React has the biggest difference between the percentage of developers who know the structure and the percentage of employers who are looking for candidates with this skill set. In other words, today, developers have a great opportunity to learn how to respond to market demand and pump out exactly the skills companies need.
Skills and skills demanded by employers
Problem-solving skills are almost unanimously the most important qualifications that employers are looking for ... more than knowledge of programming languages, debugging, and system design. Demonstrating computational thinking and the ability to solve large, complex problems is just as valuable (if not more) than the basic technical skills needed to work.
What you really know how to do is more important than what is reflected in your resume. There is a popular belief that recruiters hunt for diplomas of prestigious universities. But in reality they are looking at what you really did, and not at where and how you went to school. The vast majority of hiring managers said that they are looking for proven and confirmed results of your work, facts confirming your many years of experience and projects / GitHub. Regardless of the size of the company, 9 out of 10 hiring managers say that previous experience and years of experience - both qualification indicators - are among the most popular qualifications. By the way, your practical skills are more meaningful for small companies. Small firms attach greater importance to your project portfolio: 80% vs. 66% for large companies.
Qualifications, which usually support resumes (prestige degrees, education levels, skills approval or certificates), rank lowest among the companies that care most. These factors do not indicate proven qualifications. The only qualification with the highest rating that can be easily seen from the resume is “years of experience”, since work experience and portfolio are sometimes correlated with this qualifier. Because it is more difficult to revise individual portfolios on a scale, many years of experience are an alternative, resume-based signal for proven mastery, although this completely neglects high performers who quickly grew in their roles.
Companies look at GitHub and projects to complete resumes and better assess skills. When the data on the roles were filtered out in the study, it turned out that those who occupy level C posts, including founders, CTO and VP, value GitHub projects more than many years of experience. The prestige of academic degrees fell even more in importance for these people.
When developers meet C-level people, there is more time to evaluate proven skills based on projects, previous work and portfolio.
Developers flock to languages that have become popular with technology giants.
When the study analyzed the languages with the greatest gap between what developers do not know and what they want to learn further: Go, Kotlin, Rust, Scala and Swift ranked highest. There is a clear trend of individual developers following the example of the technological giants of Silicon Valley.
Python is renowned for its simplicity, readability, and rich scientific libraries. It also grows as part of introductory computer science courses.
Node.js - a new and very favorite
Assessing skills turns out to be the biggest problem of hiring, more than a lack of talent.
According to more than 7,000 employers, resumes are still the most common way to evaluate developers today. The study showed that 81% of hiring managers use a resume as a first step in the selection process.
When they were asked what the biggest problem was with hiring, the same hiring managers said that skill assessment is their number one problem, not the lack of talent. Meanwhile, only 55% of developers said that resumes are a good reflection of their abilities.
If you look at any description of a technical vacancy, there HR is usually allocated a technical stack, information about the mission, tasks, compensation and other benefits. In other words, all to encourage the developer to respond to the vacancy. However, as the study shows, it is worth concentrating on other things.
Number one in the developers' "hints" is a strong guideline between work and personal life. People rated the balance between work and personal life as the most desirable feature. Slightly more than professional growth and training, ranked second. More specifically, Americans crave a balance between work and personal life more than developers in other regions, such as Asia and Europe.
The balance between work and personal life is most important for developers 25 years and older, and it is not surprising that this criterion is less important for developers between 18 and 24.
Flexible working hours
It is clear that the balance between work and personal life can mean for different people completely different things. That is why researchers have gone deep into the topic of what developers really want.
By and large, the balance between work and personal life can be maintained flexible hours - schedules from 10 am to 8 pm are common.
Developers want to work for managers who are focused on results, not on time spent in an office chair. And remote options are also helpful. Remote work is a particularly strong desire for developers 25 and older, and people between 25 and 44 are strong supporters of closing e-mail during off-hours.
For students, professional growth is important.
Professional growth rises to the first place that students look for work, and compensation also drops significantly from 3rd for professionals to 7th position for students. The balance between work and personal life is still important for students, although it falls from the first to the second.
Students strive to learn and realize their potential, so at this point in their careers, priority is given to the balance between work and life.
Meanwhile, the desire of professionals to compensate for the balance between work and personal life shows how practical experience opens people's eyes to the industry. Sometimes it is worthwhile to devote some time to yourself, flexibility and general mental balance.
HackerRank conducted a developer survey to identify trends in education, skills, and hiring practices. In total, 39,441 professional and student developers took part in the survey. The survey was organized by SurveyMonkey and HackerRank, who e-mailed respondents through professional communities on social networks with more than 3.2 million members.