I find it hard to believe that most people in so called "top tier" tech companies do compelling work. Not everyone gets to work on de jour areas, most people work on maintenance and improving old code bases (BTW, there is nothing wrong with this)
I find it hard to believe that most people in so called "top tier" tech companies do compelling work. Not everyone gets to work on de jour areas, most people work on maintenance and improving old code bases (BTW, there is nothing wrong with this)
Are they self-congratulatory or self-promoting? Or both?
Just from the headline (before I clicked through), I wondered to myself "How hard can it be? Give notice. Be professional during your notice period. Leave." To me, TFA is less about "how to" than "things you might want to consider".
It was certainly useful to me.
That's it. We don't need to project out his intentions any further than that. You're allowed to share your experience and your thought process without it always being some altruistic "save the starving kids in Africa" type message.
The beautiful thing about the internet and the distribution it provides is that you can write content for your niche and actually reach those people fairly easily.
As an extreme example: do you go into Ferrari owner forums and criticize everyone there for being self-congratulatory and living in too much excess? I hope not. Leave them alone and let them have fun with their cars.
I think in many companies, we can define bad work as lacking agency to do what is needed. I don't think maintenance is all that bad if you have the agency to fix it over time. I've been responsible for three complete rewrites of different systems, and they have gone off without a hitch. The key was building trust with management and making slow tactical decisions which each have impact.
A better answer (and one that the article seems to recommend) is to not find your identity so much in your work.
From my experience, I think there's a great need in large tech organizations for people that are able to advocate for and drive initiatives that can scale up efforts to improve old codebases.
But it's nearly impossible to find that kind of job because employers tend to go out of their way to hide the fact that they even have existing software, let alone that they want someone to work on it.
They do though, through platform teams. The React team at Facebook, for example, goes to enormous lengths to ensure they aren't hopelessly breaking their downstreams even as they try to pay off previous code debt (e.g. the context api efforts).
What makes it difficult for people to "sell" maintenance work (specifically for product work, as opposed to platform work) is that it usually gets framed in terms of maintenance vs new features, as opposed to e.g. improvements in reliability given some metric, etc. Another problem is that developers have a very strong tendency to want to dive straight into coding without necessarily doing the legwork of gathering metrics to show that some work is actually worth doing. This often gets a pass with new features, because it's easier to get people excited about shiny new things, but maintenance work is inherently going to get people asking for "data" to satisfy their reptilian brain's aversion to risk.
Personally I had trouble selling it but that's probably my fault. One had "clear text passwords of C-execs" before it got any attention and rewrites.
That might be irresponsible, from one point of view. I think TFA takes that stand.
Sometimes another four-letter word is substituted for "fine".
Despite the expletive it's not usually used in anger.