You might think that the job titles 'software developer' or 'coder' are self-explanatory, but thanks to a variety of distractions and unexpected demands, developing software and writing code often come quite far down the to-do list for many.
A survey has found that, on average, software engineers have only about 10 hours a week of "deep work" time, thanks to the distractions and frustrations they face during the day.
"Junior engineers have a lot more of this time on average -- in fact, 20% more than senior engineers -- likely because they've got less administrative overhead to deal with," the survey of 600 software engineers and managers by software tools company Retool found.
Both junior and senior developers said that testing changes -- writing tests or doing manual tests -- was the thing they wish they could spend less time on. Senior developers wished they could spend less time recruiting or interviewing prospective hires.
Among the time-consuming activities that developers dislike are technical issues like slow SQL queries and database syncs. Working out who is actually responsible for a particular piece of code can take hours, while developers also complained about "waiting on people", including waiting for code reviews or requirements.
Almost all of the engineers surveyed agreed that open-source code was at least "somewhat" essential to their day jobs. That's probably because many of them rely on it on a day-to-day basis: more than 80% of developers are actively pulling open-source code into their work at least once a month, while almost 50% are doing it at least once a week.
According to the research, developers are regularly re-using code when they can: nearly half (44%) said they copied and pasted up to 50 lines of code a week from other sources, while a third (33%) said they copied somewhere between 50 and 100 lines a week; 13% said they copied 100 to 500 lines a week.
"In 2022, the vast majority of software engineers are running other people's code. They're building on top of open-source libraries, or re-using code from other parts of their company's codebase or from online tutorials," the survey said.