HACKER Q&A
📣 jack_daniel

Switching career path at 36. What is the right way


I am a software developer of 36 years. I have been a java/PL_SQL dev for most of my career and been working on Angular for the past couple of years. However I don't see my career going forward and I am not interested in learning Spring Boot or any additional Java Skills as I am afraid it is not going to help in long run. Also Angular is also becoming irrelevant thanks to Vue/React etc. So I am thinking of switching role and transitioning into a Data Scientist or AI/ML engineer. I can put in the hours to study and do self projects, but I am worried if I am too old for a transition now, given that I am already 15 years old in the industry. Should I stick with what I know already and improve on it or can I transition into a Data Scientist role? Thoughts?


  👤 runjake Accepted Answer ✓
It's your life. Follow your dreams, as they say. 15 years is a good long time. I am well over a decade older than you and I'm planning my next career after I retire in 10-ish years.

I'll throw another tip in here: stay in excellent physical shape. It'll help fight any perceived ageism that comes along. I by no means look young: I am wrinkled and my head is very salt-and-pepper and my beard is pretty much white at this point. But I am in excellent shape - better perhaps all of my peers. And so the ageism thing doesn't seem to be an issue. As a bonus, you'll enjoy life more and probably live longer. STAY FIT. In a few years, it'll get much harder to do so.


👤 rman666
At age 56 (last year), I switched from a 20+ year career in information security to organizing an AI/ML startup. It’s something I always wanted to do. I did what everyone else wanted me to do for so long. I decided to do something I wanted for the last 10 years of my career.

36? You’re barely hitting your stride!


👤 ystad
It is never too old to transition and 36 is not old. Have a growth mindset. Don't listen to anyone who says it is too old to switch. You have one life to live, do what makes you happy.

Here is one advice, check that you want to move to AI/ML for the right reasons, not because it is the next cool thing.

One strategy: Take some of the courses in ML, for example Andrew Ng's course on ML and Deep learning. If you enjoy the course, next find a real project to do and see if you truly enjoy it. If you do enjoy it then switch, otherwise Java programming is always there. I have found real ML is a lot different from Andrew Ng's course for example, pretty much like doing algorithms in class is different from real world programming.


👤 playing_colours
It's not late to switch at 36. My suggestions would be

* do not throw your past experience and start from zero, cash on your experience: learn some Data Science / ML / Data Engineering and transition to the role where you can work closer with them: building data services, productionising ML, etc.

* try before committing. I personally thought that due to my experience in software and passion for mathematics ML would be a natural chemistry for me, but I found it quite boring (comparing to both doing pure mathematics and building software).

* the area is still hyped and there are lots of people who wants to get there - it raises the hiring bar.


👤 streetcat1
So I would switch but not to AI/ML. Most of the work in AI/ML is not training models , but the infra around (getting the data, scrubbing the data, securing the data, etc). So most of the work is regular software engineering.

Also, most of the simple DS tasks, will be automated by AutoML.

If I were you I would learn golang or Rust. You can join a data engineering group or any company that is moving to cloud native architecture.


👤 thorin
You aren't that old. I've been doing Oracle PL/SQL development with reporting/BI for over 20 years.

I started doing Java dev and found out that it's really a full time job to have a decent awareness of all the Java and spring framework or EE stuff so I never really progressed it. I've also done the same with .Net and web dev (including various frameworks) and mobile.

This has given me a good overall technical knowledge and I'm now working as a technical architect for various types of systems which include databases, microservices, rest, queuing, cloud etc. I still get to do some technical low level work as well as high level design and discussion/mentoring with devs and business. It seems to fit well with my skills, is well paid and currently in demand. It does require a bit of a change of approach compared to low level work.

I'd avoid ML/AI or anything "cool" unless you have a particular interest or aptitude for it. Don't spend too long on any particular framework as they will change soon enough.

Good Luck!


👤 jimmyvalmer
I'd say the majority of your demographic (mid 30s Java jockey) feel this way. Knuth said always do the opposite of what's hot.

👤 Jugurtha
>So I am thinking of switching role and transitioning into a Data Scientist or AI/ML engineer. I can put in the hours to study and do self projects, but I am worried if I am too old for a transition now, given that I am already 15 years old in the industry.

There's a lot of the heavy lifting done in Spark (written in Scala), and many parts of the "ML" ecosystem are on the JVM, either with Scala or Java, so you can leverage your experience with that. Kafka is also used and written in Java. Often times "data scientists'" output will be a Python notebook, and in many organizations someone "translates" that to either Scala or Java if they don't want to use pySpark.

My point being that you can have a smoother transition than what you imagine. A huge part of the work in "AI/ML" is not model building, and that could be your entrypoint.


👤 rmk
Plenty of useful software is written in Java. It's not going away. But if you want to move away from Java, then I'd suggest staying in programming, but learning Go. Plenty of enterprise software is now beginning to be written in Go, so having a background in it can generate initial interest from Hiring Managers. However, it is just that: initial interest. You still need to demonstrate general coding ability and capabilities that any good candidate would be expected to demonstrate, such as good communication, being personable, showing enthusiasm for the work, paying attention to detail etc in order to get ahead (it would also include a fair bit of moving on from dead-end jobs). All of that will not change simply by moving to Go programming or Machine Learning.

👤 sushshshsh
I would advise you to question what you don't like about Spring Boot. I also don't like Spring Boot and React but I write them because money. My personal projects are not in spring boot and react and those keep me plenty happy on the side when I need to detach. Good luck!

👤 sh461
You're kind of conflating two different types of career change - switching tech stacks vs switching the domain in which you work. You could switch to a different web framework if you think Angular is becoming irrelevant (same domain, different tech stack). Or you could look for companies that run their ML on Java (familar tech stack, different domain). Yes, those companies do exist.

With either of those your past experience carries over to some extent. But if you decide that you want to be a data scientist and use Python, then you're putting yourself at massive disadvantage. First, because your past experience is far less relevant. Second, because there's a huge oversupply of beginner data science/ML people who use Python.


👤 giantg2
I see a lot of comments about not being too old to switch. I generally agree with that but just want to point out that it is different for everyone. So it's also ok to stick to what you know if you think that is best.

I'm a little younger than that and I'm already starting to struggle with constant stack switching and the much larger scope of the stacks (AWS DevSecOps using multiple services and languages). I didn't really have a choice since I was in Neoxam and FileNet. I think Angular is much more popular than those, so you should be ok for at least a couple years if you wanted to stick with it (my company uses Angular and has no plans to switch any time soon).


👤 p1esk
At 34 I transitioned from a product manager to a deep learning researcher. No previous coding experience, and most of the math I learned in college (as a mechanical engineer) was long forgotten. I went the phd route, so it took me ~6 years, but with your background it would probably be faster. I really enjoyed my grad school experience, and I'm enjoying my current role.

👤 markus_zhang
Data Scientists use heavy math. You might need a PHD for that. On the other hand, I think you are suited for big data engineering which may use scala, python, cloud based computing and most importantly your exp relates.

👤 usgroup
Yeah thing is people now routinely have their first kid at 36. Just everything has shifted forward and you’ve no frame of reference for it because you’re living it. Your generation is going to do everything older.

👤 smarri
It's never too late. Invent yourself then reinvent yourself.

👤 segmondy
If you believe you're too old you're. If you believe you're not, you're not.