Why do interviewers ask advanced questions?

I have been programming for several years in C # and XML. I used only the basics of these languages ​​and survived on the Internet for information such as arrays and text manipulation. But when I interview, the interviewers ask only complex questions - I found answers later in the "Advanced" sections in books on this subject.

Why are interviewers asking such cutting-edge questions? The work looks almost the same as what I did before, so advanced knowledge such as a delegate class or XPath commands is needed.

Questions:

  • Which version of XSL uses .NET 3.5?
  • Which XPath command to use to get the value in an X element?
  • What are class delegates in C #
  • Does C # provide multiple interface inheritance?
  • How do you access the GAC in C #?
+7
c # xml
source share
17 answers

There are two reasons why I ask them.

  • To see how a person really says “I don’t know the answer to this,” as opposed to BS trying to do this.
  • To find out what skills a person has to solve logical problems.

Usually the question will be one or the other, but not both. Both of them are extremely valuable when checking a promising employee.

In addition, the question may not be “advanced” for the position. It is reasonable to assume that senior and / or architects may answer questions that may be from a junior to intermediate level.

+36
source share

Perhaps because they are trying to find programmers who know more than the basic things. If they try to distinguish the field of candidates, it is not useful to ask questions to which everyone knows the answer - how do you choose among these candidates? If you intend to hire only 1 or 2 from the pool of candidates, you need to find more complex questions that only 1 or 2 pools can answer.

+12
source share

Getting the wrong answer is what I want from the applicant in some cases.

One of the reasons why I like to ask a question that, in my opinion, the applicant is mistaken is to see how they adapt to the situation. How do they cope with getting something wrong and turn to someone, telling them how they should answer, etc. If they are very protective or rude when you tell them that they are wrong, then this is a good indicator of how they will work in a team when ideas are challenged many times.

If they make a decision or recommendation and understand that they can learn from it or even add to it, which is usually a sign of someone who is easy to work with and willing to work "outside their box." If they just make excuses and dance around, trying to say why they may be right or should be right (in cases where they are clearly not), then this will tell me when the same problem arises in the future, this applicant will cause headaches pains.

Not so worried about the answer, more interested in how they respond to the question / solution.

Another reason is to evaluate their level of employment. You may be hiring a bunch of positions, but you don’t know where this applicant fits. Difficult questions that show a solution to a problem and attention to detail can sometimes facilitate the categorization of their skill set.

+11
source share

I ask advanced questions for several reasons:

  • Some of my questions are the expanded use of things that everyone should know (and not the little things). I want to see that you reason through the answer, using the knowledge you have, but not so often.

  • I want to see what happens when you don't know anything - do you give up?

  • I want to hire people who are serious about what they do. People who really care about the technologies that they use tend to want to know advanced things.

  • I want to see if there are gaps when you simply do not know that there is even a whole field of knowledge. For example, in your XPath example, I might be fine: “I believe that XPath can be used to solve this problem, but I don’t know that it’s good enough to write here,” then I would show them a little XPath and see whether they can apply it. If you don’t even know that XPath exists, Google will not help you.

+7
source share
They probably just get an estimate of where you are. They were probably stuck with this problem and might have wanted to see if you could come up with an answer on your feet.

I had the same questions, and given that I use excessive resources when programming, this type of thing usually throws me off. Their loss.

+2
source share

Since the competence of a programmer includes both the depth and breadth of knowledge.

+2
source share

The interviewer is trying to develop his level of knowledge, and he copes with the "borrowing" of the question from the last chapter of this book.

Indeed, this is a sloppy job on his part, relying on one question to determine the level of your expertise. You may have low programming skills, but recently they come up with one word and they can conduct interviews.

I managed to burn once in an interview with a candidate who professed a high level of knowledge of C. It turned out that he read "C for Dummies" and led the BS through an interview process. I admit that I did not concentrate on his programming skills, but was looking for other aspects that he also helped BS. Turns out his full summary was a pack of lies.

Currently, I am convinced that the candidate has knowledge of the scope, persistance variable, pointer arithmetic, basic algorithms, structured programming, object-oriented programming, polymorphism, multitasking, and interprocess communication. I will answer him with his debugging skills and zero granularity, such as race conditions, heisenbugs and security vulnerabilities.

Depending on the tasks, I will ask a question about the experience in the target language - for example, keymaps => values ​​(arrays) in PHP, Swing programming in Java, event handling in C #, tables against CSS in html - you get an image.

If the candidate passes the first part of the interview (I usually know for about 5 minutes), then I will give him a binder and send him to the coffee shop (a nice sofa and a table there) in order to prepare for 20 minutes to review the code on the selected module.

What, when I send in the troops, the workers are ordered to use the coffee room normally, introduce themselves and talk for a minute.

What I'm looking for is the ability to focus on the task (egregious ADHD), ability to work under pressure and interpersonal dynamics.

When the candidate returns, I act as the keynote speaker and begin our regular code verification process. The first thing I'm looking for is to read a page entitled "Code Review Process." I'm not looking for him to complete the review - 10 minutes is enough. In fact, the less the main lines are processed, the better - within reasonable limits.

