So i'm a entry level engineer and was reading some post on twitter about getting deeper in CS to be taken seriously. The post mentioned learning a lower level language and I always wanted to learn C++. But when i asked my friend who is senior that then went on to become a CTO at his own company he told me I should learn java since it's low enough that a lot of systems are built on it which in return means more jobs. When I looked at job listings for both languages there were fairly the same amount of job postings but he's saying it would be easier to get in entry level with java and that C++ is more for mid and higher levels. also i always wanted to learn C++ because i saw that with python is mainly used at hedge funds which eventually in my career i always wanted to join one, so which one should I choose? And please make a choice for me lol and not respond with "whatever you feel like doing", because i'm kinda indecisive with this choice.
Short answer: Java
As a heads up, C++ was my first language (that's what UCLA started us off with), but I transitioned to Java due to Android.
And please make a choice for me lol and not respond with "whatever you feel like doing", because i'm kinda indecisive with this choice.
I get that, but "Do whatever you feel like doing" is actually the right way to think about this. Zooming out, you should figure out (and let the Taro community know) what you want to build, not what language you want to write in. The language is just a means to the end of building cool stuff.
Do you want to build websites? Mobile apps? ML infrastructure? Rest APIs? The answer to this question will narrow down the language pool and allow people to give you a much more opinionated recommendation.
I recommend watching this video too if you haven't already: This Is How Software Engineers Should Initially Learn
Better answer: choose the language which you can learn faster. Sometimes this means starting with the project you have in mind (e.g. Android), and then you back into the language. Java has more obvious application-level uses that are interesting.