This year Apiumhub partnered up with Coding Sans and other software related companies like Instabug, Clutch, Shippable, Code Giant, Stride, Codeship, Usersnap, GitKraken, and took part in global software development research to find out how companies attract software developers, what are the most popular languages, what are the most frequent challenges, etc. We got more than 300 answers from different countries around the world and we really hope that you will find this report interesting. To get the full report with Interesting facts about software development, click here.
Sneak Peek: Interesting Facts About Software Development
And now, let’s look at some of the data from the report to get an idea of what to expect from this report. Let me highlight that in this article you won’t find a detailed explanation of each graph and question. It is just a sneak peek.
As we all know, software development is a fast-changing field. Almost every year we see new languages, software architectures, containers, methodologies, etc. A tool or language that is highly used today might be obsolete next year. This year our intention is to take a snapshot of the current state of software development and make conclusions about where it’s heading.
This report has different chapters; the first part of the report is about the challenges software teams are facing and the solutions they try to implement. In this part, you will also find the most popular programming languages and project management tools.
The second part of the report is about hiring and retaining challenges and solutions. This is among the biggest challenges tech companies are facing. And the last chapter focuses on performance management and code quality. You will see the causes of delivery problems from a developer and manager point of view.
To be honest, we are very excited to show you interesting facts about software development in 2018. We hope you will like it!
Ok, let’s start!
Top Interesting Facts About Software Development
1. Challenges in Software Development
The biggest challenge tech companies are facing is related to capacity: delivering working software while the backlog is full and capacity is limited. This challenge is closely followed by hiring. We can say that attracting and retaining talent is a huge problem in software development. But what do teams do to overcome the capacity challenge? The most popular solution is to optimize the team’s workflows. After that comes prioritization and increasing the number of people working on the project. Also, applying Agile methods is a common way to tackle capacity challenges. And what do teams do to solve the hiring problem? The most popular way is to hire in-house recruiters or external headhunters to get in touch with potential candidates. Another method is launching internship programs. To see the graph and other solution, click here.
2. Programming Languages
What is curious is that 36.63% of the respondents said they’re not planning to use any new programming languages in the coming 12 months.
This report made it clear that teams use a wide variety of tools, especially when it comes to testing and project management. If you look at the graph, you will see that the “Other” category is way higher than anything else.
To learn more about the most popular tools for project management and communication, click here.
4. Hiring and Retaining Talent
As we have seen, hiring is the second biggest challenge among software teams and the first one for managers. This chapter is about hiring practices of tech companies, including hiring methods, criteria, and attracting and motivating talent.
From what we can see it is clear that there are 4 important areas tech companies focus on when they’re hiring talent: willingness to learn, cultural fit, work experience, and technical skill evaluation test.
What is curious is that now, very few companies look at degrees; it became something secondary. The most important one is a willingness to learn and it makes sense because we live in a rapidly changing world and people should be able to adapt to new circumstances and find new opportunities to do the job better.
As for retaining talent, let’s look at the graph to find out what are the main factors that companies use to make talented employees stay with them:
It turns out that challenging work and a great team culture are the most popular ways to keep developers motivated.
5. Software Outsourcing
Since dealing with capacity issues is one of the biggest challenges along with hiring talents, outsourcing could be a quick fix. Let’s see what companies think about the idea of outsourcing:
Well, as we can see most of the people who outsourced software development services stayed somewhat satisfied. This can be a good solution for the capacity problem.
6. Performance Management
In this section of the report, we will look at how software teams measure performance and what causes delivery problems. This part also uncovers how developer teams ensure code quality.
As we can see working software, completed tasks and code readability are the most important factors for project managers to measure developers performance.
As for the success criteria: working software and on-time delivery are on top of the graph, which you can find here.
And the number one cause of failure for most of the project manager is unrealistic expectations, followed by estimation and lack of clearly defined deliverables.
And peer review and CI + TDD are the top choices of developers to ensure code quality. Other ways you may find here.
Conclusion: Global Software Development Situation
This article featured just a small slice of all the data we gathered from the survey. If you want to see the full report, just follow this link and download it. Feel free to share this post or report with anyone you think might be interested. But don’t forget that this data is relevant only for this year. Excited to see what will be different in 2019. Do you have any ideas?
To see the full report, click here.