Комментарии 30
Как-то странно что тут ни слова про TypeScript
Спасибо за список тем, добавлю кое что в свой чек лист.
Тоже имею приличный опыт найма на разные позиции и в разные компании, добавлю пару субъективных моментов по поводу найма опытных разрабов. Собес по фиксированным темам в текущих реалиях мне кажется не самым эффективным. При большом потоке за ограниченное время надо понять, что человек соответствует вакансии. Поэтому я стараюсь в первую очередь определить валидность опыта в резюме и глубину понимания того, чем он занимался на прошлом месте работы. Мне не так важен полный охват смежных тем, как то, насколько человек глубоко умеет копать. Если например в новом проекте будет стриминг видео, то он сможет сесть и освоить его также быстро, как делал с специфическими технологиями на прошлом проекте. И определяющий этап для меня уже не собес, а испытательный срок, на код ревью все становится на свои места.
Кстати если бы вы проводили у меня собес с опросом по всем этим темам, думаю на синьора я бы не прошел
Рад, что материал оказался полезным для вас!
Про топики: согласен, что невозможно знать всё, и не всё из перечисленного в статье могут спросить на собесе. Например, сомневаюсь, что зайдет разговор о типовых архитектурах веб-сервера.
Мой подход обычно строится так: я спрашиваю кандидата о его собственном опыте и пытаюсь разузнать, как он справлялся со своими задачами. Могу задать доп. вопросы о деталях и мотивации принятых решений, кто эти решения предлагал и почему, спросить, как бы поменялась архитектура, если бы требования отличались каким-то образом. Это хорошо подсвечивает опыт и кругозор.
По полному охвату смежных сфер: в моём случае критерий отбора скорее не «кандидат должен знать всё», а «кандидат осознает проблематику предметной области и знает хоть что-то», а далее проверяем глубину понимания каждой из тех тем, о которых зашел разговор.
И определяющий этап для меня уже не собес, а испытательный срок, на код ревью все становится на свои места.
С этим полностью согласен, но проверить какую-то долю хард-скилов на собесе можно, ровно об этом и материал. Чем раньше определим мэтч, тем лучше и соискателю и работодателю.
В последнее время от frontend-разработчика как-то слишком много требуют.
Неплохая статья, как чеклист, но немного хаотично написана. Местами упоминаются мелочи, не стоящие того (pre-commit хуки, infinite scroll), а некоторые технологии (напр., web workers, js/css animation, фреймворки и web components) вообще не упоминаются. Кстати, KISS - это "Keep it simple, stupid".
Infinite scroll — это пример практического приема, реализация которого может быть кейсом на собесе, а не как отдельный топик для изучения
Про анимацию можно добавить, спасибо!
Фреймворки намеренно пропустил, т.к. статья не об этом.
Веб-компоненты и веб-воркеры, на мой взгляд, всё еще остаются экзотикой, которая бывает полезна в очень узких кейсах. Базовое понимание о веб-воркерах формируется, если осознать принципы работы PWA, о котором упоминал в статье.
KISS — проскочило на редактуре, исправил, спасибо)
Я бы сказал, что многие вопросы если брать Джуна так себе.
Статья всё же не про вопросы на собеседовании, а про обзор тем, на которые эти вопросы могут быть заданы. Часть тем актуальна миддлам, например, про Docker или CI / CD но если джун и их освоит, то это вообще супер, мб он и не джун тогда)
P.S. Хотя джун всё равно как минимум должен знать о существовании всех этих тем, даже если он не имеет в них опыта.
Здравствуйте! А на какую позицию и примерную зарплату требуется такие знания темы?
Здрвствуйте! Это обзорный материал, здесь практически нет рассуждений о глубине знаний по каждой из тем. Цель была — дать подсказку, что еще можно изучить, и какие пробелы заполнить.
Отвечая на ваш вопрос, я бы сформировал такое соотношение:
к стажеру без опыта 0 вопросов, он может вообще ничего из этого не знать, главное программировать уметь
от джуна, который уже является самостоятельным сотрудником, можно ожидать, что он знает о существовании каждой из тем, понимает, на решение каких задач они направлены и имеет опыт в тех из них, которые связаны непосредственно с продакшеном и его типовыми задачами
от мидла можно ожидать больше не только знаний, но и опыта в тех темах, которые связаны с архитектурой и инфраструктурой
от синьора можно требовать опыт или способность освоиться в большинстве из этих тем
Здесь пропускаю тему ЗП, т.к. соотношение грейда и зп разное на рынке и колеблется в каком-то общеизвестном диапазоне, эти данные можно поискать на hh, например)
Спасибо за отличную статью.
Особенно полезно ее будет перечитать, если возникнет ощущение, что ничего нового для изучения нет.
:-) классика :-))
Материал нацелен преимущественно на джунов и мидлов
Джуниор, прочитав статью перед поиском работы, впадет в лютую депрессию. Что не удивительно, ведь в статье перечислены почти все ключевые моменты фронтенда, причем как правило продвинутые. SOLID, кэширование в Docker (супер если он просто знает что это такое), Kubernetes, паттерны проектирования типа фабрики, защита от атак, Nginx и т.п. - это что, то с чем ему предстоит напрямую работать? Сколько вы готовы платить ему за такое?
Имхо, статья выглядит больше как роадмап по изучению фронтенда
Как вы и процитировали, статья наценела на джуниоров и миддлов. Подробнее о том, какие навыки на каком грейде пригоятся, ответил в этом комментарии
Мб мне повезло, но большинство из этих тем я просто прошел на курсах в университете еще перед первой стажировкой, включая nginx, docker, solid, паттерны и пр., поэтому ожидаю в т.ч. от младших специалистов
Согласен, что про куб от джуна ничего ожидать не стоит, ровно как это и отмечается в статье
Это в каких нынче университетах преподают докеры и куберы? о_О
Так и представляю картину: убелённый сединами профессор читает курс "компьютерные сети", рассказывает про модель OSI, TCP/IP, аналог и цифру, а потом такой говорит: "А сейчас, чтобы закрепить материал, запустим кубернетис на AWS!"
Мне повезло учиться здесь: https://park.vk.company/, тут была двухлетняя программа, где действительно всё это изучается, кроме куба. Хотя я давно учился, мб щас курс и по кубу появился.
Но докер, мне кажется, это база в 2024, простой контейнер запустить со своим пет-проектом — это что-то, что можно ожидать от джуна
Доп. курсы от VK при универе. Вы там в универе учились и их посещали или просто на этих курсах?
От вопросов про Kuber и настройку nginx чуткий претендент просто закроет зум и примет другой офер. И правильно сделает
Зависит от позиции, на которую кандидат хочет попасть. От джуна и даже миддла никто куб не ожидает, как и отмечается в статье. Но Nginx — это инструмент, которым должен владеть опытный фронтендер, поэтому если оказывается, что наш сотрудник не шарит за Nginx, мы обязательно ставим в его план обучения практические задания на настройку веб-сервера. Курс по Kubernetes тоже ставим в план, но на более высоких грейдах
Так зачем фронту в принципе Kuber? У вас в компании нет разделения труда? Каждый может вертеть инфраструктурой, не имея специальных знаний и опыта?
Основные причины вижу следующие:
Знание основ позволяет более эффективно общаться фронтам и девопсерам
Типовые задачи могут делать и фронтендеры: например, изменить объем аллоцированных ресурсов, настроить проксирование на ингрессе и т.д.
Большая самостоятельность в анализе / локализации проблем, доступе к логам и подам
Это не снимает работу с девопсеров. Они формируют и настраивают окружение, которым как инструментом пользуются фронтендеры и бэкендеры.
Виталий, спасибо за прекрасную статью! Расскажи в двух словах про обучение на программе ВК, где с твоих слов ты отучился два года
Я правильно понял, что ты учился тас конкретно на фронтенд разработка, или была какая-то другая программа? Как вообще попал туда? Очень интересен твой опыт в этом плане)
Не хочу рекламировать именно курс ВК. У многих крупных компаний есть курсы, программы и иногда даже кафедры и факультеты при вузах. У Яндекса, тинькова есть программы, раньше даже были у интела и jetbrains, в общем много всего есть.
В моем случае я учился на программе системного архитектора, это 4 семестра:
1 семестр:
алгоритмы
С/С++
Веб-разработка (тогда это был Джанго)
2 семестр:
Фронтенд
Go-разработка
Базы данных
Навыки деловых коммуникаций
3 семестр:
Проектирование высоконагруженных систем
QA
Безопасность
Андроид / iOS-разработка по выбору
4 семестр:
разработка выпускного проекта
Сейчас программа поменялась и стала более специализированной, периодически запускается трек по ML
Это бесплатная программа при вузе. Компании заинтересованы в выращивании кадров под себя. Если хочешь, можешь после выпуска пособеседоваться в них. Чтобы поступить, нужно пройти отбор и, самое сложное, — не отчислиться
Не JavaScript’ом единым: как фронтенд-разработчику затащить на собесе