1) brag I mean mention, your accomplishments and learnings every standup
2) write weekly posts about your learning and tag all sister teams
3) constantly post in workspace chats
4) write RFCs, doesn't matter if they ever get read
5) brag more in wiki (just half day spamming, like writing resume but daily)
I'm almost being forced to always to do these:
- go for flashiest = more people can see and understand == more impact.
- go for smallest = you doing 1 task for 8 weeks == bad, you making 3 diffs a week gets you more exposure
- go for easiest = you spending solving important and big problems == people seeing your name.
It's like social media mentality but how whole org is being ran on those principles. On social media your goal is to be always be in front of as many eyeballs as possible.
There are amazing engineers on my team. But there is no collaboration, everyone is busy writing their posts. It's almost as if teammates are hoping for you to fail hard. So you can't outshine them in showing impact. The culture is very "ME" oriented. Everyone is suppose to create a "me brand".
Sure it's important to build things that matter, but wtf. You can make a cult out of any concept if you push it to extreme.
A friend summarized it nicely; amazon warehouse of programming.
Given that you're working in a swamp, figure out what your goals are while you're there, and how well you need to play the PSC[1] game to be able to reach your goals. PSC and the toxic culture around it isn't your problem to solve, it's just a weight you need to wear while working towards your own goals. This is a deeply cynical view, but that's me. If you're lucky, you can make impact without making noise, but you've got to figure out who to ask to write you reviews. Also --- keep in mind, they're looking for impact, but they never said positive impact... sev0 all systems down is a ton of impact, and it is acheivable ;)
[1] Performance Summary Cycle, aka 6-month review process for those not exposed to this particular swamp
The least undignified way to play this toxic game is to align your "impact"-generating efforts with your business unit goals as much as you reasonably can and use that as ammunition for why you are more promotion-worthy than your colleagues and to focus all your efforts on being promoted to a terminal level quickly where the need for these stupid antics is lessened. If you're simply not willing to play the game at all, your days at a FAANG are numbered.
However maybe it also have to do with the size of the company. To survive the ecosystem, you first need exposure and output, in order to secure a position/network that will allow you to work on harder problems.
To expand a bit on the idea, if you think of what it takes to make things move in a company the size of Facebook, you probably have a long queue of easy/boring task, and then anything remotely harder than the boring stuff require team work, collaboration and having secured the right talent in your team to move the needle. Collaboration require good communication, which can honed through getting people to write a lot about their work. It also make it easier to spot the right talent.
While it can have some negative effects, maybe at scale it helps organizing the company.
Definitely would be interested in reading other people's opinions here.
You must become one with your users.
In many small companies,
- There is no daily standup
- There is no weekly posts
- There is no RFC
- There is no wiki
- Uh oh ... there is no FAANG money
Everyone already knows who you are and what you are doing and how well you are doing them.