Среда — маленькая пятница! К вечеру этого дня можно успокоить себя, что большая часть рабочей недели позади 😉
Сегодня про карьеру во фронтенде и тимлидство. Приступим!
Недавно в разговоре всплыла интересная мысль. "Я тупо не помню, что такое не знать вёрстку," — было сказано мне @dark_mefody'ем. И я его абсолютно полностью понимаю
Верстка — это то, с чего я начинала свой путь в программирование. Во что влюбилась когда-то и что меня не может отпустить до сих пор. Почти 15 лет как держит и заставляет сильнее биться мое сердечко ❤️
Если кого-то смущает моя любовь к верстке в аккаунте про JS, то вот мой бэкграунд. Я — магистр технических наук, писала на React/Angular/Vue и Node.js, немного могу в Electron и WebExtensions. Была начальником отдела фронтенд-разработки
Каждый день я пишу JS. Мне это нравится, я люблю архитектурные паттерны и производительный код, с удовольствием изучаю алгоритмы, новые инструменты и технологии. Не раз настраивала Webpack. Тащусь от FrontOps
Но при всем этом я получаю невероятный кайф, периодически двигая дивы (и не только их, семантика же) по экрану. И я уверена, что хороший фронтендер должен понимать, как работает верстка
К сожалению, реалии сферы таковы, что мало кому нужны хорошие верстальщики без знания JS. Хотя, за последние пару лет мне как лиду не приходилось искать фронтендеров без глубокого знания HTML и CSS, а вот наоборот — приходилось
И раз уж зашла речь про найм, пойдем сюда. Не скажу, что так уж много провела собеседований в своей жизни, но достаточно, чтобы вывести для себя несколько правил. Итак, если кто-то ищет работу или наоборот людей в команду, вот там парочка моих советов
Готовьтесь к собеседованиям
Абсолютно неоригинальная, но такая жизненная фраза. Как со стороны работодателя, так и со стороны кандидата. Обе стороны будут выглядеть лучше, если вы уделите время на изучение друг друга до того, как начнете свою беседу
Как готовиться к собеседованиям? Кандидату — гугл в помощь. Там про это столько написано, что грех повторять. Можно и забить и предстать "аля натюрэль", т.е. что знаю, за то и продаю. Ну, такое подходит, если вам не нужно больше денег 😅
Опишу, как я готовлюсь к собеседованию с кандидатом. Во-первых, у меня заранее есть его резюме. Я его хоть раз просмотрела до встречи/созвона. Во-вторых, у меня есть скрипт вопросов по разным темам, которые я спрашиваю кандидата
Скрипт — это структурированный список практически всех возможных тем по фронтенду и рядом. Начиная с вопросов для начала встречи, чтобы "разогреть" и расположить к себе человека. И заканчивая WebAssembly и самыми необычными браузерными API, с которыми мог работать кандидат
Нода, тестирование, производительность, работа в команде и т.д. Всего-то 20 страниц, и большинство тем — это просто упоминание. Естественно, невозможно задать все эти вопросы за одно собеседование, и это не нужно. Обычно я действую по ситуации и просто упоминаю какие-то темы
План встречи
Скрипт собеседования — это обычно долго и не всем нужно. Для начала, составьте краткий план. У меня он такой:
- Вводная часть, общие вопросы
- Техническая часть
- Вопросы от кандидата
Расскажите кандидату, что его ждет. О длительности встречи, ее структуре, что будет в технической части и другие важные на ваш взгляд моменты. Поверьте, страшно, когда у тебя в календаре приглашение на 3 часа, встреча началась, а ты понятия не имеешь, что будет происходить
Длительность собеседования
Я предпочитаю, чтобы собеседование длилось не более 1,5 часов. Собеседование на чистого верстальщика у меня обычно длится около часа. При более длительных встречах нужен перерыв, а этого делать не хочется
За это время можно понять общий уровень знаний кандидата, и даже попрограммировать "на бумажке". Да, я за такие техники. Можете закидать меня палками, но ниже поясню свою точку зрения
Любому хоть раз нанимавшему и увольнявшему лиду очевидно, что ни одно собеседование, ни один тест и ни один поставленный процесс найма не гарантирует, что кандидат — именно тот, кто вам нужен. Теорию можно заучить, к задачам подготовиться, тесты — списать и так далее
В рубрике "программирование на бумажке" я всегда предупреждаю кандидата, что если он чего-то не знает, то я — его гугл, и буду подсказывать. Не страшно не помнить банальных вещей. Кандидату это стресс, да. Но такой подход позволяет проверить, как человек продумывает свою работу
Увы, гугл-дривен девелопмент — частая практика в нашей работе. И простите меня, претендующие на должность миддл и выше кандидаты, но простые задачки с массивами не должны вас пугать и заставлять нервно искать ответы на StackOwerflow
Из забавного: был случай, когда на такой задаче кандидат не дошел до написания кода — он словами настолько подробно описал, что мы перешли к следующей секции вопросов. Бывало и наоборот, что объяснения настолько туманны, что приходилось просить пояснить свою мысль примером кода
Для меня задачи на собеседованиях — это способ заглянуть в то, как думает человек. И я даже предупреждаю, что решение задачи — не главное. Так что да, я за программирование на собеседованиях. Но стоит помнить, что это не экзамен, и важнее процесс, а не результат
Собеседование — это не экзамен
Кандидат не обязан знать все, а наниматель не должен ожидать этого от кандидатов. Легко скатиться в беседу уровня "а у меня больше", особенно на позицию высокого уровня. Камон, это ваш потенциальный коллега, зачем принижать его опыт и знания?
Основная цель собеседования — найти точки соприкосновения по опыту и знаниям, ну и понять, как кто впишется в свои роли. Если собеседование не позволяет понять этого, вы что-то делаете не так
Вопросы собеседования должны коррелировать с тем, что человек будет делать при устройстве в эту компанию/проект
Кажется очевидным, но нельзя всех кандидатов гонять по одинаковому списку вопросов. И поэтому у меня 20 страниц с вопросами, а не 3 или 5🤦♀️
Обратную связь на встрече
Каюсь, не всегда это делаю. Забываю, если беседа была интересной (почти всегда так) или вышли за рамки времени. И это не про ответ кандидату по вакансии, а ваши краткие заметки по его ответам. Что было хорошо, а что можно улучшить, вот это всё
Так что кандидаты, берите на заметку: просить моментальный фидбэк прямо на встрече. Даже пусть это будет пару предложений о том, чего и где подучить. Если не возьмут на работу, найдете новые точки роста, что тоже профит
Так, кажется, это все мои мысли по поводу собеседований на сейчас. А пока меня ждет работа, задавайте свои вопросы или дополните, что я забыла сказать, ниже в комментариях 👇
После обеда продолжу про тимлидство