What Programming Language Should I Learn to Get a Job at a Top Tech Company?

Don’t learn just one, learn at least two, hopefully three.


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. You can follow Quora on Twitter, Facebook, and Google Plus.

The short answer is, don’t worry about the programming language. 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. More questions on Quora:

* Learning to Program: Is learning to code becoming harder?


* Career Advice: Are there any programming boot camps that are more effective than an undergraduate degree in computer science?


* Technology Companies: Why did LinkedIn sell to Microsoft?


Photo Credit: DigitalVision/Getty Images