I have been working freelance for a few years, and before that I worked as an entry-level coder for a non-technical company. I “understand” how delegates, and MVC, and how to make an app and make it work, but I have done a few interviews recently and they are throwing questions at me that I don’t know the answers to. These are questions that I think I should know the answers to, but I basically haven’t ever had to use the technical language. Needless to say I feel very stupid when this happens but I don’t know how to prepare / remedy this problem without going back to Comp Sci 101. It’s like I can do the work, but I don’t know what they’re talking about.
Any suggestions would be much appreciated.
1
Jargon familiarity is something that should improve as you get more experienced, but even veterans will run into jargon problems sometimes — not just at interviews, but as part of daily interaction with clients and even team members.
The most important skill for such cases is the ability to ask for clarification. Even if you think you should know the answer, you need to learn not to let that stop you. Even if you think you probably do know the answer, you might want to consider asking anyway, to make sure you’re tracking properly — misunderstandings can be costly.
Learning to ask such questions gracefully will come with practice, also, but that is a skill of secondary importance…
As part of the basic research that is helpful before any interview, you can try brushing up on jargon relevant to the particular job. However, I would not advise giving much effort to or reliance on such cramming, as that kind of knowledge is shallow and fragile. Other elements of such research (such as what the company does) are likely to be more important.
Finally, if you feel you need a general refresher on CS101, you have a couple of options. You can go to the library (or to Amazon, or the Internet), locate a good text or three, and do some self-study on whatever subjects you feel weak on. Or, you could look into some local institution that offers continuing education, and actually take a refresher CS course or two.
2
Read more Stack Overflow.
This site is jam packed with tech jargon. You may be able to get some meanings just from the context; if you’re not sure, use the tag wiki, Google, and Wikipedia to help. There are lots of ways to expose yourself to new terminology on SO, including:
-
basic participation: just reading questions and answers
-
tags: the tags section is a rich source of terms and definitions
-
review: reviewing questions and answers can help you get outside your comfort zone
I think this is very common. It’s surprising how different teams and people use completely different jargon but actually mean the same thing. One person might say “Make a web request” and someone else will say “Send a HTTPS GET” and they both mean the same thing, but they don’t understand each other.
The best thing to do is to ask to rewind the conversation back to before you got lost. You need to start again back at the point when you both understood each other, and then start adding complexity from there. They might even be talking about internal system names which can be really confusing. You need to ask for clarification of terms, technologies and acronyms – once you say “Oh you said X, I call it Y”, you’ll be in a much better position, and they should respect that, and it actually shows good communication skills.
I’ve found that acronyms are the worst… just ask them “Sorry, what do you mean by XYZ”?