Either way, I still believe there are more Unity programmers being "produced" than hardcore ones, and that happens because of this engine monopoly.
However I don't think we've lost anything in this regard; people interested in low level will go low level because they'll have a desire to find out more - Unity and UE4 just open up the game dev world to those who don't care about the details and just want to make games.
OR to put it another way;
Lets say pre-Unity there were 100,000 programmers and 50,000 of them were low level.
Now we might have 400,000 programmers and 60,000 low level - the proportion of low level might have dropped but the over all pool has increased.
Before today people the people doing low level hardcore stuff where the ones who wanted to learn; in my case I looked at a BBC and wondered 'how does that work...' and went from there. You'll still have those people, you'll always have them, they just make up a lower percentage of the programmers over all and that's ok.
In the end we get more cool games to play and the demands of those games feed back into the tech - people who know the tech will always be needed to build and maintain it but it'll be the games which drive it forward.
As to what you should do, well, follow your passion.
If your thing is tech then go make the coolest tech you can.
If you want to make a game then make a game - pick an engine, make your own, but do it because you want to.
That is what has build this business after all.