Individual code ownership or collective code ownership? Your choice won’t really matter if you are missing one critical ingredient: the developers need to care.

Empowerment and the risk of unilateral decisions

From the management point of view, it makes a lot of sense for a larger company not to allow an individual developer to completely own a part of the overall system. This person could be on sick leave or on holiday and cause unwanted delays to some deliverables. He could also just leave the company altogether taking with himself all the knowledge about the part of the code base he owns.

Let the team do its magic

Having more than one developer’s input normally drives better solutions. Brainstorming and white-boarding with colleagues can help designing a solution together and have everyone’s buy in. Agreeing on the solution is crucial to keep each developer engaged and make it possible for them to care enough about the outcome of the next tasks.

The problem with complex domains

When domains or projects are non-trivial, a shared ownership approach might not always be viable. Complex applications will naturally end up with experts looking after them. A wider collective ownership becomes almost impossible due to the amount of knowledge about the code and the domain developers would need to accumulate in order to work on the project effectively.

Shared ownership pitfalls

In a common workplace, developers are used to sharing the ownership of a code base with their team. At times, though, circumstances can lead to unforeseen crises.

Shared ownership at scale

Ownership of shared code across the organisation doesn’t scale very well. Libraries, frameworks or platforms used by different teams should have one of the teams looking after it acting as the project owner.

Be aware of the “no ownership” trap

In general, individuals or teams should have accountability and responsibility for every part of the software code base they own. When ownership, accountability and responsibility are not taken seriously companies can quickly fall into the “no ownership” trap.

Caring leads to success

A company can hire the best developers, build the best teams, have all the right skills in the right places and develop a great culture, but nothing will matter if developers don’t really care about their work.

Software Engineer | bfil.io

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store