I don't really know what I want to do in my career. I finished university one year ago, and I work as a full stack engineer right now, and I'm quite interested in ML. I'm more frontend-facing right now, but I see low returns on spending too much time learning new frontend frameworks my entire career. I'm more interested in becoming a well-rounded engineer, so I feel that there would be higher returns on digging down into the backend more. I have been looking at trying to join some big tech company as a backend engineer, but I just went on an interview for a small tech company which does quite alot of ML with the hopes that they were looking for another ML engineer. Instead they presented me with a broad-scoped data engineer role which sounded pretty cool.
My strategy up until this point has just been to find cool roles where I get to learn useful stuff as an engineer from people who are way smarter than me. Sometimes I think "If I would make a startup, would this skill come in handy?" Is that a poor framework? Should I have a plan? I don't even know if I ever want to make a startup lol. I'm interested in joining big tech, but other than that I'm not really sure. I just enjoy building stuff, and I see this as an opportunity of learning data engineering really well (which I don't know very well), but that is perhaps not a wise career choice? Any guidance on how to think as a new grad is appreciated lol.
Should I make a career path or just be open to interesting positions?
There's middle ground here I feel like: You should be open to new opportunities that come up and not try to plan every nook and cranny of your career, but you should also find a general area to focus on. This means picking a tech stack and sticking with it for 2-4 years. You mentioned front-end, back-end, ML, and data engineering: These are all fairly different fields, and it will hold back your career to invest in all of them.
Here are 2 resources to help more with this:
I'm more interested in becoming a well-rounded engineer...
A common misconception I see among software engineers is that they equate having experience in a bunch of stacks to be well-rounded: It is actually completely the opposite. Becoming a well-rounded engineer means that you're developing fundamental skills and behavior that are valuable regardless of the team and tech stack you're working on. Here's our extremely in-depth discussion on how to do that.