Всем привет, меня зовут Семен, я iOS-разработчик в Ситимобиле. ?♂️ Недавно мы провели внутренний хакатон для iOS-разработчиков. Расскажу, зачем мы это сделали, как всё прошло и что получилось.
Зачем мы это сделали?
Для тех, кто не знает, хакатон — это офлайн-встреча, на которой разработчики, дизайнеры, продакт-менеджеры и другие специалисты за короткий промежуток времени (обычно 48 часов) создают MVP проекта на заданную тему.
У нас в Ситимобиле как раз витали в воздухе продуктовые идеи, для которых не находилось ресурсов в рабочее время. Опыта проведения хакатона в компании ещё не было, но многие хотели попробовать. К тому же выходила iOS 15, для которой можно было сделать различные платформенные фичи. Стечение всех этих обстоятельств и привело нас к тому, что мы организовали внутренний хакатон для iOS разработчиков.
Как это прошло?
Конверсия в участие была не такая высокая, как хотелось бы, но тем не менее откликнулось несколько iOS-разработчиков и дизайнер. Для первого раза мы решили ограничиться одним днем вместо каноничных 48 часов. Как и полагается хакатону, у нас была куча еды и призы. Изначально тема была «Новые интерфейсы заказа такси», но можно было привнести что-то своё.
В качестве судей выступали наши продакт-менеджеры и техлид iOS-команды.
Что получилось?
В итоге у нас получилось три проекта от трёх команд.
1. Приложение под watchOS
Первая команда оказалась адептами Apple Watch, для которых они решили разработать визуальную составляющую приложения. У ребят получился свежий прототип приложения (свежий, потому что у нас уже была однажды watchOS-версия, и она канула в небытие), в котором можно наблюдать за статусом активного заказа, а также создавать новый.
Идея имеет хороший потенциал, так как популярность носимых устройств сильно возросла и приложения для них актуальны как никогда. Если несколько лет назад это было 3.5 пользователя, то с тех пор их количество выросло кратно и поддерживать такую функциональность стало целесообразно. К тому же бизнес-логика в большей степени переиспользуется, и необходимо только разобраться с визуальной составляющей.
2. Siri Shortcuts
Начиная с iOS 12 Apple добавила такую замечательную фичу, как Siri Shortcuts. Благодаря голосовым командам можно ускорить различные рутинные задачи, будь то установка таймера, запуск музыки или прокладывание маршрута в навигаторе. Достаточно просто сказать «Эй, Сири, включи мою музыку».
А если выполнить ряд настроек в коде, то со временем Сири обучится на данных, и начнет предлагать шорткаты на заблокированном экране, в центре уведомлений и в поиске спотлайта, ориентируясь на то, в какое время и в каком месте вы выполняете эти действия.
Наша вторая команда решила изучить технологию шорткатов Сири, благодаря которым можно заказать такси голосом. Потратив несколько часов на реализацию и отладку, получился вот такой прототип.
Приятный бонус — это можно использовать как на iPhone, так и на Apple Watch. Технология оказалась не такой сложной, а вау-эффект она вызывает существенный. Да и голосовой интерфейс — один из текущих трендов, который полезно поддержать.
3. Статистика по поездкам за год
Третья команда в лице меня реализовала аналитику по поездкам. Ранее я уже предлагал в конце года вывести статистику по поездкам для каждого клиента, о чем и сообщал коллегам из маркетинга. Но, к сожалению, на это не хватало ресурсов разработки, да и задача была низкоприоритетная, поэтому я взял инициативу в свои руки и сделал прототип фичи.
Так как время было ограничено, то для своей визуальной составляющей я решил переиспользовать механизм сторизов (почитать, как я их делал, можете тут). В итоге мне оставалось просто сделать сетевой запрос на получение истории поездок за последний год, обработать полученные данные и отобразить их в формате истории.
На реализацию ушло несколько часов, и, как мне кажется, получился интересный результат. Как минимум, для себя я узнал, что если выходить заранее из дома, то можно сэкономить деньги на платном ожидании. А белая Киа — это мой верный спутник в поездках.
Можно было пойти дальше и проанализировать расстояние, водителей, время и т.д. Я думаю, там тоже нашлись бы интересные идеи.
Итоги
Несмотря на то, что участников было немного, для нас это был важный опыт. Мы показали, что такой формат может жить и приносить пользу компании. Показали, какие фичи можно быстро сделать, которые, возможно, дойдут до продакшена. И конечно же, разработчики смогли изучить интересные для себя технологии и реализовать свои задумки. Хотим теперь развивать культуру хакатонов внутри компании и делать их масштабнее!
P.S.
А это мы сидим после хакатона на крыше офиса и разговариваем о том, каково это — провести выходные в офисе, и как бороться с болью в спине после 25 лет.