Hacker News new | ask | show | jobs
Ask NH: Where to go from Front end Development?
33 points by holdon 1936 days ago
Hi, NH!

I'm a frontend developer in my mid-thirties with more than five years of experience and a CS degree. Mostly, I have been working with React, Redux, and its ecosystem.

Currently, I am working as a frontend developer with an average salary in one of the top IT companies in my country. In the past several months, I've been asking myself the same questions, "What's next?" and "What skills should I gain to stay in the game as long as possible?". I am pretty bored with my daily tasks which fill my whole working day and drains my energy, and sometimes it feels pointless. So I think there's nothing for me there.

Therefore I think about switching my career from Frontend Developer to a new role. It might take a lot of time and effort, but unfortunately, I don't see another way. I have no obligation except to choose the right goal and move towards it.

Now I'm considering several options:

1. machine-learning. In 2012 I took the Machine Learning online course by Andrew Ng and the Artificial Intelligence online course by Peter Norvig. It was hard and very interesting. These courses left the brightest impression on me.

2. product manager. Yes, it is not a technical role. But I'd like to dive more into the business part of the project. It will help me to gather new skills which will remain useful in the future.

3. change project or company or even country and try to become fullstack developer. But I don't understand where will this take me in 10 years.

What do you think? Have you ever change your career path or role in your mid-thirties, and how it's going?

10 comments

I was in a similar boat for my last few jobs. I realized how easy it is to get siloed into being a "frontend" developer with most companies, as if I wasn't capable of being anything else. I joined a startup that allowed me to build full-stack, negotiated to change my job title to "Senior Software Engineer", then later applied to a backend team at a larger company. This led to CI/CD work which led to a largely Devops role on a Platform team, which has worked out really well for me.

So my journey summed up would be [frontend] -> [fullstack] -> [backend] -> [devops/platform]

I prefer it because you get a lot more high-level visibility on whats going on in your company, and there's a ton to learn, especially since we're using Kubernetes, which is a whole discipline in and of itself. Another benefit is that the vantage point of a Platform-like team allows for more leadership opportunities, which is a good way to get promoted in an IC track and enhance your career in general. So if that sounds interesting to you I'd say give that a shot.

Edit: IMO you will probably need to change companies - even the most growth-oriented, forward-thinking startups seem to forget that developers can learn new skills and will tend to strongly prefer that the thing they hired you for is what you keep doing. Smaller startups are usually more flexible and easier to pivot career paths since they don't usually have specialist teams. It really depends on the company though - I think I got lucky, and had to actively want to move in that direction. Even today when I talk to recruiters and say that I technically have the most years of experience in React, they immediately want to move me to a frontend team. It just be like that.

Thank you for sharing your experience. It helped a lot.

"even the most growth-oriented, forward-thinking startups seem to forget that developers can learn new skills and will tend to strongly prefer that the thing they hired you for is what you keep doing" - it feels so true.

I'll keep in mind your advice about the company when starting to find my next job.

I'd like to dig in a bit and wonder why despite using the term "frontend" several times, you never used the logical opposite in expressing your options ("backend"; the closest you came was the term "full stack")

I think you may want to explore whatever bias you have there: many opportunities are out there that really don't elevate the front-end (server-rendering is adequate, or they use Javascript sparingly), while tackling really big, interesting problems.

The frontend/backend divide is very large at the moment, especially for new (or recent) developers.

I feel this is limiting, as I was lucky enough to learn at a time where it was all smooshed together (2000), and I felt comfortable enough jumping from one to the other and back again.

Thanks for the reply. I don't bias against backend development. Moreover, I am considering this option as one of the best. I haven't listed it because it seemed to me that already too many options on the list.
Have you considered backend development? I used to do more frontend but I hated css and all the weird states that a front end app could get into. Also you could learn a new language in the backend. I recommend Golang.
Thanks for the recommendation. Yes, I am considering backend development too and Golang in my top shortlist.
Try to get into a role that needs to gather user requirements or doing some system design or coordinate your team member(scrum master) maybe? No job is 100% engaging all the time though and I think if your current work env. is stable, figuring out some new interests are a way too.
Thanks for the great advice. I have to think about it. It feels that the tasks associated with gathering user requirements are performed by the manager, and tasks related to system design are performed by team lead who doesn't like to share them. But got the idea.
I bet you'll get bored of project manager too. Will probably be novel for a year or so but then get boring.

Are there jobs that hire machine learning professionals without PhDs? I think the field is pretty specialized and not something you can just 'get into'. Could be wrong on that.

Going backend would really bump up your skill. I'm back end and you can go super deep into the stack i.e. all the way to the hard ware.

There's IoT, robotics, data science, cloud engineering, back end web dev, etc.

And it's a good combination with front end.

Or go hard core front end and get in 3d animation, interactive media, and make super cool and advanced front end shit.

I have the opposite problem, I have too much stuff I want to do.

What kind of backend development do you currently practice? Language? Stack?
I'm like half web/half cloud. Python/PHP/Java. Languages kind of blur together after a while it's all just semantics, unless you get into FP stuff like Erlang.

Worked on Projects in Laravel. Worked on AWS Serverless apps with Python. Currently working on a Spring Boot Java app.

I got K8's certified and I'm learning Rust, so I will look for those two in my next position. I think those are the stacks of the future.

If you've ever worked with AWS/EC2 and then try out k8's the change is a breath of fresh air.

Also, Rust has no garbage collection and is blazing fast and can also transpile to web assmebly? Yes please.

I personally think the stack of the future is K8's/Rust/Svelte.

I don't see it yet so I'll add another: UX Architect. With your frontend knowledge and potential interest in a product role, the UX space might be a good fit. It's a great space for not getting bored because it's not super well defined and is pretty large in scope. One say you might be broadly looking at a problem space, and the next you might be working on a nuanced solution with mocks and prototypes.

While I appreciate all backgrounds, I'm a huge fan of UX-ers with engineering backgrounds (vs, say, design backgrounds).

I've made a successfull switch 10 years ago to UX/UI designer. I had a keen intrest in the area and some proficiency from leading different types of workshops as a lead developer as well as being a hobby artist. This was before UX became a term so a lot of the lead dev work for me had some UX characteristics. Still, I consider it a path for some developers. May not be for you but.. If you have talent in that direction it's a rewarding job where you can utilize your tech skill. It will give you a really strong foundation for design work.
It seems like your main problem is boredom; so I would say, try out some new kinds of projects/languages in your spare time and see what you like. You mentioned machine-learning, maybe also consider trying out:

- Back-end web

- Graphics programming

- Native apps

- Game programming

- Systems programming

- Embedded

- Parsers/compilers

I've gotten into a couple of these in my spare time and enjoyed the change of pace from my day job. If you find one you really love, and you feel like doing it as a hobby isn't enough, then you'll have more confidence deciding to take a career leap

I'm a 5-year frontender currently working transitioning to Backend. It's pretty chill, and the challenges are new, and on average the pay is higher.
I would suggest backend as well. It's very different from front end dev and you might like it.