company_banner

Три гиканутых проекта к Geek Pride Day

    Привет, гики! Поздравляем! Любителям звёздных войн желаем сохранять новые надежды, поклонникам автостопа по галактике советуем не выходить из дома без полотенца, а сторонникам плоского мира рекомендуем сорвать сегодня веточку сирени. Живите долго и процветайте. А под катом вас будут ждать истории про гиков, которых мы нашли в Додо.




    День гиков в Додо


    Сейчас в Додо Пицце работает около 18 000 человек. Мы подумали, что раз среди нас есть пицца-гики, то должны быть и техно-гики. Задумались и решили найти их: тех, кто придумывает и реализует проекты, которые оптимизируют/автоматизируют процессы, кто стремится улучшить мир вокруг себя. Среди всех проектов, которыми с нами поделились, с помощью наших CTO Саши Андронова, CMO Вани Тихова и CPO Серёги Грязева мы выбрали трёх финалистов и хотим рассказать вам про них.

    Если лениво читать
    — можно посмотреть.




    3 место. Проект «HS Player»


    Привет! Меня зовут Влад Зингер, мне 26 лет, я — бакалавр computer science, работаю в управляющей компании TA QA инженером. Мой проект называется HS Player.

    Если лениво читать
    — можно посмотреть.



    HS player — это мобильное приложение для прослушивания музыки, которое мы с другом Димой разрабатываем с 2013 года. Изначально плеер создавался для чтения файлов в формате .flac и .cue, которые не поддерживают стандартное приложение в iOS.

    Со временем появилась поддержка облачных сервисов, которая сильно увеличила привлекательность плеера. Сегодня плеер имеет показатели: 8К+ активных пользователей в месяц (MAU), высокий crash-free ≥99.9%, оптимизированный код, который потребляет мало аппаратных ресурсов и имеет малый размер, продвинутый эквалайзер (по меркам мобильных устройств), отсутствие булшита (то есть рекламы или дотошной перегруженной аналитика за пользователями). Однако самый главный показатель — довольные пользователи, которые пишут нам благодарности и высоко оценивают приложение в App Store.

    Что подтолкнуло к созданию проекта


    А начиналось всё так: однажды мартовским утром в далёком 2016 году мой друг попросил взглянуть на его пет-проект, чтобы оценить приложение, так как у меня был разнообразный опыт с музыкальными приложениями до этого. В процессе знакомства с плеером я высказал своё видение, предложил улучшить. И вот мы уже больше 4-х лет работаем над этим проектом.

    Cам плеер Дима создавал для себя, чтобы у него была возможность слушать музыку в формате .flac и .cue на iOS устройствах с возможностью детального контроля эквализации для устранения недостатков АЧХ-наушников. Само собой, стандартный плеер iOS не предоставляет таких возможностей, даже спустя 6 лет после первого релиза HS Player в AppStore.

    Как это работает


    Кишки нашего проекта выглядят так:

    1. Аудио часть:
      • CoreAudio — воспроизводит PCM формат, применяет эффект EQ.
      • AudioFileStreaming/URLSession/GCD — используется в связке для потокового воспроизведения.
      • FLACLib — декодирует файлы до PCM-формата, затем PCM отправляется в CoreAudio.
      • Отдельная написанная функция для preamp.
      • TPCircularBuffer — для кольцевого буфера звука.
    2. Медиатека:
      • AVFoundation — чтение метатегов для Apple-формата.
      • FLACLib — чтение метатегов флак-файлов.
      • CoreData — хранение связанной бд (исполнители, альбомы, дорожки, плейлисты).
    3. Clouds:
      • MegaSdk — для работы с мега облаком.
      • YandexLoginSDK — для работы Яндекс.диском.
      • GoogleSignIn/GoogleAPIClientForREST/Drive — для работы с Гугл.диском.
      • FilesProvider (cocoapods) — dropbox, onedrive, pdrive, box.
      • OAuthSwift (cocoapods) — OAuth.
    4. Загрузка файлов на устройство:
      • GCDWebServer(cocoapods).
    5. Загрузка файлов с облаков:
      • OperationQueue — для последовательной загрузки.
      • AHDownloadButton(cocoapods) — кнопка загрузить.
    6. Аналитика:
      • Firebase/Analytics.
      • Firebase/Crashlytics.
    7. Языки:
      • Swift.
      • Objective-C.
      • C.
    8. Архитектура:
      • MVC/MVP.
    9. Зависимости:
      • CocoaPods.

    Про сложности, команду и светлое будущее


    Технические сложности, с которыми мы столкнулись — это реализация аудио-функций, для которых нет никаких готовых решений для мобильных приложений (например, gapless для mp3). И ещё наш проект полностью бесплатный, все расходы мы оплачиваем из своего кармана, поэтому мы имеем некоторые трудности с арендой сервисов и покупкой новых инструментов для разработки. Однако в ближайшем будущем мы выпустим дополнительные функции с монетизацией.

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

    Что касается возможности масштабирования — они большие. Часть наших конкурентов представляют неоправданно дорогие продукты (просто музыкальный плеер за 700$) без альтернатив, поэтому у нас есть хорошие шансы изменить этот рынок. Затрудняюсь ответить, нужна ли нам сейчас помощь инвесторов, но вот помощь опытного дизайнера интерфейсов нам не помешает.

    Самое важное


    1. Расскажи, какие бонусы/прибыль бизнесу твой проект уже даёт или может давать в будущем?
      На текущий момент сложно представить, какую практическую пользу может принести музыкальный плеер в фудтехе. В голову приходит портирование плеера на ТВ-панели в ресторанах для проигрывания медиаконтента из облачного хранилища, но это, скорее, что-то из области фантастики.
    2. Какие советы или слова поддержки ты можешь дать тем, у кого только-только зарождаются идеи своих проектов?
      • Пытаться сразу реализовать свои идеи, а не ждать лучшего момента.
      • Работать по MVP (minimum viable product) и декомпозировать задачи.
      • Больше общаться с людьми из других сфер.
      • Рассказывать о своём проекте и его обновлениях.

    2 место. Проект «Температурный контроль холодильных и морозильных камер»


    Привет! Меня зовут Язев Семён, мне 32 года, начинал работу с Додо с управления пиццерией в Москве, а сейчас занимаюсь обслуживанием пиццерий. Мой проект называется «Температурный контроль холодильных и морозильных камер».

    Что подтолкнуло к созданию проекта


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

    Как это работает


    1. Температурный контроль в холодильных и морозильных камерах.
      • Работает на основе ESP8266&NodeRED&Grafana.
      • Результат: На данный момент контролируется 30 пиццерий.
    2. Автоматический сбор показаний с электросчетчиков.
      • Работает на МеркурийAR230&Elfin-EE11&yaenergetik.ru&NodeRED&Grafana.
      • Результат: на данный момент собираются данные с 20+ пиццерий. Следующим этапом будет организована расшифровка данных и организовано управление потребителями.

    Информацию про технические кишки проектов хочу разделить на две части: железо и софт.

    Железная часть: в качестве железной части используется esp8266, в качестве контроллера с датчиком температуры — ds18b20 и прошивкой Tasmota.
    Софтверная часть: контроллер посылает данные о температуре по протоколу MQTT на брокер Eclipse Mosquitto. Оттуда с помощью NodeRED данные передаются в базу данных InfluxDB.



    Далее данные визуализируются в Grafana.



    А уведомления о проблемах с температурой отправляются в чат в Telegram.



    За время существования проекта я несколько раз менял прошивку, способы визуализации и хранения данных, а также способы оповещений. В принципе трудностей не было, всё получалось эволюционно.

    Самое важное


    1. Расскажи, какие бонусы/прибыль бизнесу твой проект уже даёт или может давать в будущем?
      Благодаря моему проекту улучшились дисциплина и контроль за холодильным оборудованием. В будущем можно организовать контроль температур не только в холодильных камерах, но и в ресторанах
    2. Какие советы или слова поддержки ты можешь дать тем, у кого только-только зарождаются идеи своих проектов?
      Не бойтесь придумывать и воплощать свои идеи в жизнь.

    1 место. Проект «Мониторинг проблем»


    Привет! Меня зовут Марат Мигранов, мне 32 года, живу в Санкт-Петербурге и работаю операционным директором в сети СПб-1. Хочу рассказать про мой проект «Мониторинг проблем».

    Если лениво читать
    — можно посмотреть.



    Что подтолкнуло к созданию проекта


    На момент создания моего проекта в нашей франчайзинговой сети было уже 4 пиццерии (ред. Додо – это франчайзинговая сеть пиццерий. У каждого из наших партнёров разное количество пиццерий в их сети, в данном случае 4. Во всей сети Додо на момент публикации 611 пиццерий). К нам приходили рекламации от клиентов, а централизованной системы аналитики на всю сеть ещё не было. Мы столкнулись с острой необходимостью — собирать и систематизировать обратную связь от клиентов, чтобы видеть системные проблемы в пиццериях и работать над их решением.

    Задачу нужно было решать, и главной сложностью для меня стало то, что раньше я никогда не работал с Google Data Studio, пришлось разбираться с нуля.

    Как это работает


    Сейчас в продакшене работает уже третья версия «Мониторинга проблем». В основе всего проекта лежит очень простой механизм. Данные из рекламаций и отзывов в приложении Додо Пиццы вносятся в Гугл Таблицу. В Google Data Studio я разработал форму, которая собирает эти данные из таблицы, объединяет по проблемам и пиццериям, считает процент проблем каждой пиццерии и сети в целом, позволяет формировать статистику за период, даёт информацию о динамике. Каждое утро на почту приходит письмо с результатами, также я использую эти данные в ежедневной, еженедельной и ежемесячной рассылке для управляющих.

    Как я уже сказал выше, с Google Data Studio я разбирался с нуля. По мере освоения функций платформы я допиливал своё решение.

    1. Первая версия была экспериментальной, я тогда только осваивал Data Studio, поэтому не заморачивался над дизайном и удобством. Главным было, как можно скорее создать MVP, который будет работать и выполнять задачу по систематизации данных.


      Мониторинг 1.0.
    2. Вторая версия появилась по мере освоения платформы. Я заморочился над дизайном и добавил новые возможности (процент проблем по сети в целом, а не только по отдельным пиццериям, топ проблем, пару графиков).


      Мониторинг 2.0.
    3. В третьей версии появились данные о динамике всего и вся, а также ссылки на рекламации с указанием проблемы и номера заказа для удобного быстрого поиска и перехода.


      Мониторинг 3.0.

    Сейчас управляющая компания разработала и внедрила свой инструмент аналитики «Статистику проблем». На мой взгляд, она решает многие вопросы, но в ней не хватает анализа данных из приложения и ежедневной аналитики, поэтому отказываться от своего мониторинга я не планирую. Масштабировать на всю сеть (и не только) можно и моё решение. Если есть желающие внедрить его у себя — готов помочь. Финансовых затрат данный проект не требует.

    Самое важное


    1. Расскажи, какие бонусы/прибыль бизнесу твой проект уже даёт или может давать в будущем?
      Главный бонус – улучшение клиентского опыта за счёт снижения проблемности пиццерий, это в свою очередь ведёт к повышению лояльности клиентов и росту выручки, а также к снижению дисконта на возврат.
    2. Какие советы или слова поддержки ты можешь дать тем, у кого только-только зарождаются идеи своих проектов?
      Главное – не откладывать в долгий ящик. Надо брать и делать.



    Мы надеемся, что всем гикам мира найдётся место под солнцем! Не забывайте, что все ваши начинания рано или поздно исполнят своё предназначение и продолжайте чудить.

    Only registered users can participate in poll. Log in, please.

    Проголосуйте за лучший проект по версии хабровчан

    • 9.7%Проект «Мониторинг проблем»3
    • 22.6%Проект «Температурный контроль холодильных и морозильных камер»7
    • 29.0%Проект «HS Player»9
    • 32.3%Все проекты хороши, не могу выбрать лучший10
    • 6.4%Все проекты отстой, не могу выбрать лучший2
    Dodo Engineering
    О том, как разработчики строят IT в Dodo

    Similar posts

    Comments 0

    Only users with full accounts can post comments. Log in, please.