@
timsensor 我比你大点, 以前也是做 C++的, 做 C++一般扩展语言的路线是 Python, Go.
你列出来这些方向都太小众了, 我帮你分析下,写点干货吧.
OpenGL? 去大做 3D engine rendering?? 没多少职位的.
现在很多游戏厂都是使用或者修改 Unity/Unreal. 很多时候会它们的 shader 编程就够用了. 做 Unreal 倒是需要 C++, 不过职位也不多. 一般不如用 C# 的 Unity 职位多.
区块链? 最多需要的是 Go, Javascript (like Ethereum solidity)
https://coinmarketcap.com你把上面的 top 50 区块链都看一遍, 拿着它们的名字去搜索 github.
你会发现如果是新出的链,一半以上是 Go (Ethereum, Chainlink, VeChain, THETA, Avalanche) 实现的, 偶有用 Rust (Polkadot) 甚至是 Haskell (Cardano). 其他的是 BitCoin 的 fork, 当然是 C++, 或者是 Ethereum 上的 token, 使用类似 Javascript 的 Solidity.
毫无疑问, 搞区块链应该转 Go
游戏服务端? 这块应该是 C++, Java, Go, Rust 都行.
如果需要 real-time Action game 后端的话, 应该是 C++/Rust > Go > Java
再来看需求量最大的 web 后端, 现在是 Go VS Java
还是推荐转 Go. 因为 Java 历史 沉淀(包袱) 很大, 现在入场没什么优势了.
综上所述, 保留你 C++ 和 web 后端的经验, 转 Go, 顺便看看 Rust.