Ask HN: Who has experience switching tech stacks mid-career?
I've spent most of my career as a full stack Spring/React developer for large enterprises. I don't mind the languages and frameworks so much, but more so the obsessive over-abstraction and bizarre waterfall-with-agile-terminology that goes on in those places. But those are the jobs I keep getting accepted for, even when I completely botch the tech interview.
So I'm looking for stacks coming out of a less overbearing culture. But job ads regardless of the stack seem quite unfriendly to latecomers, most requiring 5-10 years of professional experience. How realistic is it to beat the requirement with intensive private study instead?
In my experience picking up a new language or framework is absolutely trivial compared to learning all the necessary domain and institutional knowledge of a new organization, so I don't think it makes sense to brand developers with one stack or the other, but it is what it is.
5 comments
[ 0.26 ms ] story [ 29.5 ms ] threadIn your experience how valid do you think the idea that tech stacks and their environments influence workplace culture? Go culture seems to discourage over-abstraction, but how much of that comes through in practice?
I like how Spring Boot seems to steer you towards the simple functions operating on structs approach, but then when I look at a real project people seem to fight that paradigm at every turn.
I have always tried as hard as possible to avoid tech stack nonsense and unnecessary layers most developers cannot live without. Yes, all the bullshit would greatly increase my career mobility, but it’s such a slower and horrid experience when trying to deliver original applications quickly.
I enjoy writing original applications as a hobby, but otherwise it’s just a paycheck. So for compensation my goal is to find the least amount of work and lowest stress option possible. I am not trying to spin my wheels, impress people, or prove how awesome I am. The only goal is just get paid.
I enjoy low level programming, but embedded seems to have much higher barriers of entry. Performance profiling and optimization is also fun, but I've seen very little interest in performance in large enterprises, instead preferring to just throw more cloud resources at the problem.
More than mastering a particular "stack" I recommend getting good at listening and asking questions to understand the business domain and the legacy code landscape, and getting effective quickly with unfamiliar languages and tools. Complete mastery takes a long time, but usually you don't have to understand every detail of a language or platform to fix problems and add value.
Focusing on one or a handful of languages/tools and labeling yourself that way turns into a self-limiting box. Employers and customers pay for solving business problems with programming skills, not for my deep understanding of C++ or Linux.