Довольно часто поднимается тема собеседования системных аналитиков. Ну вот как понять, что человек соображает? Программисту можно прямо на собеседовании дать небольшую задачку, какой-нибудь fizz-buzz или сортировку, или ещё что-то бесполезное, что потом в работе никогда не встретится :) С аналитиками ещё хуже — ну что кандидату такое дать, чтобы быстро понять, как он думает? Не просить же написать ТЗ, это долго (можно дать такое тестовое заранее, если, конечно, человек готов делать тестовое. В результирующем документе нужно, в первую очередь, проверить — есть ли заголовок, дата составления и версия; а потом — есть ли структура и заголовки разделов. Ну, то есть, если человек не соблюдает базовую гигиену, это уже звоночек). Но вот чтобы прямо на собеседовании проверить — таких методов нанимающие обычно не знают. Отсюда разные приемы, когда просят порассуждать о понятиях: а что такое требование, а что такое модель, а как выглядит процесс сбора требований... Ну, это как нанимать жонглёра в цирк, и попросить его порассуждать о техниках жонглирования и биомеханике. Вам методист-теоретик нужен? Вы посмотреть не хотите на то, как он жонглирует?..
Я собеседовал не меньше сотни аналитиков на разных проектах, и вывел для себя отличное задание: вот вам текст (1-2 абзаца), оформите его, как таблицу. Это очень простое задание, его можно быстро сделать, и оно очень показательное — сразу многое понятно про кандидата. Удивительно, но многие люди в принципе не способны его выполнить! То есть, простая категоризация и структуризация текста не выходит. Можно и другие варианты вопросов задать: построить модель объектов предметной области, которую описывает этот текст. Или модель процесса. Выписать действующих лиц, их основные действия и результаты этих действий. Очень просто.
Сложность у меня обычно возникает с подбором заданий: чтобы и текст был коротким, и хватало материала для работы. Но вот в группе Анализ и проектирование ИТ-систем (не реклама!) Алексей Краснов сформулировал очень классный текст, который подходит по всем критериям: короткий и содержит много информации. Текст про процесс выработки требований к информационной безопасности, как раз на один абзац:
"Первым шагом надо определить перечень информации, конфиденциальность которой вы хотите (или вам надо) обеспечить. Затем надо построить контекстную диаграмму системы (DFD), затем отметить те элементы, где передаётся, хранится или обрабатывается информацию, конфиденциальность которой вы хотите обеспечить. Далее для каждого элемента контекстной диаграммы, где хранится, обрабатывается или передаётся конфиденциальная информация, необходимо рассмотреть все угрозы, относящиеся к раскрытию информации и за счёт каких уязвимостей. Затем вам необходимо описать требования для закрытия выявленных уязвимостей. Иногда до описания требований ко всем уязвимостям оценивают риски по каждой паре угроза-уязвимость. Для этого надо оценить простоту реализации уязвимости, степень влияния на бизнес, возможности предполагаемых нарушителей, их мотивация, и исходя из всего этого получите оценку риска по каждой угрозе и уязвимости."
Это текст отличный — в нём есть описание процесса, описание понятий и артефактов. Можно вполне оформлять это в таблицу, даже в несколько разных. Тут я, кстати, обычно не подсказываю сначала кандидату — пусть сам попробует понять, про что текст и что в нём можно подчеркнуть при помощи структурирования. Следующий шаг — составить таблицу, в которой есть пропуски, чтобы можно задать дополнительные вопросы. Это — идеальный результат работы, на самом деле. Аналитик на то и нужен, чтобы задавать вопросы и прояснять неясное.
Я собеседовал не меньше сотни аналитиков на разных проектах, и вывел для себя отличное задание: вот вам текст (1-2 абзаца), оформите его, как таблицу. Это очень простое задание, его можно быстро сделать, и оно очень показательное — сразу многое понятно про кандидата. Удивительно, но многие люди в принципе не способны его выполнить! То есть, простая категоризация и структуризация текста не выходит. Можно и другие варианты вопросов задать: построить модель объектов предметной области, которую описывает этот текст. Или модель процесса. Выписать действующих лиц, их основные действия и результаты этих действий. Очень просто.
Сложность у меня обычно возникает с подбором заданий: чтобы и текст был коротким, и хватало материала для работы. Но вот в группе Анализ и проектирование ИТ-систем (не реклама!) Алексей Краснов сформулировал очень классный текст, который подходит по всем критериям: короткий и содержит много информации. Текст про процесс выработки требований к информационной безопасности, как раз на один абзац:
"Первым шагом надо определить перечень информации, конфиденциальность которой вы хотите (или вам надо) обеспечить. Затем надо построить контекстную диаграмму системы (DFD), затем отметить те элементы, где передаётся, хранится или обрабатывается информацию, конфиденциальность которой вы хотите обеспечить. Далее для каждого элемента контекстной диаграммы, где хранится, обрабатывается или передаётся конфиденциальная информация, необходимо рассмотреть все угрозы, относящиеся к раскрытию информации и за счёт каких уязвимостей. Затем вам необходимо описать требования для закрытия выявленных уязвимостей. Иногда до описания требований ко всем уязвимостям оценивают риски по каждой паре угроза-уязвимость. Для этого надо оценить простоту реализации уязвимости, степень влияния на бизнес, возможности предполагаемых нарушителей, их мотивация, и исходя из всего этого получите оценку риска по каждой угрозе и уязвимости."
Это текст отличный — в нём есть описание процесса, описание понятий и артефактов. Можно вполне оформлять это в таблицу, даже в несколько разных. Тут я, кстати, обычно не подсказываю сначала кандидату — пусть сам попробует понять, про что текст и что в нём можно подчеркнуть при помощи структурирования. Следующий шаг — составить таблицу, в которой есть пропуски, чтобы можно задать дополнительные вопросы. Это — идеальный результат работы, на самом деле. Аналитик на то и нужен, чтобы задавать вопросы и прояснять неясное.