Ask HN: I'm a Jack of All Trades and I Want to Be a Master of One

1 pointsposted 9 hours ago
by EgoIsMyFriend

Item id: 41835704

3 Comments

geenkeuse

9 hours ago

You don't see yourself doing lots of things, yet you are willing to choose a path based on how much it pays. Decisions like that rarely lead to a satisfying career. You are a generalist because you have varied interests. Choosing one goes against everything you have experienced so far, so it's important to choose wisely. Whatever it is, you have to see yourself getting up in the morning to do it. If you are having actual dreams about it, even better. Actual dreams. Coders dream about code. Sheep shearers dream about sheep and scissors. What do you dream about?

EgoIsMyFriend

8 hours ago

I haven't explored other interests as much as I did with software. I chose computer science only because one of my friends in high school wanted it. I remember the day after finishing high school when I was making my choices of university majors and I had no idea what to choose, except for what my friends wanted to do.

No particular dreams. I remember uploading a couple of gaming videos to YouTube back when I was young about some interesting in-game finds. Then eventually made how to videos with adfly links to grab ad money, but abandoned it soon after because of a trauma when I was 16.

Now I want to monetize what I've learned so I have to stick with software. So I'm looking to specialize in something, and I mainly want to invest my time going forward into something that will not be abandoned in a few years.

solardev

2 hours ago

Regarding full-stack dev, my opinion as a web dev:

IF – and that should be a big "if" – your requirements are that 1) it has to be web-related and 2) it should be growing in demand and 3) you want it to be full-stack... honestly, I think you're kinda limited to maintaining legacy codebases for non-tech enterprises or tiny businesses. By that mean I mean true monoliths like Drupal, .NET, Wordpress, and other truly full-stack systems. React (even with Next) isn't really full-stack in the traditional sense; it's more like a heavy frontend with some abstractions for a light backend, along with partnered DB or KV integrations if you're hosting on Vercel. You can do so some light backend API routes and such, but it doesn't have the same expressiveness as a true backend stack that you fully control. You end up kinda shoehorning your backend into their routing and middleware model, which might be fine for simple CRUD apps but isn't always the right model for every use case.

Big enterprises typically do their own backend in a stack of their own control, with a mix of languages, databases, connectivity models, etc., and their frontends are also customized to both the tools and the needs of the day. It can be something like Java + React or Go + Svelte or whatever, or a mix of many different backends and frontends and middle-y things.

The web changes very frequently. All the career full-stack devs I know don't rely on any one framework or language. They learn the basics of backend and frontend and everything in between (meaning the networking stuff, DNS/HTTPS/SSE/workers/caching/invalidations/etc as well as the auxiliary stuff like testing/UX/style systems/scaling/devops/CI/CD), get to know a couple frameworks/languages on either side relatively well, and – most importantly – are able to learn quickly and keep up with all the changes every year.

If you DON'T really want to keep up with the bleeding edge, you're left with the "long tail" of legacy frameworks that still have a lot of users but don't change as frequently. While Vercel is busy pushing for React Server Components and mixed hydration models and serverless-as-backend, there's still a big community of, say, old-school Drupal users (https://jobs.drupal.org/) using old tested technologies. (But PS: IMHO only: stay the hell away from Drupal; it is a nightmare to work with).

-------------

Regarding timing:

You should know, though, that this is a very bad time to enter web dev. In my 20+ years of being in this field, this is the worst I've ever seen it, and even Vercel (the maintainers of Next.js) seem to be pushing more and more for diversification and partnerships with other SaaSes than increasing Next.js uptake. The market is super saturated both in terms of frameworks (there are too many, and nobody can keep up), Next versions (people are still using the old Pages Router because it's much easier to understand than the new models) and developers (every boot camp grad is still in the market, competing with the tens of thousands of laid off FAANGers). There's not enough jobs to go around, while all the investment money is going to AI and the Old Web is considered yesterday's news. Maybe it'll recover someday, but honestly a lot of that stuff is also boilerplate low-skill stuff that AI can replace.

If you want career stability in web dev in particular, I think you missed the boat on that by 15-ish years =/

How about a more stable, less rapidly-changing field instead... aerospace? Defense? GIS (geographic information systems)? Embedded systems? EE? Games? Film? Medical or financial software?

Honestly, given what you said, I think entering web dev would be a recipe for burnout for you. It's very much "jack of all trades", except you add a few new trades every year, and you never master anything because by the time you do, it's already obsolete.

None of the technologies in use today have a guarantee of sticking around forever, so you're always forced to choose between chasing the latest and greatest (if you want to work with hot companies) or maintaining legacy code (today it's Wordpress/Drupal/class-based React/React Router, maybe Gatsby, and tomorrow it's Next.js...).

I think either you eventually grow in your career enough such that companies start hiring you because you're you (i.e. your references or network precedes you), or else you're just a commodity coder like any of us, easily discarded and replaced by cheaper fresh grads with all the latest experience. It's a bad idea to enter web dev hoping for stability. It's not a field for old people. It's where fresh ideas and frameworks constantly duke it out and today's top contender is next year's has-been.