← все кейсы
кейс 01 · веб-сервис · 2025

Code Gym

Платформа для подготовки к техническим собеседованиям: задачи с фильтром по компаниям, теория и ежедневная практика в одном месте.

рольUX/UI-дизайнер
сроки[впишу сама]
команда[впишу сама]
инструментыFigma

Задачу и требования готовил аналитик, а я проектировала на их основе интерфейс: сценарии, прототипы, UI и адаптив. Если в требованиях были пробелы, разбирали их вместе с аналитиком на созвонах.

Главная Code Gym на ноутбуке Список задач на телефоне
01

Проблема и конкуренты

Разработчики, которые готовятся к техническим собеседованиям, собирают материалы из разных мест: задачи на одном сайте, теорию в статьях, вопросы с собеседований в чатах и на форумах. Крупные платформы — англоязычные, а фильтр задач по компаниям обычно закрыт подпиской. В итоге подготовка идёт рывками перед собеседованием, а не регулярно.

платформачто хорошочего не хватает
LeetCodeогромная база задач, задача дняинтерфейс только на английском; задачи по компаниям (Google, Amazon и др.) только в платной подписке Premium; теории и вопросов «не про код» почти нет
Codewarsзадачи-«ката» с рангами от 8 kyu до 8 dan, игровая прокачкаэто тренажёр навыка, а не подготовка к собеседованию: нет привязки к компаниям и теории
HackerRankготовые наборы для подготовки к собеседованию на неделю и на 3 месяцаанглоязычный, без российских компаний
Codeforcesесть русский язык, большой архив задачзаточен под олимпиадное программирование, а не под собеседования

Вывод. Нет одного места на русском, где есть задачи с фильтром по компаниям, теория, вопросы с собеседований и привычка заниматься каждый день.

02

Решения

Три гипотезы выросли из анализа конкурентов и на пользователях пока не проверялись. Каждый экран отвечает на одну из них.

Профиль на ноутбуке
гипотеза 1

Профиль с прогрессом

Если человек видит свой уровень и прогресс по языкам, ему проще понять, что подтянуть, и он не бросает подготовку.

что сделала

Уровень растёт с каждой решённой задачей, рядом грейд, специализация и прогресс по языкам в процентах. В подсказках объяснено, сколько баллов даёт задача каждой сложности.

прогресс видно сразу
Библиотека задач на ноутбуке
гипотеза 2

Библиотека задач с фильтрами

Если задачи фильтруются по компании, сложности и языку, готовиться можно прицельно — к конкретному собеседованию, а не «ко всему».

что сделала

Компании выбираются чипсами, сложность и язык — фильтрами рядом с поиском, сброс одной кнопкой. В карточке сразу видны сложность, компания и время на задачу.

фильтр по компании
Daily Coding на ноутбуке
гипотеза 3

Daily Coding

Если каждый день есть небольшой набор задач и таймер до обновления, практика становится привычкой, и навык не теряется между собеседованиями.

что сделала

Каждый день новый набор из 10 задач разной сложности и таймер до обновления. Задачу можно решить прямо на странице: редактор, запуск и отправка.

таймер + новый набор задач
03

Дизайн-система

Primary blue#0056B3
Blue#2A6CD2
Green#52A46C
Primary grey#696969
Aa
RobotoRegular · Medium · Bold
Roboto Mono — код
H1Bold · 26
H2Medium · 20
BodyRegular · 16
ButtonBold · 16
MenuMedium · 15
CodeRoboto Mono · 15
CODE GYM ЗадачиВопросы с собеседованийDaily Coding ВходРегистрация
Регистрация Вход Все задачи
Поиск по названию задачи
Поиск по названию задачи
Уровень сложности
Уровень сложности
Выбрать все
Озон (6)Озон (6)

Упрощенный путь

Реализовать функцию shortenPath(path) , которая упрощает абсолютный Unix-путь и возвращает его каноническое представление, обрабатывая . , .. и множественные /.

Легкая
Т-банк
10 мин
Решить
04

Адаптив

Сайт адаптирован под ПК, ноутбук, планшет и телефон. Показываю, как меняются два главных экрана на мобильном.

Список задач на ноутбуке
ПК и ноутбук
Список задач на телефоне
телефон
  • Фильтры свернулись в одну кнопку-воронку рядом с поиском
  • Карточки встали в одну колонку
  • Меню спряталось в бургер
Daily Coding на ноутбуке
ПК и ноутбук
Daily Coding на телефоне
телефон
  • «Запустить» и «Отправить» собрались в одну кнопку «Действия»
  • Таймер остался наверху, чтобы был виден сразу
  • Редактор кода на всю ширину экрана