Curiosity, career flexibility, and necessity from four decades in the business. I think of over-specialized and narrow skills as fragile, and broader more generalized skills as anti-fragile.
Because it's interesting and, probably, the easiest way to bring significant business value. Most of the problems and opportunities I saw lies somewhere on the border of different departments, technology stacks and abstraction layers. And so little people want to dive into this mess, because it requires knowledge from other domains to solve.
I've wavered on whether being a generalist/"full stack" person is good or not 10+ years into my career, but I think at this point I'm convinced 90%+ of work is just tying libraries together across presentation boundaries, and you should be able to solve problems end-to-end. It's not that hard, I (and the vast majority of people I imagine) aren't working on anything particularly complicated; drawing domain boundaries seems silly.
But that's based on the work you've seen, which is generalist work, which is what you're known for, which is what you've worked on; it's a circular definition. If the company has a database on their backend and they've built indexes and scaled it up and denormed it and sharded it and exhausted all the available options, but it's still not fast enough, would they call you to invent a new, faster database with properties X, Y, and Z that's needed for this particular site because everything on the shelf is the wrong shape, or would they pull in a specialist who's resume is exclusively that kind of work, which is why you've not seen more than 10% of that sort of stuff?
9 comments
[ 4.1 ms ] story [ 22.0 ms ] thread