developer survey report - developer academy - results ......developintelligence 2017 developer...

11
System.register([“angular2/core”, “./header”, “./report-form-control”, “./report-form”, “./report-list”, “../services/ reports-service”], function(exports_1) { +System.register([“angular2/core”, “./report-header”, “./report-form-control”, “./report-form”, “./report-list”, “../ services/reports-service”], function(exports_1) { var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === “object” && typeof Reflect.decorate === “function”) r = Reflect.decorate(decorators, target, key, desc); @@ -8,15 +8,15 @@ System.register([“angular2/core”, “./header”, “./report-form-control”, “./report var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === “object” && typeof Reflect.metadata === “function”) return Reflect.metadata(k, v); }; var core_1, header_1, report_form_control_1, report_form_1, report_list_1, reports_service_1; var core_1, report_header_1, report_form_control_1, report_form_1, report_list_1, reports_service_1; var ReportApp; setters:[ function (core_1_1) { report_form_control_1 = report_form_control_1_1; @@ -41,13 +41,20 @@ System.register([“angular2/core”, “./header”, “./report-form-control”, “./report Developer Survey Report Executive Summary 2017 Software Developers are Different. Develop them DIFFERENT || LY DIFFERENT || LY Software Developers are Different. Develop them Deliver software more quickly, with fewer bugs Attract, retain, and grow top engineers Make learning an enabler for your strategic goals Increase ROI on your learning dollars

Upload: others

Post on 10-Mar-2020

19 views

Category:

Documents


0 download

TRANSCRIPT

System.register([“angular2/core”, “./header”, “./report-form-control”, “./report-form”, “./report-list”, “../services/reports-service”], function(exports_1) {+System.register([“angular2/core”, “./report-header”, “./report-form-control”, “./report-form”, “./report-list”, “../services/reports-service”], function(exports_1) { var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === “object” && typeof Reflect.decorate === “function”) r = Reflect.decorate(decorators, target, key, desc); @@ -8,15 +8,15 @@ System.register([“angular2/core”, “./header”, “./report-form-control”, “./report var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === “object” && typeof Reflect.metadata === “function”) return Reflect.metadata(k, v); }; var core_1, header_1, report_form_control_1, report_form_1, report_list_1, reports_service_1; var core_1, report_header_1, report_form_control_1, report_form_1, report_list_1, reports_service_1; var ReportApp; setters:[ function (core_1_1) { report_form_control_1 = report_form_control_1_1; @@ -41,13 +41,20 @@ System.register([“angular2/core”, “./header”, “./report-form-control”, “./report

Developer Survey ReportExecutive Summary

2017

Software Developers are Different.

Develop them

DIFFERENT|| LYDIFFERENT|| LY

Software Developers are Different.

Develop them

✔ Deliver software more quickly, with fewer bugs

✔ Attract, retain, and grow top engineers

✔ Make learning an enabler for your strategic goals

✔ Increase ROI on your learning dollars

2017 DI Developer Survey Report

©2017 DevelopIntelligence, LLC. All Rights Reserved.

No part of this publication may be reproduced, distributed, or transmitted in any form or by any means, including photocopying, recording, or other electronic or mechanical methods, without the prior written permission of the publisher, except in the case of brief quotations embodied in critical reviews and certain other non-commercial uses permitted by copyright law. For permission requests, write to: DevelopIntelligence 2675 Northpark Drive, Suite 202 Lafayette CO, 80026.

Publication Date: April 2017

EDITORIAL STAFFCEO: Kelby ZorgdragerResearch Analyst: Kyle PennellEditors: Kyle Pennell, Barbara Scott, Dave Wade-SteinGraphic Design, Production: Justin Boll

DI Developer SurveyExecutive Summary

2017

4 | DevelopIntelligence 2017 Developer Survey Report

Executive SummaryOver the past decade, DevelopIntelligence (DI) has provided world-class, role-based learning solutions for software developers and engineers. As the technology industry changes, engineers and companies are continually challenged to keep pace.

Recently, it has become clear that in order for organizations to achieve strategic initiatives as well as keep their employees engaged, both R&D and L&D departments must be aligned and work closely with one another.

According to go2HR.ca, up to 40 percent of employees leave their jobs within the first year. Staff turnover is expensive–several studies report that the cost of replacing an employee averages six to nine months’ salary. In other words, to replace a developer earning $130,000/year could cost the company between $65,000 and $95,000 in recruiting and training costs!

In 2014, DI conducted the industry’s first developer learning survey, which yielded valuable insights into the learning and development needs of software developers. We recently repeated the survey with double the sample size, reaching out to almost 800 software professionals. The survey was structured around three broad areas: Developer Learning Behaviors, Developer Training Preferences, and Developer Training Requirements.

Outlined below are the key findings from the 2017 DI Developer Survey.

Developer Learning Preferences

On average, respondents spend seven hours per week of their own time learning new skills necessary to do their jobs. On the other hand, respondents spend an average of just two hours in formal training opportunities.

DevelopIntelligence 2017 Developer Survey Report | 5

The survey suggests that developers do not receive enough on-the-job time to learn about current and future technologies they need to successfully complete their job tasks. We recommend that HR and L&D managers acknowledge this after hours learning investment and replace it with regularly scheduled, brief–yet meaningful–topical training opportunities. When highly-skilled technical workers are denied the opportunity to grow their skills, they begin to look elsewhere for employment.

Among senior developers (5+ years of experience), the most desired forms of training are:

• Reading (36%)

• Private dedicated ILT (instructor-led training) courses (22%)

• Watching videos (22%)

Among junior developers, the most desired forms of training are:

• Reading (42%)

• Watching videos (21%)

• Learning from a peer (14%)

• Private dedicated ILT courses (13%)

With the growth of platforms such as Pluralsight, Udemy, Coursera, and others, junior developers are including more video training in their technical self-education. Video training can be an efficient method for teaching oneself the fundamentals of different technologies–however, it can be difficult to find videos covering intermediate and advanced topics. It is also challenging to find videos tailored to specific development stacks. Our data show that once developers are well into their careers, private ILT courses become as preferable as video training.

These data–coupled with our extensive experience in developer training–lead us to recommend that L&D managers adopt a blended learning strategy which combines reading with private, dedicated

6 | DevelopIntelligence 2017 Developer Survey Report

training courses, along with outlets for peer-to-peer mentoring and coaching (e.g., internal company meetups). Online technical libraries or video libraries such as Pluralsight are ideal resources to include in such a blended learning strategy.

Private, dedicated ILT courses of three to five days in length are rated by developers as the most effective way to learn. Of the developers who participated in a private ILT event over the past year, 83% rated it as an effective way to learn and adopt new technologies.

Based on the survey results, we recommend three-day courses as the most effective option in terms of cost, retention, and project schedules. In addition, we recommend that learning and development managers who strive to lower the cost of learning should avoid investing in mobile learning. While this segment is rapidly growing within the learning industry, 32% of developers and those in related roles rated mobile learning as their least favorite learning method.

Conferences represent a popular trend within the development community and indeed, some companies spend large portions of their training dollars on conferences, foregoing ILT, online libraries, and other learning solutions. However, our respondents rated conferences as their second least favorite learning method. Therefore, managers who plan to spend training dollars on conferences should view that investment as one which will boost employee morale and create technology awareness, rather than an investment in long-term productivity gains.

Developers seek out training for practical purposes. Over 55% say they seek out training in order to meet current or upcoming needs or to advance their careers. By increasing the learning solutions offered to the engineering staff, managers demonstrate a commitment to employee and organizational success.

DI regularly finds that a minimal learning investment of $800 to $1,800 per engineer per year delivers significant returns–as much as 20 to 30%–in employee morale and productivity gains.

DevelopIntelligence 2017 Developer Survey Report | 7

Current Skill Gaps

The survey identified the three largest skill gaps as 1) JavaScript and related frameworks/libraries/tools, 2) software architecture and design patterns, and 3) continuous integration/deployment tools.

JavaScript

While JavaScript has been around for 20+ years, it has seen a recent spike in popularity and it has become considerably more complex of late. Unsurprisingly, 55% of developers reported that they want more JavaScript training. And 27% said they wanted training on ES6, the newest version of the JavaScript language which introduces many new features to the language.

Our survey uncovered a strong training demand for JavaScript frameworks, libraries, and related tooling–e.g., 42% desired Angular 2 training. We foresee Angular 2 being less popular than Angular 1, but we expect it will still be a widely-adopted framework and a major player in the enterprise space.

38% of developers reported a desire to learn React, which is a JavaScript library designed by Facebook for building complex user interfaces. React is the fastest-growing ecosystem in web development and we believe it will continue to grow at a rapid pace into 2018.

Design Patterns and Architecture

We found a strong demand for high-level software engineering skills such as software architecture (55%), design patterns (52%), high scalability (40%), and developing secure code (40%). These results indicate that many developers want to take their software development knowledge to the next level. That is, they want the skills that will allow them to transition from developers/programmers to engineers/architects. This transition involves writing secure code that scales well and lends itself to collaboration.

Architectural skills are difficult to instill in developers, which may explain why the median salary for Software Architects is roughly

8 | DevelopIntelligence 2017 Developer Survey Report

0% 20% 40% 60%

Software Architecture

Design Patterns

High Availability / Scalability

Developing Secure Code

REST Web Services

Cloud Computing

Amazon S3

Amazon EC2

Performance Tuning

Cloud Architectures

Azure

Google Cloud Platform

Heroku

Platform As a Service (PaaS)

Google Compute Engine

Amazon EBS

SOA

Openstack

Amazon Lambda

Enterprise Service Bus / Messaging

Not applicable to my role

Firebase

Linode

Force.com platform

Rackspace

Apache Stratos

Other

Delphi/Object Pascal

EngineYard

Mapkit

Stata

Core Location

AppFog

Percent of Respondents

Training Need for software architecture / platform skills

Lang

uage

DevelopIntelligence 2017 Developer Survey Report | 9

$116,000–more than any other IT position. It is vital for organizations to focus on cultivating and retaining their Software Architects. Investment in software architecture training will both increase return on software investments and decrease the amount of rework which stems from poorly-designed applications.

High-Demand Programming Languages

Java continues its long streak as the number one language on the TIOBE Index (http://www.tiobe.com/tiobe-index) and number 2 in the RedMonk rankings (http://redmonk.com/sogrady/category/programming-languages), and consequently, Java training remains in high demand–30% of developers would like Advanced Java training in the next 3-15 months and 28% desire Introductory Java training.

Many of the programming languages that developers want to learn are languages that have been popular for 15-20 years, but we’ve also discovered that developers want to learn two new languages–Go (29%) and Swift (20%).

Nearly half of the respondents are eager to learn and apply new NoSQL concepts and technologies such as MongoDB or RethinkDB. NoSQL (or “document store”) databases are relatively new to most organizations. We have found that one-day “NoSQL Concepts and Landscape” sessions offer a quick introduction and allow organizations to evaluate the impact of NoSQL as well as identify which specific tools and technologies to adopt.

10 | DevelopIntelligence 2017 Developer Survey Report

Final Thoughts

CEB CIO Leadership Council recently released their annual Key Findings from the IT Budget Benchmark for 2015-2016. The nearly 160 organizations participating in the study represent nearly $40 billion in IT spending and these organizations grew their IT training budgets by 5.1% in 2015.

Most of our clients invest, on average, $1,800 to $3,300 per employee on training annually, though engineers frequently express the need for even more training.

One way in which managers can increase learning opportunities for engineers without increasing training budgets is to decrease costs associated with operational overhead. Typically, 60-70% of a training budget is allocated to operational costs, including employees, learning management system (LMS) products, and collaboration products.

However, most development organizations already have informal collaboration and knowledge-sharing products in place, in the form of wikis, project-management tools, or other similar tools. Rather than investing in yet another collaboration product to help facilitate knowledge sharing within the organization, managers should leverage and formalize the tools already in place. This will reduce overhead and improve morale as the organization recognizes and embraces the tools their employees find useful.

Overall, the 2017 DI Developer Survey Report demonstrates that developers are already engaged in training, have clear areas of desired skill growth, and know which training methods are most effective in building their skills. By creating and implementing learning plans based on their development team’s needs, managers are more likely to help their organizations stay competitive and retain top talent.

2675 Northpark Drive, Suite 202 | Lafayette, Colorado 80026877 629-5631 | www.DevelopIntelligence.com

$499.00