Estou preparando perguntas para entrevistas de emprego para uma posição de desenvolvimento sênior. O trabalho incluiria design orientado a objetos e o software existente usa padrões de design. Por isso, gostaria de pedir aos candidatos que expliquem alguns padrões de design que eles conhecem, que usaram, como eles os usaram, por que eles usou-os e assim por diante. No entanto, em entrevistas anteriores, quando perguntei a desenvolvedores seniores com pelo menos 5 a 10 anos de experiência sobre padrões de design, quase ninguém nunca ouviu falar deles. Eu acho que dois em cada vinte desenvolvedores poderiam nomear um único padrão de design (Singleton e MVC, respectivamente).
Então, minha pergunta é: faz sentido fazer essas perguntas? Ou esse é um assunto tão obscuro que você não pode esperar que novos contratados os conheçam?
Um desenvolvedor sênior deve ter experiência prévia com padrões de design ou você diria que os padrões de design são um tópico tão simples que todo desenvolvedor decente pode buscá-los durante o treinamento? Se sim, que perguntas você faria para avaliar suas habilidades de design?
Adicionar Depois de ler as respostas até agora, devo dar alguns esclarecimentos:
- O trabalho é para um desenvolvedor .NET com experiência em OOP / OOD
- O código existente usa nomes de classe como
IParameterGraphVisitor
eIStorageFactory
em muitos lugares - Como você pergunta às pessoas sobre suas experiências passadas com os projetos OO que eles criaram, se eles não têm o vocabulário para explicar seus projetos? É isso que eu quero fazer, e tudo o que posso fazer é "por favor, desenhe a hierarquia de design / objeto do seu último projeto no quadro".