Java to głównie praca przy utrzymaniu w korpo za pomocą springa, i jakiegoś orm'a. Na jvm(maszyna wirtualna na której uruchamiana jest java), są już lepsze języki od javy np. kotlin lub scala (ją odradzam, z takim zapleczem będzie BARDZO ciężko). C++ jest trudne, i ma wąskie grono zastosowań (mikrokontrolery, symulacje fizyczne, silniki gier, aplikacje nastawione na wydajność). Jeśli chodzi o frontend, to sytuacja jest niestabilna, masz javascript (lub nakładki np. typescript), html, css oraz frameworki javascript (react, vue, angular). Technologie szybko się tam zmieniają, trzeba być na bieżąco. Do backendu możesz użyć praktycznie dowolnego języka. Obecnie używa się tam głównie Javy (i inne jvm języki), C#, Pythona (polecam na początek), Php (odradzam, większość tutoriali uczy jakiegoś żartu, a nie php pisanego obecnie). Są nowe trędujące języki, w które na początku bym się nie pchał (Go, Elixir). Jest też AI i Machine Learning, tu obecnie rządzi python.
Jak widzisz jest tego masa, więc warto się ukierunkować, bo wszystkiego nie da się ogarnąć. Jesteś młody, więc masz czas i możesz poskakać po technologiach i zorientować się, co cie interesuje. Ja od siebie polecam pythona, prosty, da się w nim zrobić prawie wszystko (nie do wszystkiego jest najlepszy), i ma dużo tutoriali, oraz javascript, też szerokie grono zastosowań, bardziej skomplikowany (ja bym powiedział dziwny).