I really enjoy making games and simulations, but I have trouble picturing myself working in the industry, as I really want to work on technology that solves problems. And if I were to "specialize" as a game programmer, I would probably be a generalist in that subfield.
One area that I find extremely interesting is the realm of real-time, embedded software. My dream job would be at Tesla Motors, writing software for autonomous cars. Unfortunately, it's not as easy to get experience with embedded systems as it is to get game programming or web development experience. And, for the same reason, it's not as easy (or cheap) to amass a portfolio of, erm... UAVs, robots, elevators -- what have you.
I also enjoy making web applications, doing system administration, and everything in between. And I can't deny that I've had my "start x website in dorm room like Zuck and be rich" entrepreneurial fantasies.
Does anyone have advice or words of wisdom? If I had to choose one area to specialize in, it would be embedded software, but I feel like I could get a ton of great experience as a game programmer on my own, for free, while getting a cursory glimpse at embedded systems would require more than just time as an investment.
How might I pursue a career in embedded software? I think the real-time nature of game programming would be a nice complement to real-time embedded software development. Should I pursue both?
Sorry about the essay, but this dilemma has been bugging me incessantly lately.