"So, is everyone losing their minds yet?" My ex-coworker asked me over yahoo messenger. He quit after getting enraged by new work policies that specifically targeted him. I looked up from my screen, glancing into the next row where his old team were silently working on their respective machines. His old monitor had been taken away. His tower was sitting on the now open office desk, collecting its first coat of dust.
"Yes. It's complete chaos." I replied. Well, I lied. It wasn't chaos. They weren't happy either. The reality was that his old team was indifferent. They missed him of course, he was a great guy. I missed him, he was a true friend in this chaotic world of technology. But the fact that he was the only .Net developer in the entire company went unnoticed.
By himself, he maintained multiple money making websites. They all ran on a brittle .Net infrastructure. He knew all there was to know about them, and would respond in seconds whenever they experienced an issue. There was no realistic way to replace him, and there were no plans. He was hired to write code, so the best way to get back at a company who didn't value him, was to stop writing code. So he quit.
"lol the website is down," he wrote to me the next day. I waited at least an hour before I notified the team that one of their websites was down. The QA guy in Mexico sent me a message on AIM, asking if I knew the credentials to the windows server. I shared them and a few minutes later the website was back up. He was later promoted and became the new .Net guy. All he did was restart the machine.
My old friend, once a crucial part of the organization, was no longer needed. They built a new UI written in PHP and plugged the same database. Not only was he replaced, but now his position had been phased out. .Net was no longer a thing in the company. The promoted employee was soon let go.
As good as I thought I was, my position had been diluted into a team that could do the job just fine.
I was proudest of an A/B testing suite I built for the company. It rivaled Google's Web Optimizer, and it was customizable. It ran both on the server side and the client side. It was the result of years of internal feedback and fine tuning. I even made a fun little logo for it. One day, a new manager came in and said we should use VWO as an alternative to Google's. And that was it. My work was tossed away without a second thought.
If they hired me to write code. If my old friend was hired to maintain what was exotic code, then why was it so easy to discard it?
The answer only came to me after working many more years in the industry. You can hire as many 10x engineers you can afford. What matters is not the code they produce. The only thing that matters are the products and features managers can attach their names to.
This concisely came to me when I worked as a consultant. I often spent night and day fixing bugs and performance issues only for the company to ask me if I did any work. But when I produced "A Subscription Model" or "An Architecture" or "A build system" these were highly praised. Even though they came in as a PowerPoint instead of working code. They would hand it over to a team to write the code later, if ever.
Does it mean that we shouldn't write code or shouldn't try to get better at it? Not at all. When working in a team, what matters most is that the weakest developer be at the very least competent. The rest is to try to build and maintain the company's product and features.
Not as fun or inspiring as we make the programming world to be. But the reality is we are not hired to write code. That's only incidental.
There are no comments added yet.
Let's hear your thoughts