I had this interview for a Software Development position. I'm from Kosovo and the job opening was in Germany. They were also offering visa sponsorship. I'm a Web Developer and the position was open for all levels. Rating myself, I'm way off the "Junior" title, but also need a few more years of work experience to go "Senior".

So the Skype interview was nice and the interviewer was really friendly. However, he asked me 2-3 questions and he concluded I'm not a fit for his team.

First question: Explain the IoC container.

Second question: Explain the repository design pattern.

After I struggled answering the questions, especially the first one because I wasn't aware of the term, but I knew about the design itself without putting a term to it, the interviewer said I'm not a fit for his team.

I also showed him a 5% completed API that I'm working on and he said that my code is really good and clean, but I have too many controllers... All while being unaware what the actual project is and why it needs those controllers (they were just scaffolds anyway, I'm still far from touching those parts).

He told me that HIS team needs a Senior level developer, but he'd pass my CV to the other teams which need other levels - I haven't heard from them and its been over a week.

Anyway, how does not knowing these terms make you a bad programmer? I believe that these interviews should be more technical and require the interviewee to write actual code that might be suitable for the company. I think asking "What's an IoC container" might confuse a lot of people and it's an unfair way to check if the interviewee is qualified.

This is the first time I've had a "professional" interview with a big company and to be frank, I felt a little unprepared and intimidated. What are some tips to handle these interviews like a pro? Do I really need to know programming definitions?

  • 2
    How are those technical things related to that it's an international interview, or to Germany or Kosovo? – simbabque Aug 10 '16 at 13:23
  • Well, the interview itself was international and not local. Hence the use of the word "international". – aborted Aug 10 '16 at 13:38
  • 3
    Would you have wondered about a local company asking those questions? Are German companies stricter? I think your title does not fit your question body. – simbabque Aug 10 '16 at 13:59
  • I specifically added "international" because the interview definitely differed in the question asked compared to where I currently live. In Kosovo I would be considered a "senior". – aborted Aug 10 '16 at 14:01
  • That's why people study for job interviews.... Interviews tend to have questions that are more like tests, especially phone interviews when they can't see you and you can't draw/write things to demonstrate to them. – CleverNode Aug 10 '16 at 17:24

Yes you really need to know the technical details of your profession once you get past entry level. Yes you need to memorize them. Yes you should be able to explain the concepts and not just code. At the more senior levels, you need to be able to drive decisions that affect large parts of the project and prevent poor code or unmaintainable messes and thus you need to have expertise that is more than superficial. The interviewer is looking for someone who understands what he or she is doing not a code monkey.

There are no unfair interview questions (there are however illegal questions). Just because they didn't ask what you wanted to be asked, doesn't make the question unfair. Get over that attitude right now. Company needs vary, they choose to ask what they ask because they know what they want in a person. If you aren't that person, then it is just as well you got weeded out because you wouldn't be happy. However, I personally have never had an interview for a technical position that didn't ask a lot of technical questions because companies need to know what you know. There are many incompetent people in our business and they have to have a way to weed them out. If it weeds out some competent people along the way,then that is better than letting the incompetents through.


What are some tips to handle these interviews like a pro?

Be prepared. There are tons of books on the topic so I won't go into detail. Read a few of them. And then practice, practice, practice.

Do I really need to know programming definitions?

Yes. You definitely need to know your job specific vocabulary. What would you think if you car mechanic talks about "that runny-runny-thingy that makes the car roll"? Personally, I think that asking for two specific patterns and nothing else is very short-sighted, I would have expected more questions. But in general, I think those were good questions to see if you can develop professional grade software as a senior. Communicating the concepts you use is a part of the job and explaining those concepts to more junior people is something that can be expected from seniors.

  • Well, I wasn't applying as a senior anyway. As said, I consider myself a Web Developer without any preceding term. I also mentioned this at the beginning of the interview. Could you point me to some books? – aborted Aug 10 '16 at 13:08
  • @Aborted Just enter "interview" at Amazon (or your translation of "job interview"). You will get a ton of alternatives. I haven't read them all and none is perfect. Just read a few of them. They are pretty general, you can probably exchange them with people you know from other jobs so you don't have to buy that many. – nvoigt Aug 10 '16 at 13:12

Not the answer you're looking for? Browse other questions tagged or ask your own question.