Итак, галера Lumenalta предложила мне прикольное тестовое задание на позицию фуллстека.
Платформа для тестирования — DevsKiller.
Тебе дают комплексный тест из трёх заданий. Время на выполнение — 2 часа. Ставить на паузу нельзя. Пробовать повторно — по-моему тоже нельзя.
1) JS React
2) JS core (конкуррентное программирование)
3) SQL
Очень понравилось что два первых задания можно клонировать гитом и спокойно себе решать в IDE. Только нельзя больше никуда пушить, кроме как на их сервер. То есть, они не против, чтобы в этих заданиях кандидаты пользовались ИИ-помощниками. Хотя, сразу скажу, что задания подобраны так, что ИИ-помощники особо там не помогут.
Итак, задание первое. React.
Есть уже написанное веб-приложение на простом джаваскрипте, без типов. Есть эмулятор бекенда. Также имеется набор юнит- и e2e-тестов, покрывающий основной функционал. Нужно разобраться в том, какого чёрта все эти тесты падают, а также пройтись по списку рекваерментов и внимательно проверить, что из непокрытых тестами рекваерментов реализовано, а что нет. И насколько вообще оно праильно там реализовано.
А в самом коде повсеместно напартачено. Где-то вместо данных передаётся пустой массив. Где-то — захардкоженная заглушка, где-то какой-то виджет не так нарисован, где-то логика не до конца реализована. И вот этот фронтэнд в состоянии "тысяча мелких порезов" нужно отрефакторить мало того, чтобы тесты позеленели, но и приложить к нему любовь и заботу, стать его пользователем и продактом, довести до ума.
Времени ушло на это примерно час, но это не впустую потраченный час.
Мне просто дико понравилось это задание, 5/5!
ИИ с таким не справляется, потому что у ИИ нет главного — воли, страсти, чисто человеческого любопытства. Он не выйдет за рамки спецификации, и поэтому не отыщет скрытые алмазы в куче говна.
Конец первой части. Остальные части — по тегу #DevsKiller #DevsKiller #работа #IT