2018 may be a whole new year, but it never hurts to look into the rearview mirror to ponder how we got here.
Developer and engineering recruiting firm HackerRank conducted a developer skills survey in October/November 2017, where they asked a total of 39,441 professional and student developers online about their livelihoods, skills, favorite languages, and other preferences.
Their findings bear consideration.
First, they learned that 1 out of 4 developers starting coding before they learned to drive (prior to their 16th birthday!). And of all the developers who started coding after the age of 26, 36% of those are now senior or even higher-level developers.
Polyglot is king
Second, nearly all developers have an insatiable thirst for learning (And hey, isn’t that one of the reasons you keep coming back to developerWorks!?).
Whatever the language or new runtime, self-teaching has become the order of the day, with 73% of those surveyed having indicated that’s how they keep pace. On average, developers know four languages, and they want to learn four more!
The thirst for knowledge varies by generations — developers between 18 and 24 plan to learn six languages, whereas those 35 and over only plan to learn three.
How they learn is also changing. The younger generation prefers YouTube for their self-teaching over books, but StackOverflow is still the big dog among all platforms, with over 88% of developers preferring it as the number one tool for self-learning.
Diving down just a tad, Java has long been popular in the world of financial services, while C dominates hardware because of its performance, and C# is more popular in the public sector.
But irrespective of preferred languages, there are “softer” skills that employers look for the most. Problem-solving stands at the top of that list, followed by specific language proficiencies, debugging skills, system design, and performance optimization, among others.
And experience trumps education or even your portfolio, with 9 out of 10 hiring managers saying previous experience and years of experience are among the most popular qualifications.
That said, companies do look at GitHub and projects to supplement resume evaluations and to better evaluate skills, particularly among C-level employees (including founders, CTOs, and VPs). In fact, they value GitHub projects more than years of experience.
As to the languages for where developers say they want to go next? Google’s Go tops the list, which offers high concurrency, fast compilation, and widespread support from its creator. Python, Scala, Kotlin, and Ruby bring up the next four of the top five.
Seems like everybody loves Python
That’s because it’s known for its simplicity, readability, and vast possibilities of scientific libraries (and because it is also part of introductory computer science courses).
As to frameworks, Node.js continues to dominate at 73%, followed by React, ExpressJS, AngularJS (are you seeing a theme here?).
When it comes to hiring, it appears that 60% say that assessing skills before onsite interviews are the biggest challenge when hiring talent, followed by time-consuming interviews and the fact that there simply isn’t enough talent to fill the positions available.
So talk fast!
According to 7,000+ employers, resumes are still by far the most common way developers are assessed, and 81% of hiring managers use resumes as the first step in the applicant screening process — but there’s a recognized mismatch between what they’re looking for and the tools they’re using to evaluate it.
When it comes to what developer candidates are looking for, work-life balance is far and away the most common ask, followed by the opportunity for professional growth and learning, and then compensation. They also want flexible work hours (10 am to 8 pm schedules are commonly cited).
And as to that age-old question, VIM or Emacs — VIM beats all other editors by a landslide, with fans saying its keyboard commands are a crucial component as to why it’s loved by developers everywhere.
My own takeaway from these survey results: Don’t sit in one place too long, and always be learning!