Как стать автором
Обновить

Что случилось с Sapphire из Битвы пет-проектов?

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров817

Всем привет! На связи команда Sapphire из Битвы пет-проектов. Прошло чуть меньше полугода с окончания Битвы. Из неё мы вышли с победой, но работа не прекратилась. В этой небольшой статье я хотел бы рассказать про то, чем мы занимались всё это время и к чему пришли.

Для начала представлюсь, меня зовут Юрчик Олег, я ментор бэкенда. Кроме Sapphire у меня есть основная работа в Cloud.ru, где я занимаюсь разработкой облачных сервисов.

В команде я с самого начала. Мы с ментором фронтенда Русланом находили ребят по объявлению по анкетам, проводили с каждым небольшое 1-to-1 интервью и после него отбирали тех, кто по нашему мнению подходил по навыкам. Со сформированной командой мы созванивались в Discord и обсуждали планы. Начиналось всё как кружок по интересам.

Вот он я, снизу справа
Вот он я, снизу справа

В рамках Битвы перед нами стояла задача: за 3 месяца реализовать сервис для поиска пет-проектов, в котором желающие могли бы собираться в команды. Так как у нас были конкуренты - всем приходилось выкладываться на полную, ведь никогда не знаешь, где тебя обгонят.

Сразу же после начала Битвы мы потеряли троих бойцов, так как темп разработки был дикий и не всегда совместим с основной работой/учёбой и личной жизнью.

Про сам процесс рассказывать подробно не буду, все наши выступления есть во ВКонтакте и на YouTube.

Пример карточки проекта в нашем приложении
Пример карточки проекта в нашем приложении

Под конец Битвы сервис был практически готов к релизу. В нём были реализованы следующие функции:

  • Поиск проектов (по названию, описанию, требуемым специальностям и навыкам)

  • Создание проектов

  • Заявки на проект и работа с заявками, работа со статусами проекта

  • Уведомления

И этого уже было много, сервисом можно было пользоваться, но к сожалению мы не успели реализовать ключевую функциональность, без которой пользовательский путь был неполноценным, а именно - его величество мессенджер.

Да, пользователи могли находить проекты, подавать/принимать/отклонять заявки, но общаться друг с другом они не могли, соответственно вся полезность сервиса сводилась к нулю.


После окончания Битвы мы с командой решили, что мы всё-таки должны доделать приложение до логической точки и хоть как-то, но показать его людям. Но перед этим нам нужен был небольшой отпуск, примерно до конца января.

Это я с женой катаюсь на лыжах, хотя должен перекладывать json-чики
Это я с женой катаюсь на лыжах, хотя должен перекладывать json-чики

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

Наша команда стала ещё чуточку меньше, некоторые участники достигли своих личных целей, на данный момент нас осталось 8 человек.

На своём фрегате мы вышли в вольное плавание, а значит нашему кораблю нужен был флаг. Мы начали думать об определении себя как отдельной “компании” и совместно выбрали новое название. Теперь мы зовём себя Collabry.

Наше новое лого
Наше новое лого

Также обсуждалась функциональность сервиса. Мы поняли, что наша самая главная задача как платформы - сделать так, чтобы люди находили друг друга и собирались в команды (БИНГО!). И для этого необязательно реализовывать мессенджер и поддерживать функционал заявок. Конечно же, это поможет удержанию пользователя, но очень сильно оттянет время релиза приложения. Эти задачи остались в нашем бэклоге, но теперь они не являются блокером для выхода в свет.

Зато мы успели заняться теми вещами, на которые не хватило времени во время Битвы:

  • Провели CustDev интервью

  • Переработали пользовательский путь

  • Сверстали фронтенд для десктопов

  • Перевели бэкенд из микросервисов на монолит

  • Закрыли много задач по тех. долгу на фронтенде и бэкенде

  • Настроили мониторинг

Хочу уделить внимание некоторым техническим деталям. Первое - почему мы решили переехать в монолит. Причин тут несколько:

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

  2. Монолит стал тратить меньше ресурсов на сервере, мы избавились от проблеме нехватки RAM.

  3. У нас пока нет нагрузки на различные сервисы, поэтому необходимости иметь микросервисы (кроме удобства разработки) у нас нет.

Второе - мониторинг. Под конец битвы мы могли бы задеплоиться на продакшен, но потом, скорее всего, имели бы огромное количество проблем из-за невозможности в режиме реального времени (и алёртов) наблюдать, что же у нас происходит на сервере и в приложении. Какие метрики мы сейчас собираем:

  1. Общая нагрузка на CPU, общее потребление RAM и занятое место на диске

  2. Количество запросов в секунду (включая health и метрики) и количество долгих запросов (время которых больше 0.5 секунды)

  3. Общее количество пользователей, количество пользователей, прошедших и не прошедших онбординг на платформе, а также количество незарегистрированных пользователей

Так выглядят метрики RPS и долгих запросов
Так выглядят метрики RPS и долгих запросов

Мы переехали на новые домены, сервис Collabry можно найти здесь и здесь.

Мы ещё не выпустили его в публичный доступ, но собираемся вскоре это сделать! Официальная дата релиза - 18 мая 2024 года. Сейчас мы занимаемся исправлением мелких недочётов, стабилизацией сервиса и очень хотим успеть к назначенной дате, но прекрасно понимаем, что жизнь непредсказуема, а показывать вам сырой продукт и мучать - не хотим, поэтому дата может немного сдвинуться!

Приветственная страница Collabry
Приветственная страница Collabry

Чтобы не пропустить важные новости и обновления, подписывайтесь на группу в VK и канал в Telegram, там же можно связаться с нами через коментарии!

P.S. Также я веду личный канал в Telegram и группу в VK, буду рад видеть вас там!

Теги:
Хабы:
Всего голосов 5: ↑2 и ↓3+1
Комментарии2

Публикации

Истории

Работа

Ближайшие события

Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область