Hiring Managers at Google and Facebook Never Obsess Over This Detail
Don’t worry about which programming language you learn.
PHOTO CREDIT: Getty Images
Which programming language should you learn if you want a job at Google, Amazon, Facebook or any big software company? originally appeared on Quora: the place to gain and share knowledge, empowering people to learn from others and better understand the world.
Any company (but particularly a large one) that is hung up that you know language X, but not language Y, is a company for which you don't want to work. Seriously, because it means that company is staffed by people who think that languages are really important to whether you are a competent. Languages are a tool, like a saw. Whether the saw is manual, table or laser is less relevant than understanding the basic principles of wood and how cutting it happens. There are plenty of people who know Java and are terrible engineers, it isn't relevant knowledge to test.
With a language it is important to understand what's happening with the memory, how is the language using pointers, the stack, etc. C, C++ and similar languages make you know this, so it is good to understand these at least once, even if you never use them again. This way when you use Java, Ruby, Python, etc., you'll have a better intuitive understanding of how your design choices are translating into actual memory operations.
Finally, don't learn just one, learn at least two, hopefully three. This will give you a better sense of what features are often common to most languages and what things differ. The things that differ are hints about the things that cause problems in software development. This will help you understand when you set out to build something whether you should use C or Python or something else, because each language has its advantages based on the problem you're solving.
Also, while the specific language knowledge you walk in the door with is largely irrelevant (hey, Go didn't exist ten years ago), be an expert in the language you use because if you say you're an expert in Python and then can't use it properly in the interview, that is a problem.
This question originally appeared on Quora - the place to gain and share knowledge, empowering people to learn from others and better understand the world. You can follow Quora on Twitter, Facebook, and Google+. More questions: