I have a long rant about this. But it's Christmas Eve Eve and I'm gonna find something better to do.
-
-
Prikaži ovu nit
-
Okay let's talk about this a little more today. Because it's Christmas Eve and I didn't get y'all anything else.https://twitter.com/polotek/status/1209304966990446592?s=19 …
Prikaži ovu nit -
What do I mean when I say it's a "trap"? It's important to unpack things a bit. Because like almost everything, what I'm saying doesn't apply to everybody in every situation. What I mean here is that the "full stack" designation does not set engineers or teams up for success.
Prikaži ovu nit -
When I've talked to employers about what "full stack" means, I get answers that seem similar but are different in significant ways.
Prikaži ovu nit -
Sometimes "full stack" means you can work on both the frontend and backend of a web stack. So you can build out an entire feature yourself. "Building features in a web app" carries a lot of context about what the work is right off the bat. This is where many people *start*.
Prikaži ovu nit -
This role is entirely reasonable. And probably the one many people assumed when they heard "full stack". I wouldn't call it that though. I would just say this is a web developer or web engineer. There is enough depth in this part of the stack to spend all of your time here.
Prikaži ovu nit -
But then things start to get complicated. Sometimes "full stack" leads to this: "We also need a native app, and I'm also gonna ask you to do something about that. You're the engineer I hired so make it happen."
Prikaži ovu nit -
This is where you end up with people reaching for react native or whatever. Not because it's the right thing for the company. But because that's all you have is web engineers and they have to solve every problem.
Prikaži ovu nit -
Meanwhile these companies inadvertently get dragged into technology that's not fully baked yet and become the guinea pigs to test it. And the team, who had no real choice in the matter, starts getting dinged as things drag out. This was the react native community a few years ago.
Prikaži ovu nit -
Here's another scenario that "full stack" engineers fall victim to: "Oh everything was fine until yesterday. Now our database is too big and we're having performance problems. Can you fix those? You're the engineer right? You do everything."
Prikaži ovu nit -
Maybe you have "Infrastructure or devops" engineers on the team. You think they're gonna help you. Except they only do mysql and you chose mongodb because that's the web stack you were familiar. You convinced everybody it was gonna be so much more "productive".
Prikaži ovu nit -
Now you have it help them figure out how to get AWS to successfully transfer 3.2 TB database so you can upgrade to the latest version in *hopes* that the perf improvements somehow help out? You have no idea and didn't think that was part of your "full stack" job.
Prikaži ovu nit -
Later that same infra team comes to you and says they're "dockerizing" everything because it's in their OKRs. So you have to make sure your backend services are stateless and horizontally scalable. Because now they can disappear and restart at any time. Good luck!
Prikaži ovu nit -
Oh also we should probably have the local dev environment look like production, so go ahead and overhaul the dev environments to use docker as well. But don't break people's workflows because we're still trying to ship things!
Prikaži ovu nit -
These are all things I've actually had to do in recent years. Not to mention the following: - Slack apps - Headless browser environments - Serverless functions - ETL pipelines - Scaling elasticsearch and redis - Real-time collaborative document editing
Prikaži ovu nit -
I can only do all of this shit because I've been building up incremental knowledge about software systems for 15 years. And I'm still really bad at half of these things!
Prikaži ovu nit -
All of these things may need to happen at a reasonably sophisticated tech company. "Full stack" potentially puts you on the hook for all of it. Not because you've earned the skills and credibility. But because you've been telling everybody that you wanna do everything.
Prikaži ovu nit -
You might be thinking at least doing all this high level work will translate to conversations with your manager about getting promoted. But no That's when you'll find out why it's a trap. Because that was never what you were being evaluated on.
Prikaži ovu nit -
You're still evaluated on your same job. Shipping product features. So now you're having a conversation with your manager about why you didn't do enough of that because you got involved with all these other things. And it sounds like *you're* the one making excuses.
Prikaži ovu nit -
It turns out the company will take whatever labor from you that you're willing to give them. And "full stack" often translates to you doing your actual job plus a bunch of other freebies because you're trying to get the "exposure". Don't do it to yourself.
Prikaži ovu nit -
Anyway, there's a lot more here. But I gotta go get ready to see Frozen 2 with my daughter. Merry Christmas.
Prikaži ovu nit
Kraj razgovora
Novi razgovor -
Čini se da učitavanje traje već neko vrijeme.
Twitter je možda preopterećen ili ima kratkotrajnih poteškoća u radu. Pokušajte ponovno ili potražite dodatne informacije u odjeljku Status Twittera.