How much percent of engineering time is spent on internal software? And how unhappy are those engineers?
Hello and thanks for asking Wonder about software engineering resources devoted to internal tools development. The short answer is that in the large enterprise setting, the majority of staff is allocated to non-customer facing applications. Tech Pro Research and Gartner both published reports based on surveys of IT department budgets and staffing which provide the basis of the details below.
TECH PRO and GARTNER REPORTS
Tech Pro Research conducted a survey aimed at IT managers and CTO/CIOs in organizations spanning over 20 industries. One focus of the survey was understanding budget priorities for 2016. The survey's respondents reported that operational efficiency, security and business continuity were the most critical items to be addressed by their 2016 budgets. Only 17% of survey respondents stated that customer-facing application development and deployment was a majority priority. Areas garnering the highest percentage of major priority votes included efficiency and process improvement, productivity increases, network security and disaster recovery and backup.
In their IT budget comparison summary, Gartner found that the average enterprise staffed 20% of its IT resources on application development and 17% on application support. In terms of dollars spent, an average of 35% of spending is allocated to application development and 12% is allocated to application support. Application development was defined as customer facing while other areas (data center, service desk and network) were more internally-facing.
SOFTWARE ENGINEER JOB SATISFACTION
Data on software engineer's level of satisfaction when working on internally focused tools was not readily available. Stack Overflow published a survey of 50,000 developers covering a range of questions about who they are, what they build and how they feel about their jobs. Based on the survey results, it seems as though job satisfaction can't be determined simply on working with internal versus external tools. Personality differences make it difficult to split job satisfaction on those lines. The Stack Overflow survey did find that the most important component of an engineering job is the salary, followed by work-life balance and company culture. 67% of respondents reported that 'building something significant or innovative' was the most important aspect of a job. Significance and importance are subjective features and likely mean different things to different engineers. When talking about challenges with their jobs, the engineers responding to the survey reported that the most difficult challenge was unrealistic expectations. Poor documentation and unspecific requirements were the next two most commonly expressed frustrations.
In summary, the majority of budget spending and staffing resources are allocated to non-customer facing projects. From the information I found, its not clear that this translates to job dissatisfaction on a broad basis, however a case could likely be made that internal tool development is not always 'significant' or 'innovative' work which is a key feature most engineers look seek in job opportunities. Thanks for using Wonder and let us know if we can help with anything else!