Пока я искал работу, делал платформу для собеседований, а придумал симбиоз YouTube и GitHub Gist
Пока было свободное время — хотел сделать площадку, где можно записывать интервью с кодом для последующего ознакомления. Но идея получилось более широкой и интересной.
Проект еще в разработке — релиз планируется после середины октября.
Предыстория
Еще в мае 2020 года появилась идея сделать платформу для записи собеседований: для интервьюера будут коллекции готовых задач и интервью, подготовка шаблонов. Но тогда не было сил и ресурсов это сделать.
Осенью снова загорелся реализацией и набросал прототип, но тогда вышло много похожих платформ и руки опустились.
Полтора года спустя, пока искал вакансии по Golang было много свободного времени, интервью все проходили в разных лайвкодинг-комнатах, и появилась затея запилить свою систему для таких записей. Кроме того, некоторые компании просили дать право на запись, чтобы др команды могли пересмотреть (например Skyeng делает именно так) … Запись всегда делалась записью экрана, что мне показалось не очень удобным — может этого и достаточно, но мне показалось, что можно сделать более интерактивный формат.
Проблема
На Ютубе много видео, но те, кто просматривает — они не имеют доступа в моменте к коду, особенно если материал с большой. Зрители ставят на паузу и перепечатывают с экрана.
Другая проблема: статьи пишут портянками. Читателям приходится бегать по киллометровой статье, чтобы вычленить нужный участок кода. Авторы иногда делают скриншоты пометить нужные строки кода.
Третья проблема: когда кому-то надо помочь с кодом, то людям приходится в чатах писать десятки сообщений, чтобы объяснить — что исправить, где переписать код.
Явно напрашивается сервис, где нужно написать код и объяснить построчно, пословно.
Если говорить про собеседование, то иногда полезно дать запись с кодом, чтобы отревьюить и прокомментировать всей командой.
Решение: сделать сервис, где код можно воспроизводить во времени, озвучивать шаги во время написания кода для зрителей, быстро проматывать и задавать вопросы/писать комментарии к нему.
Первый образец
Хоть я и бекенд-программист, но так или иначе пришлось взяться за фронтенд — нужна была запись изменений кода в режиме реального времени. Взял удобный фреймворк Ангуляр, написал первое приложение. Пару недель исследований как делать плавное воспроизведение миллисекунда в милиисекунду.
Готового ничего не было — пришлось написать свое, взяв пару опенсорс-библиотек на языке Typescript за основу.
Когда запись и воспроизведение были готовы, стало понятно — этот функционал можно использовать не только для интервью, а просто для записи разных сниппетов, инструкций, описаний проблем в коде и даже уроков.
Функционал
Суть в том, что вы записываете работу с кодом как видео, но оставляете возможность интерактивного доступа к коду — можно выделять, копировать в любой момент времени.
Для того, чтобы запись не получился немой — добавлена запись видео через предоставление вкладке браузера доступа или к микрофону или камере.
В каждый момент времени будет возможность оставить комментарий с указанием выделенного участка кода:
Код можно комментировать также в любой момент времени и ссылаться на время, при клике на такой комментарий — произойдет перемотка к нужному состоянию:
Монетизация
- Предполагается, что общедоступный функционал записей будет в виде: короткие записи до 10 минут с хранением записи от 1 до 3 суток. Запись можно сделать приватной или расшарить всему интернету.
- Длинные записи и длинное хранение — за оплату по подписке.
- В будущем: различные интеграции с Gitlab/Github для работы с многофайловыми проектами — эти фичи будут не в первом релизе.
- Сделать платформу с курсами/уроками, где каждый сможет выкладывать и категоризировать свои записи.
- Встраивание плеера записи на своем блоге/сайте через js-скрипт, чтобы не писать портянки с кодом и держать изменения кода с объяснением в одном блоке.
- Сделать live-stream, но при этом чтобы можно было приостанавливать изменения кода, отматывать назад и писать комментарии к коду в нужном вам файле. На базе этого сделать те самые изначальные интервью с несколькими участниками
- еще много всего…
Команда
Разрабатываю пока один. Первая версия почти доделана: осталось доработать запись через WebRTC и сделать несколько оптимизаций и страниц кабинета.
После первого релиза буду искать команду, и, возможно, инвестиции для команды. Все будет зависеть от того, насколько сервис будет иметь спрос: -)
Жду ваших комментариев и оценок в комментариях. По вопросам пишите в телеграм: @halabooda
Чтобы быть в курсе запуска сервиса — подпишитесь на канал проекта