Как я проходил техинтервью и что изменилось за годы
Вчера меня пригласили на техинтервью в одну крупную компанию на позицию Lead Frontend Engineer. Последний раз я ходил на интервью три с половиной года назад, и с тех пор — только работа и постоянное изучение чего-то нового.
Если почитать мой блог, то видно, что я сильно сместился в сторону vibe coding и agentic coding. Практически перестал писать код руками — только ревью и рекомендации агенту. Описание архитектуры, скиллы и практически полное сосредоточение на продукте, вместо того чтобы писать кастомные хуки или описывать типы данных в TypeScript.
Для меня стало доступным создавать продукты не только на JS. Я начал активно использовать Python для бэкенда, GitHub Actions для деплоя на AWS, разворачивать собственные LLM вместо использования OpenAI API, настраивать RAG-системы.
За последние полгода я запустил Videamind.com, UptimeHarbor.com, RePeaks.com, AreteBrain.com, ArsVarius.com и подготовил к запуску PeerMeet.me. Всё это довольно сложные проекты с непростой архитектурой — хотя, как всегда, я могу приукрашивать свой талант.
Каково же было моё удивление, когда техсобес оказался таким же, как четыре или даже шесть-восемь лет назад. И тут я задумался: в чём суть?
Никому не интересно, насколько хорошо ты играешь в Factorio, как и навыки настройки Claude Code или Cursor.
Не сказать, чтобы я не готовился к этому собеседованию. Потратил целую неделю в свободное от работы время, чтобы в Obsidian с помощью Claude Code и ArsContexta создать заметки по базовым знаниям, план стандартных интервью. Даже почитал часть из них. Но всё это — коллекционирование знаний.
На практике же в последний день я решил попросить ChatGPT позадавать мне самые базовые вопросы на тему JS, React и TypeScript — и вдруг понял, что читать и «владеть» какими-то знаниями — это совсем не то, что отвечать на вопрос, даже своими словами.
Считаю, что ChatGPT в данном контексте оказался очень полезным, и жаль, что я не ввёл такую практику давно. Так что рекомендую делать это почаще — и не обязательно для прохождения интервью, а просто для повторения знаний, которыми, как нам кажется, мы владеем. А на поверку это может оказаться эффектом Манделы и стать причиной более серьёзных заблуждений на практике.
Скажу как есть: в целом оценили на уровень мидла.
Самый важный вывод для себя я сделал: когда я думал, что лид — это про архитектуру, про управление командой, задачами и продуктом, я упустил момент, что в первую очередь он должен подсказывать технические решения и обучать. А мне самому всё ещё есть чему учиться.
И да, приходится признать: вайбкодинг ведёт к деградации. Нельзя всё спихнуть на машину и расслабить собственный мозг.
Не нужно тренироваться для интервью — это как учить дебюты в шахматах. Нужно устраивать практику, хотя бы с ИИ. Использовать его не только для написания решений за вас, а для поддержки знаний и тренировок. Сделать его не только ассистентом в коде, но и наставником — и, возможно, это принесёт не меньше пользы, чем простая подмена.
В целом начало детоксикации от вайбкодинга положено — написал этот пост своими словами, тоже впервые за долгое время. Буду признателен, если чуть позже кто-нибудь позовёт на мок-интервью — для практики и чтобы проверить, учёл ли я полученный опыт.