Я готую запитання до співбесіди на вищу посаду з розвитку. Завдання буде включати в себе об'єктно-орієнтований дизайн, а існуюче програмне забезпечення використовує шаблони дизайну, тому я хотів би попросити кандидатів пояснити кілька моделей дизайну, які вони знають, вони використовували, як вони їх застосовували, чому вони використовував їх тощо. Однак у попередніх інтерв'ю, коли я запитував старших розробників, які мають принаймні 5-10 років досвіду роботи з моделями дизайну, майже ніхто ніколи не чув про них. Я думаю, що два з двадцяти розробників могли назвати єдиний шаблон дизайну (Singleton та MVC відповідно).
Отже, моє запитання: чи є сенс задавати ці питання? Або це настільки незрозумілий предмет, що ви не можете очікувати, що нові наймачі вже їх знатимуть?
Якщо старший розробник має попередній досвід роботи з моделями дизайну, чи ви сказали б, що дизайнерські зразки - це така проста тема, що кожен гідний розробник може підібрати їх під час навчання? Якщо так, то які питання ви б замість цього не задали, щоб оцінити їхні дизайнерські здібності?
Додати Після прочитання відповідей, я повинен дати кілька роз'яснень:
- Робота призначена для розробника .NET з досвідом роботи в OOP / OOD
- Існуючий код використовує назви класів, як
IParameterGraphVisitor
іIStorageFactory
у багатьох місцях - Як ви запитуєте людей про їхній минулий досвід роботи з створеними ними проектами OO, якщо у них немає словникового запасу, щоб пояснити свої проекти? Це те, що я хочу зробити, і все, що я можу придумати, - це "будь ласка, намалюйте ієрархію дизайну / об'єкта вашого останнього проекту на дошці".