In Today’s post I’m going to speak about why owning code or, more in general owning a part of a project, has a lot of benefits, but I won’t do it by giving a correct definition of what code ownership is or describing the several ways you can use it: I will do it by sharing my personal experience.
When I graduated some years ago, my dream was becoming a digital nomad. Going around the world with my computer, working from anywhere and whenever I wanted, felt it was the best way of doing this job. With the passing years and a lot of new experiences made, I realized that I preferred to settle down somewhere so I abandoned the idea of being a nomad but not the idea of freedom in doing this profession.
When Sweden was hit hard by Covid-19 and we started to work from home, I started to realize or actually to see clearly how much time I spend working in a week and much impact that has on my free time, on my personal life. I started to feel I was in a cage and to think that after all, I was not learning as much as I wished.
At that time we were working at the migration of an old system to AWS. My tasks were a bit everywhere and they were not so interesting or challenging. I started to look at the clock and to wait for my eight hours passing. I was sad and without motivation. I was in the middle of a crisis.
Stuff completely changed when we decided to split the whole migration in single features migration and I got the ownership of one of them. I became the owner of a part of the project and suddenly I had the responsibility of going to production with that. My life at work was completely twisted: I started to plan, schedule meetings to get requirements, discuss with the client, make decisions about code and architecture, make sure to share knowledge about the feature with my team, make sure to properly test the implementation and make sure to release the feature. My productivity just skyrocketed, as well as my level of satisfaction at work.
Finally I was working on a project that I felt was mine. I was part of something I would have been in also in my free time. I was learning and improving my skills exponentially. Finally I was feeling like I was an independent developer and not only an employee. I got my freedom back.
Therefore, code ownership is not only about owning a module, a function or a file for “agile” reasons but it is also and above all, something that every developer that needs more freedom should ask for. I think it is something that is more important and useful for the developers than for the companies, the clients or for the project itself.
Last week we released the feature on the first pilots and I cannot be happier for that.