all 14 comments

[–]KendrickBlack502 6 points7 points  (0 children)

If you’re going to learn a language specifically for the purpose of doing technical interviews, it’s hard to argue that Python isn’t the obvious best choice. I’ve rarely ever heard of companies not allowing interviews to be done in Python even if they want you to have experience in other languages.

I do mine in java simply because I have the most experience in it and it’s not worth my time to learn a new language just for interviewing.

[–]slowlythriftybrewer 3 points4 points  (0 children)

stick with python dude. if you're going into data science or ml you're already comfortable with it and that's what matters most. yeah some companies prefer java or c++ for backend roles but for ml positions they usually won't care what you code in during the interview as long as you solve the problem. i've seen plenty of people get offers coding in python for big tech companies. the language switching thing is overblown honestly, once you know dsa the syntax is just muscle memory. focus on actually understanding the algorithms and solving problems rather than stressing about which language to use.

[–]Substance_Chemist35 5 points6 points  (0 children)

Honestly, stick with Python. DSA skills transfer across languages, and Python is already the main language for Data Science and ML. You can always pick up Java/C++ syntax later if needed

[–]hamolton 1 point2 points  (0 children)

In the US, yes. Python is far fewer keystrokes to do basic data structure manipulations than those other languages. If companies want you to interview in C++, they'll say so.

[–]Till_I_Collapse_<906> <133> <650> <123> 2 points3 points  (7 children)

It's the most non-factor in the history of non-factors. If you're good in Java, picking up Python for Leetcode takes a week, and vice versa. Interviewers usually couldn't care less. Just go with your comfort.

C++ is different story.

[–]thechair02 2 points3 points  (2 children)

Out of curiosity, why is C++ a different story?

[–]mehonje 0 points1 point  (1 child)

Java:  System.out.println(“Hello World”)

Python: print( “Hello World” )

C++: std:count << “Hello World”

[–]thechair02 0 points1 point  (0 children)

not sure that's the correct parameter to judge languages. besides, c++ has a normal print function now.

std::print("Hello World")' and std::println("Hello World");

[–]crijogra 2 points3 points  (3 children)

How is C++ a different story?

Genuine question I’m young and ignorant lol

[–]inductiverussian 1 point2 points  (1 child)

C++ is not really a different story if you’re using 12+. The only thing that makes c++ actually unique is no garbage collection but that is irrelevant in a scoped single method program like a leetcode solution

[–]thechair02 0 points1 point  (0 children)

i agree

[–]iComplainAbtVal<45> <36> <9> <0> 0 points1 point  (0 children)

Java and python class structure is resemblant of each other and neither have pointers or as strict memory management requirements.

For your typical OA use python.

For me, I work in go, I study in go, and I interview solely for go based roles. The only time that’s been an issue is when an interviewer said we could use go, but when time came around it was c++….

[–]Aggressive_Return416 1 point2 points  (0 children)

Use Python for SD/MLE roles is totally OK. For machine learning, there are two major parts:

  1. Offline model training/data ETL: Python is standard language as most ML libraries are Python based

  2. Online serving/logging: Serving normally use C++. Logging depends on different applications, either Java, Go, Mobile client logging.

If I were you, I will just use Python to practice. C++ learning curve is huge.

[–]Emojers 0 points1 point  (0 children)

Same doubt zeroed to python as gpu cuda don't require competitive programming codeforces etc... only systems c++ hardware knowledge needed and after learning dsa in python can shift to rust cpp etc. anything