I'm an engineer looking to future-proof my earning potential and open up some freelancing opportunities. My degree is in electrical engineering, but most of my professional experience involves working with fpgas. I've done a little board design, and some c.
I'm concerned fpgas are an increasingly niche device that will eventually get pushed out. I had identified heterogenous computing (opencl, cuda, etc...) as an interesting area on the rise that I'd like to get involved with. Also, I want to learn more about low level computing, things like kernel programming and device drivers. They seem like natural progressions given my work history and I'm also personally interested in developing these skills. But my question is - are they good business decisions? Have I overlooked something else? I have only my perspective and greatly welcome others.