I have not been burned by a new hire for a long time.

+2
source share

Your username tells you how to encode (duh), but your question tells you that you are not doing this. If you really liked coding, you should love to find out about it. Those questions that you have indicated are not so advanced.

Even if these questions have been put forward, the interviewer is trying to assess how much knowledge you have in the field of which you are talking about, you have knowledge. They are also trying to gauge how well you would fit in their group.

PS Do not be mean, but if you program using XML and do not know what XPath is, then you are a bit far behind.

+2
source share

They probably want to find out if you really know what you're talking about, or if you are a novice programmer who gets along on the network using only what he got through the trial version and the error ...

+1
source share

1. What version of XSL uses .NET 3.5?

Because they cannot distinguish important things from important ones. Bad sign.

2. What XPath command to use to get the value in the X element?

Because they want to see if you know XPath. This can be either because they use it extensively and you need them to work, or because they believe that knowledge of XPath == skill.

3. What are the class delegates in C #

(I have never heard that the term "class delegate" and a Google search do not show a definition, so I assume that you mean just "delegate"). Delegates can hardly be considered a cutting-edge topic.

4.Does C # allow inheritance of multiple interfaces?

If they really ask about the "implementation of the interface", it is part of the very basic concept, so this is the right question (although it means something meaningful too simply). If they really ask about “interface inheritance”, this is more nonsense, but I would still say that this is acceptable. Bonus point for them if they ask what the interface inheritance really means.

5. How do you access the GAC in C #?

This is what every team MUST have one person who knows. I would say that this is also an indicator of seniority (which I’m very interested in), since no one reads about these things, the only way to find out is to make the real problem be solved.

+1
source share

I ask advanced questions to try to understand how people deal with this problem. I like to ask questions that I don’t know because of my head for this reason.

I want someone to be a critical thinker, not just an academic who can read text books to me.

0
source share

They want to find someone with practical experience who goes beyond what is taught in beginner courses. When my company interviews candidates, we often find that most applicants cannot decide what we will consider as very simple programming problems, simply because they do not know the API or do not understand when to use the various underlying data structures.

If you want to impress the interviewer, work on your own programming projects outside the classroom. Learn a good piece of the API language and start exploring third-party libraries that can greatly simplify your work.

0
source share

Another reason is to evaluate your answer to a question that they really did not expect from you in order to find out the answer. The ability to solve problems is important, therefore, asking you questions that you already know, the answer to them is not going to solve, is it?

There are even cases where companies ask strange, non-programming questions, just to understand how you think about your path through the problem. According to reports, in a Microsoft interview there is a classic question, "Why the round question of lighting hatches."

Additional Microsoft interview questions

0
source share

I’m not going to insult you, but maybe your understanding of the work is not deep enough, and in fact it requires knowledge of best practices. In addition, you can do many things with basic methods, but best practices can be better implemented in terms of complexity, implementation time, or maintainability.

0
source share

There are many possible reasons. They can:

  • actually use these methods (delegates and XPath are not particularly rare or obscure).
  • have a large pool of candidates and want to try to find more recognizable ones.
  • I want to see where your knowledge is limited, so they ask the question to such an extent that you cannot answer well
  • if you want to see how you can approach areas unfamiliar to you - see how you can adapt to new materials.
  • want to show their own knowledge (perhaps not a legitimate reason, but this certainly happens)
0
source share

I heard that they are not really used anymore, or at least not as much as before, but you may be interested in this. A few days ago, I picked up a pretty cool short book that should deal with the Microsoft-style logical interview questions that are sometimes asked. I have several chapters, and it gives a neat little history of the style of the interview with the text and has a lot of logical problems, complete with answers in the back.

He called "How would you move Mount Fuji," and on Amazon, it's pretty cheap.

http://www.amazon.com/gp/offer-listing/0316919160/ref=dp_olp_used?ie=UTF8&condition=used

0
source share

I just finished a round of interview where I use three or four simple “fragments” of C # code, which the interlocutor will look through and try to explain what the expected result will be. In each case, the sample code is no more than ten lines of clearly formatted code that uses the basic skills of C # (inheritance, generics, anonymous delegates); there will also be a “gotcha” in each case, but others say I won’t get angry, they are there because I want to see how the candidate reacts when he encounters something that does not work as expected.

We recently had a candidate who missed the first part of his interview; impressive CV, was apparently the lead developer of a team of 10 people and developed code in C # with 1.0; but apparently didn't have a clue that "Console.WriteLine ()" (and he couldn't even guess), and he couldn't even handle the tiny anonymous delegate example.

The other candidate was self-confident and did not know how to evaluate himself as a developer - she had less experience than the previous candidate, but she sailed through the code samples, fell into a couple of “gotchas”, but asked the right questions to get the right conclusions and on -Really learn from experience. Needless to say, she was hired.

If you require domain-specific knowledge (such as XML), you should expect specific (and sometimes complex) questions about that domain; if I interview an older ASP.NET developer and they have no idea about HttpModules or HttpHandlers (for example, some recent interviewees), then the calls begin to ring.

0
source share

All Articles