Expect to lose control over every feature you once wrote as an individual contributor.
I remember my first feature as a newbie web developer, tracking user queries in the database. As I gained more experience, I created new systems and contributed to about 50% of the code base in about two years. I was responsible for about half the systems running in production. The company grew and more engineers were brought on. I watched them take on more projects and some of them were extending or improving my previous code. My contribution to the code base in production eventually dwindled to less than 5%.
My code no longer impacts the business like before.
That was scary to think – all that time and work I put in, replaced. I had to come to terms I did not have the time to contribute to all the systems I used to watch over. I had to give up control over many of the projects I once wrote.
As years went by, I saw multiple lifecycles of my previous projects. A new engineer would carve out what I wrote, improve it, leaving the codebase for another engineer. When I finally looked, there might been a faint echo of my code.
I replaced most of the code my CTO wrote in the past. The new engineers replaced most of the code I wrote. I learned I didn’t have the time to contribute to the code base like before. I was okay with that. My job was to enable them to contribute as much as I could in the past.
Hope you’ll do the same for your team.
Leave a Reply