527 karma · joined May 29, 2012
I'm coming up on my second decade in the tech industry, and all I can say is you gotta find out what fills you up and do that outside of work like the others have said. I started out in the game industry thinking I had finally arrived, but quickly burned out and moved into web dev for most of my career.
I find working on pixel art, music, and tech in concert very fulfilling, but I don't think I could ever cede this to a company for marketing/support/etc. or turn it into some sort of income to pay my bills. Ultimately I set clear boundaries around work for delivering on my workload inside normal business hours and outside of that is fully my time.
Anyhow, here's the url:
I guess if you want to make gobs of cash, fine. You could also just go into finance and make more than FAANG money if you're talented enough.
It still can and like others have said it does exist in some places. I mean this site is an example, right? :)
So I would say engineer is a poor term, but also the only one we've got for now.
I think this sentiment largely comes from the era when Microsoft Windows XP was the dominant Windows flavor and also the ME/Vista debacles.
All I can do is sigh, and hope for a brighter future.
In Vulkan, you're going to be manually describing to the GPU every last atom of your graphics pipeline. You also need to worry about how it's all laid out in memory through a bunch of descriptor objects that you're building in tandem. Then there's syncing between the GPU and CPU via semaphores etc to transfer data, which can be error prone and hard to debug. This results in very verbose and hard to read code. If you've never touched a graphics api before, I think frustration starts to mount and you'd be more likely to just give up. The upside is you have total control over how the GPU interprets and executes your workload (most likely a triangle as a beginner :P)
Anyway, a lot of this is hidden away in DX11 or OpenGL, you call a few functions here and there and it will do all of these lower level concerns for you. I think once you get used to the jargon and feel of apis like these, you can then start to see how Vulkan or a similar low level api would fill in between the higher level procedures/objects.
Edit: For any graphics api, imo, if you're concerned about building a game you'd probably also not want to touch those apis directly from game code. In DX11 or OpenGL it's not too hard to wrap that up in a bit higher abstraction but in Vulkan you'd almost first want to wrap Vulkan into an api that can be used without writing a ton of manual setup and then use that api to write a higher level, more game appropriate abstraction to call from the game's code. (usually done as part of an engine/framework)
Edit 2: Having said all of this, you could ignore all of the nitty/gritty details and just copy paste the code from the tutorials and make a workable api for yourself to try to understand. Up to you and how you like to learn.
edit: These are the only 3 platforms I have experience with, there are certainly others.