Vous avez deux approches qui fonctionnent à la fois pour la résolution de problèmes et les questions techniques courtes:
La première est utilisée par votre patron: ne fournissez aucune aide afin de tester le comportement de la personne dans un contexte stressant. C'est une approche parfaitement valable et peut donner des indications sur la personne. Après tout, une fois que vous aurez embauché cette personne, elle ne pourra plus recevoir l’aide constante de tous ses collègues.
La seconde consiste à fournir des conseils et un soutien. Le niveau de soutien importe peu; la seule chose qui compte, c'est que plus vous apportez d'aide à la personne, moins vous aurez à valoriser son succès.
Personnellement, je pense que vous devriez prendre suffisamment de temps pour vous assurer que la personne est incapable de résoudre elle-même un problème et lui faire sentir qu'elle est incapable de le résoudre sans aide. Mais ensuite, vous pouvez fournir une aide progressive jusqu'à ce que vous disiez à la personne la réponse elle-même.
Exemple:
- Pouvez-vous me dire comment créer des propriétés en lecture seule en C #, c'est-à-dire des propriétés avec une valeur qui ne peut être initialisée que dans un constructeur et ne peut pas être modifiée ultérieurement?
- Bien sûr. Je viens d'utiliser le mot clé readonly
.
- Êtes-vous sûr? Pouvez-vous m'expliquer la différence entre une propriété et un terrain?
- Hm. Une propriété est ... vous voyez ... prenez et mettez ...
- Ok. Ainsi, un champ est une variable déclarée dans une classe ou une structure et valide dans la portée de la classe / struct, alors qu'une propriété ressemble à un champ, mais fournit également un mécanisme pour lire, écrire ou calculer une valeur. Et maintenant readonly
? Est-il utilisé avec des propriétés?
- Je crois que c'est utilisé seulement pour les champs ...
- D'accord. Alors qu'en est-il des propriétés?
- Ils ne peuvent pas être lus seulement.
- Êtes-vous sûr? Qu'en est-il des propriétés qui n'ont que des accesseurs?
- Ils sont en lecture seule.
- Cela signifie-t-il que leur valeur restera toujours la même?
- Oui.
- Non, pas vraiment. Le fait que vous ayez une propriété avec un getter ne signifie pas que sa valeur ne change pas pendant la durée de vie de l'instance de la classe. Si le getter fait référence à un champ qui est incrémenté à chaque fois que vous accédez à la propriété, la valeur renvoyée augmente continuellement.
- Droite.
- Alors? Avez-vous une idée de la façon dont vous pouvez implémenter une propriété avec une valeur qui ne change jamais?
- Non.
- Vous pouvez utiliser un champ en lecture seule. Savez-vous ce qu'est un champ de support?
[...]
Donner la réponse est une bonne idée dans tous les cas. Dans plusieurs cas, la personne interrogée a commenté ma réponse d'une manière intéressante, montrant que même s'il était incapable de répondre à la question en premier lieu, il savait toujours des choses connexes.
En outre, en posant simplement une question sans aide supplémentaire, vous n’avez pas trop d’informations sur la personne, mis à part le fait qu’elle connaît ou ne connaît pas la réponse . Fournir une aide progressive peut vous permettre de voir comment la personne pense à un problème.
Il peut également montrer d'autres choses que la personne ne sait pas. Prenons l'exemple ci-dessus: si je m'arrêtais à la première réponse, je n'aurais pas su que la personne ne peut pas expliquer la différence entre un champ et une propriété ou qu'elle ne sait pas ce qu'est un champ secondaire.
Si la personne répond immédiatement, c'est bien. Si elle a besoin d'aide, il n'y a rien de mal à cela. Si vous répondez vous-même à la question, c'est un mauvais signe et nous espérons que l'interviewé sera en mesure de répondre aux autres.