Dodo Engineering – Telegram
Dodo Engineering
3.65K subscribers
868 photos
32 videos
3 files
692 links
Рассказываем о том, как развиваем IT в Dodo Brands.

Habr https://habr.com/companies/dododev/
Вакансии https://dodoteam.ru/vacancies/
Download Telegram
Как добавить возможности Chat GPT в ваше приложение

Последние пару месяцев мы работали над тем, чтобы расширить функциональность мобильного приложения Додо Пиццы: дать возможность заказывать пиццу через чат с помощью AI-помощника и создавать уникальные рецепты пиццы на основе настроения и вкусовых предпочтений.

Когда мы начали создавать эту систему, у нас возникло множество вопросов. И если вы новичок в работе с GPT-моделями, у вам тоже может быть непонятно, как интегрировать помощника AI в приложение, как использовать API Open AI, какие сложности могут возникнуть и как их решать.

💻 Ответами на подобные вопросы делится Константин Полонский в своей статье — заходите на Medium почитать (статья на английском), задавайте вопросы и делитесь своим опытом!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥41👍1
Мы планировали-планировали и напланировали

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

Мы в Dodo используем методологию OKR (Objectives&Key Results) — она позволяет синхронизироваться всем юнитам и избежать ситуации «а вот это мы не учли» или когда бизнес приносит в IT задачи без понимания сроков и сложности.

За организацию и фасилитацию отвечают People&Process лидеры (PPL): они создают чат, в котором собирают всех участников стратсессии, лидеров, расписывают все этапы и фиксируют договорённости.

Сегодня хотим поделиться статьей Ярославы Рощиной, в которой она на примере годового планирования одного нашего крупного юнита рассказала, как устроен процесс с точки зрения фасилитатора. В конце статьи вы найдёте чек-лист для проведения успешного планирования — штука полезная, особенно для начинающих скрам-мастеров и аджайл-коучей.
10🔥61
Деврел — не человек, или Всем мы немножко деврел

Деврел — штука непонятная, окруженная мифами и легендами. Наши зарубежные коллеги вроде бы с этим разобрались и даже умных книжек написали, но деврел в русскоязычном пространстве всё ещё продолжает быть загадочным и непостижимым для многих.

💻 Вероника Ильина, наша Head of Devrel, собрала 14 утверждений про деврел и разобралась, что правда, а что ложь — и сделала это в лучших традициях «Разрушителей Мифов».

Читать 10 минут

🤨 Бонус в конце статьи — чек-лист для тех, кто хочет деврельской движухи в своей компании, но есть вопросик.
Please open Telegram to view this post
VIEW IN TELEGRAM
12🔥4👏1
Kodein для Android

Говорят (с), что Android-разработчики обожают DI. Мы не проверяли, но заметили, что про Kodein почему-то мало рассказывают и пишут. Максим Качинкин решил, что эту несправедливость надо исправлять, тем более что Kodein активно развивался последние пару лет. А ещё мы используем его в приложении Drinkit и успели оценить его преимущества (недостатки, впрочем, тоже).

Cначала Макс рассказал про Kodein на Mobius, но в один доклад не поместилось всё, чем он хотел поделиться, — и вот уже про Kodein для Android есть его статья на Хабре.

Тут надо сказать, что в одной статье все стороны тоже не вышло затронуть, в итоге публикаций будет несколько — поэтому подписывайтесь на наш блог или лично Макса, чтобы не пропустить следующие.
5👍2
🏠 Один из принципов Dodo — это владение. Он про отношение к продукту, команде, компании как к своим. Владеть — это не только привилегия, но и ответственность. Всё как в обычной жизни: купил хороший дом — следи за ним, вовремя чини крышу, стриги газон и крась каждую весну, иначе дом превратится в развалюху и все радости обладания им исчезнут.

Этот принцип лежит в основе нашей культуры. Он же применяется и к сервисам.

💻 Наш СТО Павел Притчин сформулировал принципы владения сервисами, которые помогают компании и командам лучше с этим работать.

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

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

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

4. Должен быть хороший вижен и стратегия развития: как будет меняться в будущем функциональность, архитектура, инструменты. Понимание, куда развивать сервис, помогает распределять внимание. Фокус будет уходить на важные вещи, а неважные могут и подождать. Также это помогает владельцу и всем, кто хочет законтрибьютить в сервис, лучше понять, что можно, а что нельзя делать.

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

Некоторые пункты из этого списка у нас уже есть (например, карта раскатки фич), некоторые только появляются (реестр сервисов).

Интересно узнать, как вы понимаете «владение», как этот принцип проявляется в вашей работе — поделитесь в комментариях.
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥3👍2👌1
1. Поддерживать и реагировать на сбои сервиса в соответствии с его уровнем (SLO).

2. Выполнять технические эпики по сервису несколько раз в год.

3. Исправлять критические баги и баги, связанные с безопасностью.

4. Контролировать качество при контрибьюшене от других команд.

5. Поддерживать сервис, чтобы он обеспечивал более 80% пунктов по НФТ, проверять актуальность каждые полгода.

6. Создавать и развивать правила контрибьюешена в сервис от других команд.

7. Выполнять задачи по техдолгу минимум пару раз в квартал.

