I am a python developer with around 1 yoe looking to make a jump. I am thinking to improve my programming skills in a complied language since most of the job requirements I see mention that they need java or c++ experience. I worked with both java and c++ in school. I don’t really have a preference for java or c++, but kinda intimidated by c++ as I found it a bit harder than java and also people in general talking about C++ being more cumbersome to deal with. Which language should I choose for better career growth(looking into distributed systems/ cloud domains). Java or C++? TC:125k 1YOE
Java will definitely cast a wider net for job opportunities. The only reason I’d recommend C++ from a career perspective is if you want to work on stuff that’s basically only in C++ (game engines, low latency work, low level OS and networking virtualization, etc). I also personally think C++ is just a better language than Java despite its flaws but that’s just personal preference.
"complied" language -> OP should just use Java.
Building a deep knowledge of C++ will teach you enough to pick up any other language & use it highly effectively. You’ll understand what the systems are really doing. Java is widely used, but poorly put together, you won’t learn any good fundamentals with it.
^This
C would be a much better option for programming close to the hardware to learn the fundamentals.
C++ is the only language.
Trump is the only president.
Don’t listen to Nvida. C++ has become a clusterfuck and is irrelevant for most jobs. Even Bjarne Stroustrup, the creator of the language, regrets its existence. If you’re working on web applications or cloud like most software devs, go with Java. Rust and go are preferred over C++ for system software.
Rust and Go are preferred for system software? Operating systems, High perf databases, storage systems, etc are still written in C and it takes an unprecedented scale effort to move anything at system level away from C or C++.
That’s at the extreme of system level software. I meant more like Kubernetes. Also, a lot of the newer databases use a storage layer written in c such as rocksdb and implement the higher level functionality in another language such as Go.
Thanks for the replies guys
India
Yesterday
1282
Modi is a legend, will be remembered for centuries to come
Tech Industry
2h
1471
What happens when most of your team is Indian?
Tech Industry
9h
998
Women, help me understand why this is inspirational
Health & Wellness
2d
44167
High performers, how often do you have slack off days?
Working Parents
20h
1375
Closed now - thank you all
If you are a good coder, and you get denied because of a language you don’t have experience in... hiring manager is a fool. Smart ones know a good engineer can pick up fairly quick....... but learn java.
Definitely context dependent. For better or for worse, if you have high YoE C++ definitely has enough random esoteric stuff where language specific expertise/experience has real value.
Depends on the case. If you know a real language like C++ you can pick up anything. If you’ve only used python or go; you’re pretty useless doing anything more complicated.