Как я навайбкодил себе портфолио-игру и не нашел работу
Кодил с нуля вместе с AI, рисовал спрайты, выравнивал пиксели по два часа. Получилась сайт-игра, где можно посмотреть мои реальные проекты как квесты. Вышло не идеально — зато честно и с душой.
Предыстория
Я долго ищу работу. Честно рассылаю отклики, пишу кастомные сопроводительные, собрал рефералки от друзей и бывших коллег. Но до оффера так и не дошел. В процессе поиска работы возникает ощущение, что тебя просто не существует. Десятки откликов на hh конвертятся в один шаблон: «Спасибо за интерес, но... »
Я понимаю, почему так. На хорошие вакансии летят сотни откликов от похожих кандидатов, и рекрутеры просто оперируют тегами: есть опыт в X? Нет? До свидания. И всё-таки, мне кажется, в первую очередь нанимают не строчки в резюме, а человека. Того, с кем потом жить в чатах, спорить на созвонах и вместе вытаскивать проекты. Но такого человека едва ли видно за стандартным резюме «сделал-выполнил»
Был случай, когда я по формальным критериям не совсем подходил под вакансию — но сработало креативное портфолио. Об этом потом честно сказал будущий руководитель.
Идея: портфолио как игровой спецпроект
Во вторые майские праздники меня накрыло вдохновение (он же — вайб), и я решил распробовать силу нейросетей на какой-нибудь задачке. Например, кодинг. Хотелось сделать что-то одновременно полезное и бесполезное: и в резюме положить, и душу приложить.
Недавно мне отказали на позицию менеджера спецпроектов — мол, не хватает опыта с игровыми лендингами. Я подумал, что было бы здорово сделать себе "портфолио-как-проект-для-портфолио", а заодно потренировать креативную мышцу.
Первые попытки
Я регулярно пользуюсь СhatGPT в быту: прошу составить текст, сделать фотожабу, но ничего серьезнее. Теперь же задача предстояла масштабнее и начал я ее на дурака – попросил чатик накидать мне мысли по поводу нашей задумки. Обстоятельный GPT предложил сначала побеспокоиться о механике и контенте, а только потом переходить к разработке, но мне не терпелось скорее пощупать код.
Здесь нужно сказать, что в разработке я разбираюсь на уровне апельсина. Все эти консоли-терминалы с React и HTML/CSS для меня звучат одинаково страшно и непонятно.
Хоть ChatGPT и позволяет просматривать и редактировать код в канвасе, я быстро понял — для полноценной реализации задумки нужна более удобная среда. WindSurf и Cursor — два популярных AI-инструмента для кодинга. Они используют специально обученные модели для задач разработки (например, Claude 3.7 и т.д.). С ними можно вести диалог прямо в коде: описываешь, что нужно, модель генерирует решение и сразу его внедряет.
Сначала я поставил WindSurf — интерфейс показался дружелюбным. Но через пару минут он потребовал установить пакет инструментов разработчика весом 20 гигабайт. Я потыкался немного и непонятый ушел прочь.
Следующую попытку я начал уже в Cursor. Тут всё пошло гораздо бодрее: AI-агент сразу предложил мне решение для будущей игры, помог настроить среду, установить React Create App и локальный сервер. Наконец-то началось приятное шуршание.
Рабочий процесс
В этот раз я подошёл к делу более системно: сначала набросал структуру, схему блоков на игровом поле, описал NPC и прикинул, как всё должно работать. Это сразу задало направление — стало проще вести моего AI-напарника, не давая ему уйти в самодеятельность. Спойлер: такие модели легко увлекаются процессом. Если соглашаться на каждую предложенную доработку, можно быстро очутиться где-то между «а нужна ли эта сложная фича?» и «почему все сломалось?!». Мне несколько раз приходилось откатывать изменения — на всякий случай я даже целиком копировал папку с проектом в бэкап, чтобы после очередного апдейта всё не скрашилось
Из других сложностей — я вообще не умею в код. Даже за незначительными изменениями (например, поменяй цвет текста в блоке) мне приходилось обращаться к агенту. Понимай я немного больше в разработке, наверняка всё шло бы быстрее.
Изображения генерировал в ChatGPT и тут тоже пришлось повозиться с промптами, чтобы спрайты хотя бы выглядели похоже. Получив что-то вменяемое, я дотюнивал картинки в Фигме и сразу смотрел, как они будут выглядеть на игровом поле. Иногда приходилось отказываться от изначальной задумки и по ходу переделывать сцену — например, менять расположение папок-каунтеров или диалоговых окон. Было сложно не уйти в залипательный перфекционизм: пару раз я ловил себя на том, что два часа пытаюсь выровнять блоки по сетке.
Когда появилась первая рабочая версия, я попросил агента сделать рефакторинг кода. Он предложил «оптимизацию», после которой всё развалилось. Пришлось откатиться.
Результат
Честно? Я удивился, что вообще получилось. Когда мы задеплоили сборку на Vercel, эмоции были как у профессора Франкенштейна, который подключил монстра к розетке — IT'S ALIVE!
На все про все (от первых попыток до выгрузки в Git) ушло три дня, с перерывами на пойти поплакать, когда что-то не получалось. Бюджет: $20 на подписку Cursor (150 стартовых кредитов закончились влет) и 9 банок пива.
Это был самый позитивный DIY-опыт за долгое время, когда я что-то делал с таким увлечением. Появилось желание прокачать экспертизу в разработке, чтобы лучше понимать, как все устроено под капотом. Ну, а про потенциал AI в этой области вы и без меня знаете.
Едва ли это портфолио действительно поможет найти работу. Но, может быть, кто-то из уставших нанимателей улыбнётся, увидев мой отклик. А если и вы хоть раз улыбнулись — значит, мы с вами на одной волне. Пишите. Придумаем что-нибудь крутое 🤙