Что ещё вы бы добавили в этот список?
👍15
This media is not supported in your browser
VIEW IN TELEGRAM
Кое-что интересное ждёт нас 7 сентября на канале Android Broadcast: в прямом эфире пройдёт собеседование Android-разработчика в продуктовую команду.

Интервьюировать будет Максим Качинкин, наш Android Tech Lead и ведущий канала Мобильное чтиво.

Собеседование продлится полтора часа и состоит из 5 секций: знакомство, технический опыт, техническая секция, творческое задание и вопросы от кандидата.

Требования к кандидату:
☑️ опыт разработки под Android от 2-х лет (ваше приложение или отдельные фичи работают в продакшене);
☑️ уверенные знания Android Framework, системы Android View, опционально Compose;
☑️ знания современной архитектуры Android-приложений (слоистая/чистая архитектуры), MVx-паттерны.

👉 Если хотите попробовать свои силы и стать кандидатом — подавайте заявку.

А если вам просто посмотреть — поставьте напоминание на Ютубе.
🔥125👍1
Новый учебный год — новый рекорд заказов в минуту!

Два последних месяца мы готовили Dodo IS к этому дню, учитывали опыт прошлых падений, обнаруживали и исправляли ошибки на стороне сервисов, нагрузочного тестирования и инфраструтуры.

Спасибо всем командам за отличную работу!
22🔥11
Начинаем через час, в 19:00!
Forwarded from Android Broadcast (Кирилл Розов)
🔴 Cобеседование Android-разработчика. Максим Качинкин, Dodo Engineering

Сегодня, 7 сентября в 19:00 (GMT+3) пройдет собеседование на позицию «Android-разработчика в продуктовую команду» в прямом эфире у Максима Качинкина, Android Tech Lead в Dodo Engineering. 

Собеседование пройдет в формате, состоящем из 5 секций (1.5 часа): знакомство, технический опыт, техническая секция, творческое задание и вопросы от кандидата.

#AndroidBroadcast #собеседование
🔥9
Короткий пятничный фоторепортаж с DevOpsDays Almaty.

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

Ставьте под постом, если хотите почитать расшифровку доклада.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25👌2👨‍💻1
Шейдеры в iOS 17 для начинающих


Шейдер — это программа для видеокарты, которая считается для каждого пикселя по отдельности. Миллионы раз за кадр и миллиарды раз в секунду! На выходе получаются  классные эффекты, например перелистывание страниц в iBooks. Но есть одна проблема — код шейдеров радикально отличается от того, которым iOS-разработчики обычно красят кнопки.

В iOS 17 Apple сильно упростила написание шейдеров — теперь название функции достаточно указать модификатором к любой View в SwiftUI. Самое время поднять тему и понять, что это за шейдеры такие.

В первой статье вместе с Мишей Рубановым разбираемся в теме, базовых функциях и тренируем шейдерную насмотренность. А уже в следующей разберём по шагам сложные примеры.
4👍4👎1
Выход Dodo Brands на международный рынок и цель стать глобальной компанией сильно повлияли на то, какой стала Dodo IS. Система, которая долгое время работала одинаково для ресторанов в одной стране, превращается в платформу, становится удобной для интеграций с продуктами внешних разработчиков, в ней появляются специфичные для разных стран сценарии и фичи.

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

Подключайтесь к онлайн-трансляции 21 сентября, в 16:45 — участие бесплатное, но нужно зарегистрироваться.
🔥12👍1
Как увеличить мощность A/B-теста, если мало данных и время поджимает

Одно из наших исследований показало, что пользователи, которые дают доступ к геолокации, чаще совершают заказы в приложении Додо Пиццы.

Мы решили проверить, можем ли мы нарастить долю таких пользователей, и запустили A/B-тест. К моменту, когда нужно было проводить анализ, оказалось, что данных мало, да ещё и часть из них оказалась пришлось выбросить в мусорку.

Но время поджимало, все ждали результатов, и тогда Анастасия Соколова, наш продуктовый аналитик, использовала свои «секретные техники» по анализу A/B-тестов.

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

Читать 6 минут
👍8👏21
😁12🔥4👏4
CD-диск и NameDrop

Вторая статья про шейдеры в SwiftUI уже вышла!

Вместе с Мишей Рубановым разбираемся, как создаются сложные и красивые эффекты: блеск СД-диска и анимация NameDrop из iOS 17.

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

И напоминалочка, что новичкам лучше начать с первой статьи — в ней раскрываются базовые принципы работы с шейдерами.
🔥5👏3
Закрываем неделю подборкой горящих вакансий от нашей команды!

💻 Product Owner Data Platform
Ищем продакта в команду Data Platform. Цель платформы – сделать так, чтобы опираясь на данные и аналитику, команды разработки создавали прорывные продукты, внедряли инновации и постоянно развивались.

🍕 Product Owner Digital Pizza Experience
Ищем продакта в команду Digital Pizza Experience, которая отвечает за глобальные приложения и сайт Додо Пицца. Развиваем функционал – например, запускаем определение адреса по геолокации, а также развиваем центр экспертизы клиентского опыта: настраиваем процесс работы с гипотезами и запускаем исследования пользователей.

🧙 Data Analytic в IMF
Ищем data-аналитика в команду International Master-Franchising. Команда развивает концепции Dodo Brands по всему миру, за следующие три года вместе с нашими партнерами-франчайзи планируем вырасти с 30 до 140 точек в разных странах.
🔥61👍1🎉1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥12