
Developers are increasingly integrating AI into their workflows, with 84% either currently using or planning to use AI in their development process, as per the latest Stack Overflow Developer Survey. Among those partially using AI, common applications include writing code (59%), searching for information (56%), learning new concepts (47%), and debugging (47%).
Despite the anticipated productivity boosts and acknowledged frustrations with inaccurate AI solutions, questions arise about where developers experience time wastage or frustration, irrespective of AI use. The issue might not lie with AI tools but with tasks dependent on robust documentation, which have become more time-consuming and frustrating. A survey conducted in October gathered insights from over 800 developers regarding their roles, work tasks, and potential sources of problems.
What Defines a Developer’s Daily Work?
A significant majority of developers (66%) primarily work with proprietary code. Other key responsibilities include designing architecture or pipelines (45%) and maintaining system performance (43%). These functions represent the core duties of contemporary developers. When rated on a 100-point scale for time spent, proprietary code development scored an average of 67, a figure matched only by financial tasks like budgeting and payroll. Less time is typically allocated to maintaining system performance (49) or architecture (44). Conversely, more time is spent on functions less central to their reported core roles, such as open-source code (54), predictive/machine learning technology (51), or understanding business problems (49).
Developers generally report moderate frustration with their roles. Proprietary code roles scored an average frustration of 45 on a 100-point scale, while designing architecture rated 43. Higher frustration levels are associated with roles involving greater responsibility: understanding business problems (47), system performance (48), and predictive/machine learning technology (50). Financial tasks like budgeting and payroll consistently ranked high in both time consumption and frustration, averaging 65 for problematic nature.
The adoption of emerging technologies like agentic AI or generative AI by developers is significant. The latest developer survey indicates that at least 47% of developers use AI tools daily, a figure that rose to 50% in this pulse survey. Daily AI tool usage is nearly consistent across various developer roles, including those working with proprietary code (50%), SRE roles(49%) or engineering architect roles (54%), suggesting broad integration of these tools.
Coding Involves More Than Just Writing Code
Tasks related to coding job functions encompass a variety of engineering tasks. Developers dedicate most of their time to writing code for new features and existing software or architecture. Other tasks, such as managing CI/CD pipelines, addressing business use cases, and learning codebases, consume varying amounts of time. Deployments, documentation, communication, and task management systems receive the least attention. A comparison with AI usage data reveals that AI tools are most frequently applied to tasks where developers spend the majority of their time. The recent Developer Survey results show 59% developers who are currently partially using AI in their workflow do so for writing code and 47% for debugging or fixing code and 33% for learning about a code base.
Documenting code and deployments are among the least time-consuming daily tasks and are also areas where developers express reluctance to use AI assistance. Deployments, in particular, show the highest resistance, with 79% of developers not planning to use AI for them. Similarly, 39% of developers do not intend to use AI for code documentation, and 40% avoid AI for other documentation creation or maintenance. This suggests that documentation and deployments might either lack the routine nature to justify AI assistance or are sufficiently detached from current workflows, leading to minimal time investment.

Developers do engage in documentation, but these activities are often infrequent and disorganized. Code documentation is a daily task for 30% of surveyed developers and a weekly task for 40%, with no developers reporting a monthly cadence. More common monthly documentation tasks include project updates or team presentations (35%) and creating system monitoring reports or dashboards (44%). Teams frequently rely on ad hoc and one-off documentation rather than structured README files in code repositories. Historical knowledge often resides in communication channels like Slack or ticketing systems, rather than organized Q&A platforms. While documentation offers significant benefits for understanding code and solving problems, its current state often adds to a developer’s workload, with or without AI.
The Challenge of Learning a Codebase Without Guidance
For developers focused on coding, the primary source of frustration is not the coding itself, but rather the fragmented and unorganized documentation that few have adequate time to create. Writing code for new features is reported as the least frustrating task, followed by code reviews and writing code for existing software and architecture.
Creating documentation or presentations, managing deployments, and learning codebases are associated with higher daily frustration for developers. Learning a codebase, despite being less time-intensive, ranks higher in frustration for the average developer, contrasting with writing code for new features, which is more time-intensive but least frustrating. Significantly fewer developers use AI for learning codebases compared to writing code, which might be due to security concerns regarding AI agents accessing proprietary code, or simply the inherent difficulty of the task. Among highly frustrating tasks, learning codebases demands more time than others. Deployments, support ticket systems, and reviewing company errata, while requiring less time, also contribute to above-average daily frustration. A common thread among these frustrating tasks is insufficient daily code documentation, which, if improved, could streamline execution and reduce developer frustration.

Experience and Time: Keys to Reducing Problems
Monthly tasks generally lead to less frustration for developers compared to daily tasks. These tasks are designed to be less time-consuming, and while time and frustration aren’t directly correlated, it’s plausible that tasks outside of a developer’s immediate daily focus result in lower frustration. For instance, learning codebases is perceived as less problematic when done monthly rather than daily. However, migrating to new tools or initiating new team workflows emerge as highly frustrating tasks. These often involve extensive research and a “start from scratch” approach, differing significantly from routine, less frustrating daily coding tasks.


Experience level appears to influence the disproportionate frustration developers feel regarding certain tasks relative to their time and frequency. To explore this, the survey data for writing and reviewing code was analyzed for developers performing these tasks daily or monthly, comparing them with other task types of similar frequencies. Documentation tasks were grouped due to their low reported time intensity, while research or cognitively demanding tasks were grouped for their common monthly occurrence. The data was further segmented into three experience categories: early-career (less than 5 years), mid-career (5-10 years), and experienced (10+ years).
Developers across all experience levels dedicate minimal time to daily documentation. Monthly tasks, which often involve more research, comprehension, or documentation, are less time-consuming for all groups but also generate more frustration. Daily priorities like feature development, bug fixes, and deadlines typically overshadow documentation, a problem that can worsen even when deferred to a monthly schedule. For monthly tasks, documentation shows a slightly stronger link between time spent and frustration, particularly when tied to presentations and project updates requiring research. Overlapping clusters in monthly task data suggest shared characteristics might drive this relationship. Experienced and early-career developers spend less time on daily documentation than mid-career developers, yet mid-career developers report similar daily coding frustration. Experienced developers spend most of their daily time coding with low frustration, while less experienced developers spend similar amounts of time coding but with higher frustration. This suggests that newer developers, who likely require clear and accessible documentation more than their experienced counterparts, find coding more frustrating when documentation is inadequate.


Code is Ephemeral, Documentation Endures
Recent survey findings indicate that the act of writing code itself is not the primary source of developer problems. Instead, the limited time dedicated to documentation appears to exacerbate frustrations in tasks like learning a codebase or managing support tickets, particularly for early-career and experienced developers. While many developers utilize AI assistance daily, persistent frustrations stem not necessarily from AI shortcomings, but from the absence of fundamental and dependable knowledge preserved through documentation.

