What to do if my Coding Time is high?
Identify which team or repo
As a first step we should understand which team or repo is facing high coding times so that we can evaluate if that is expected or not given the business context and focus on them.
You can do this in the Cockpit, by switching to tabular view and sorting on coding time column.
Causes of high coding time
Poorly Defined Requirements: If requirements are unclear or incomplete, developers may spend significant time trying to understand the scope or may need to rework code later.
Technical Debt: High levels of technical debt make it harder and slower to implement new features or fix bugs due to a tangled or outdated codebase.
Lack of Proper Tooling: Without efficient tools for coding, debugging, and testing, developers spend more time on manual or repetitive tasks.
Scope Creep: When the scope of a project expands beyond the original plan, developers must spend additional time coding features or making adjustments.
Frequent Context Switching: Developers who are interrupted frequently or required to switch between tasks lose productivity as they need time to refocus.
Dependencies on External Teams or Services: Waiting on other teams or external services to provide necessary inputs can cause delays in the coding process.
How to reduce coding time?
Clearly Define Requirements: Collaborate closely with stakeholders to ensure all requirements are fully understood before coding begins. Use tools like user stories, acceptance criteria, and wireframes to clarify expectations.
Manage Technical Debt: Regularly refactor code to eliminate unnecessary complexity and address known issues. Prioritize paying down technical debt as part of the development process.
Invest in Training and Skill Development: Provide ongoing training, workshops, and access to resources that help developers stay up-to-date with the latest tools and technologies.
Minimize Context Switching: Organize work in a way that allows developers to focus on one task at a time. Avoid assigning multiple high-priority tasks simultaneously, and batch similar tasks together.
Leverage Code Reuse: Create and maintain a library of reusable components, modules, or functions. Encourage developers to use these resources wherever possible.
Encourage Pair Programming and Knowledge Sharing: Implement pair programming for complex tasks or as a regular practice to encourage knowledge sharing and reduce the time needed to resolve issues.
Last updated