On Being Obsolete

[An original thought-piece by YK Goon]


By the grace of sheer Facebook luck, I bumped into a rant-piece by a programmer in Hong Kong: I'm a 10-year IT veteran; and I cried in my new workplace today (written in Cantonese). If you're techie, I'm being very precise in his title choice of programmer.

I'll spare you the trouble of reading Chinese (let alone Cantonese). He was lamenting about how after more than a decade worth of experience under his belt, handful of professional certificate, upon landed in his new godforsaken workplace he was treated no better than a junior, made to use a PC that looks like a donation-piece, wasn't invited for lunch and talked like a junior programmer BY a junior programmer.

He ended with the lesson that he made the wrong career choice. Had he pursued finance or property when he was younger, he wouldn't be in the shit hole he's in, working for less pay than where he was. According to him, his peers didn't fare any better, they're either balding or have developed beer belly. His words, not mine.

"So what if you've mastered Android or iOS? Where would you be 10 years from now?"

In case you dunno, a career in finance and property is a such cliche in Hong Kong it's not funny. Like everybody wanna be a Jedi in the Star Wars universe.

Maybe it's the way it was expressed in Cantonese, this piece sent a chill down my spine. That coulda been me.

First-world problem, son

I've taken for something granted: turns out what you think is common wisdom isn't so common after all.

The man wasn't doing what he loves (maybe even likes). When he's merely paying the bills, there's no way to extract meaning out of his work.

But before we pretend love will fix everything, let me bring you through the list of his mistakes:

  1. Betting on Microsoft stack - I've never really dived into the Microsoft stack to make any intelligent comment about it; but the open-source side of the game is so much more exciting. Unless you're making PC/console games, getting locked into Microsoft universe is immensely boring. And boredom breeds complacency.
  2. Get married to technologies instead of methodologies - Technologies phase out, you know the cliche. Yesterday you got AngularJS, today it's React.js. Whatevs, methods & philosophies are here to stay. Functional programming, OOP, event-driven programming, agile, modularity and etc. You may not agree with them (provided you study them enough), but they apply across the board no matter what toy you play with. In fact, the longer a method/philosophy been around, the longer it will stick. Read Taleb's Antifragile.
  3. Thinking of management as a step up - This so fucking obvious it's infuriating. A developer is a maker of things; a manager is a human-mover. Totally different skill set, both are needed to achieve a common business objective. If being a manager is the career objective of a developer, you've brought a knife to gun fight. This topic deserves a whole post itself.
  4. He wanted a job instead of a career - Wanting to be a manager is a symptom of pursuing a promotion. Because promotion entails a raise.
  5. He thinks property and finance are really proper careers - They probably are, alongside drug-dealing and human-trafficking.
  6. Thinking like a victim - He made the choice joining the wrong outfit. He probably be treated wrong even if he's 10 years younger. If you ain't the master of your domain, get the fuck out.

I think the thought of thinking you've aged makes you so. Delusion of grandeur is from time to time is good for you.

Then again, maybe Chinese tech scene was never about creating meaning at all. It's all about motherfucking money, again. Maybe HK is a fucked up place after all, rich/poor gap and all, what do I know.

Either way, be so good they can't ignore you.