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
Не любите телеграм-ботов? Вы просто не умеете их готовить!

А ведь они повсюду: помогают бизнесу общаться с клиентами, принимать заказы, присылать уведомления и отчёты и не только. Но если пользователь не может разобраться в его функциональности, то и ценности в нём не увидит.

В маркетплейсе Dodo IS есть 2 бота: один уведомляет управляющих пиццерий о стопах, тикетах и днях рождениях, второй присылает отчёты и аналитику. Их функциональность надо было упаковать таким образом, чтобы взаимодействовать с ними было легко и просто.

Кажется, что в Телеграме не сильно разгуляешься в плане UX. Но достаточно продумать тексты сообщений, структуру меню, настройки уведомлений и часовых поясов — и всё будет понятно без инструкций и требовать минимального участия пользователя. Ему не придётся вспоминать, зачем он вообще зашёл в бот, что хотел сделать, не нужно будет разбираться с настройками уведомлений и перечитывать сообщения несколько раз.

💻 В процессе модерации мы учли все эти моменты и написали руководство по UX для телеграм-ботов. Если вы делаете своего бота, эти советы могут пригодиться.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13
Forwarded from QAжется, работает! (Gaya Dovgal)
Когда речь идёт о написании своих нагрузочных сценариев «поверх» JMeter, есть десятки способов выстрелить себе в ногу. Самый верный способ это заметить — качественно измерять то, что мы делаем.

На осенней конференции Heisenbug Дима Тучс рассказал о работе с памятью в Java, о многопоточности и тред-пулах и даже о такой банальной теме, как парсинг JSON. А ещё о том, почему и как всё это пришлось переписать, чтобы нагрузить бэкенд Dodo IS втрое выше. 💻

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

P.S. Спасибо организаторам за то, что поделились записью с нашими подписчиками. Кстати, если у вас есть что рассказать на Heisenbug этой осенью — самое время отправить заявку на выступление.
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍1
Собираем неравнодушных QA инженеров и не только на ламповые посиделки в арт-коворкинге Санкт-Петербурга.

💻 Ярослава Рощина (Dodo Engineering) расскажет, как в её команде удалось сократить время разработки фич.

🛠 Татьяна Березенцева (СберКорус) проведёт мастер-класс по запуску автоматизации API на проекте.

🗓 19 июля, начало в 19:00

Офлайн, Санкт-Петербург, участие бесплатное.

Регистрируйтесь и приходите, если будете в это время в городе.

До встречи!
Please open Telegram to view this post
VIEW IN TELEGRAM
122
💻 Компьютерное зрение на страже стандартов качества пиццы

Представляете, когда-то нашей команде контроля качества приходилось измерять линейкой кусочки пиццы на фото, чтобы определить равномерность нарезки. Линейкой, Карл!

Пару лет назад всё сильно изменилось — мы стали определять дефекты с помощью компьютерного зрения. С тех пор мы обучили модели не только определять белое дно и горелый борт (об этом можно почитать на Хабре), но и:
— вид пиццы,
— количество витков соуса,
— ширину борта,
— равномерность нарезки кусочков,
— срок годности на маркировках.

И уже экономим 30% времени команды, которое тратится на проверку отчётов клиентов. Круто же!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍21
Сегодня проходит ежегодный Съезд Dodo, на котором впервые выступит новый CEO Dodo Engineering Арсений Васильев.

Арсений — кофаундер проекта «Где Шаверма», в Dodo Brands он отвечал за развитие стартапа Донер 42, пару лет спустя — концепции Дринкит.

Приглашаем присоединиться к трансляции в 17:30 и послушать о трансформации, которая ждёт IT в Dodo.

Запись должна быть доступна по той же ссылке.
🔥91
Новая команда и новая вакансия Head of ML

Команда дата-инженеров в Dodo появилась несколько лет назад, когда нужно было разработать проект автоматического заказа для команды Supply Chain. После реализации мы осознали, что можем создавать не только сложные ML-модели, но и решить проблемы базовой аналитики в Dodo IS.

Сейчас у нас есть решения, под капотом которых работают модели машинного обучения: прогнозирование спроса, компьютерное зрение в контроле качества продукта, uplift модели в маркетинге.

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

Поэтому мы решились организовать полноценный Data Office с 3 направлениями: Data Engineering, Analytics и ML.Core. Первые два уже есть, а третье мы только собираем и ищем лидера, который его возглавит. Такого человека, который не побоится предлагать самые разные идеи и будет видеть бизнес-процессы, начиная от производства продуктов на кухне до улучшения мобильных приложений. Который когда-то сам разрабатывал ML-модели, погрузился в менеджмент и умеет внедрять изменения.

Перед нами стоит много вызовов: от использования простых моделей до внедрения Deep Learing и State-of-the-Art — диапазон задач и их сложность огромная!

Если чувствуешь, что знаешь такого человека или сам подходишь под наше видение лидера команды — посмотри полное описание вакансии и напиши Полине. Будем рады пообщаться!
🔥7👍1
13 базовых понятий, которые нужно знать аналитику или ML-инженеру

по версии Андрея Филипьева, CDO Dodo Engineering

Важно не просто знать, о чём идёт речь, но понимать как применять это в реальных задачах. Если есть ещё примеры на эти пункты, объяснение проблем и как их решали — это топ!

1. Случайная величина
2. Математическое ожидание (статья выше)
3. Закон больших чисел
4. Распределение
5. Нормальное распределение
6. Центральные предельные теоремы и причем тут нормальное распределение
7. Квантили (перцентили)
8. Доверительный интервал. Конкретные задачи.
9. Оценка стат. значимости
10. p-value
11. Смещение и дисперсия (bias and variance)
12. A Deeper look at Mean Squared Error — Count Bayesie
13. Нормализация и стандартизация


Есть вещи и посложнее, конечно — полный список того, о чём обычно Андрей спрашивает кандидатов, можно подглядеть у него в канале.
🔥6👍1
Как добавить возможности 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