Как стать автором
Обновить
53.88
Mindbox
Автоматизация маркетинга
Сначала показывать

Как инженеру выбрать работу

Время на прочтение18 мин
Количество просмотров14K

Даже на текущем рынке кандидата, каждая смена работы — это серьезное решение, инвестиция нескольких лет жизни или — неприятная строчка в резюме, причина для неудобных вопросов вроде «А почему вы ушли из компании X, проработав там немногим более года?».

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

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

За 18 лет в индустрии, в том числе на роли исполнительного директора и позднее CEO, мне удалось познакомиться с большим количеством бизнесов и поучаствовать примерно в тысяче инженерных интервью. На основе этого опыта и опыта коллег по Mindbox сложилась система, которой тут делюсь. И буду благодарен за предложения в комментариях, как ее улучшить.

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

Читать далее

gRPC в .NET — рецепты счастья

Время на прочтение12 мин
Количество просмотров28K

Массовый переход от монолитов к микросервисам решает ряд проблем:

раздельный деплой и рефакторинг;

удобное масштабирование частей системы;

прозрачное разграничение ответственности команд;

снижение бласт-радиуса;

снижение когнитивной нагрузки на разработчика.

При этом создает другие проблемы: взаимодействие сервисов существенно сложнее и дороже, чем взаимодействие объектов в памяти. Частично упростить его можно с помощью протокола gRPC.

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

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

По материалам выступления на конференции DotNext.

Читать далее

Миллиард отправок в неделю и 730 тысяч запросов в минуту. Как справляемся с ежегодным удвоением и не унываем

Время на прочтение5 мин
Количество просмотров4K
Четвертый ежегодный отчет о развитии разработки Mindbox по итогам черной пятницы — недели максимальной нагрузки.

Маркетинговая CDP — это не только коммуникации, приносящие значимую долю выручки, но и механики реального времени: расчет чеков, персонализация мобильных приложений и сайтов. Mindbox задуман и всё чаще работает как центральная back-end система бизнеса, интегрирующая другие. Так, например, выглядит схема интеграций одного из давних и продвинутых клиентов:

image

Поэтому клиентам важно понимать, можно ли на нас положиться сегодня и в будущем. Ниже приглашаю прочитать:

  • как справляемся с надежностью при росте нагрузке (кажется, неплохо);
  • что для этого уже сделали;
  • что будем делать дальше: планы по технике и продукту.
Читать дальше →

Как грумить задачу: чек-лист с примерами

Время на прочтение8 мин
Количество просмотров15K
Наша разработка постоянно растет, поэтому приходится онбордить по несколько человек в месяц и каждому рассказывать, как правильно грумить задачи. Обучать груму «вручную» больно, потому что это отнимает много времени, какие-то знания теряются по дороге и выскакивают ошибки, которых можно было избежать. Чтобы облегчить жизнь лидам и новичкам, мы собрали чек-лист с описанием этапов грума и примерами. Он будет полезен разработчикам продуктовых компаний, которые онбордят или которых недавно приняли в штат. Чек-лист поможет разбивать задачи на этапы, чтобы ничего не терялось и результат соответствовал ожиданиям.

Все примеры ниже — специфичные и подойдут не каждому, они построены в основном на продуктах Mindbox «Рассылки» и «Программа лояльности». Продукты помогают нашим клиентам запускать автоматические рассылки по триггерам (действиям или событиям), чтобы не спамить пользователей, выдавать промокоды и выстраивать бонусные системы. Если поймете, что чек-лист полезен, можете заменить примеры на свои и использовать.

Ниже подробнее о том, как сделать качественный грум:

  • цель грума,
  • необходимый минимум,
  • уточнение требований и контекста,
  • типичные этапы,
  • особенности при доработке механик.
Читать дальше →

Как уменьшить размерность метрик в Prometheus, если вы не DevOps

Время на прочтение5 мин
Количество просмотров4.7K
Иногда команда разработки сталкивается с задачей, в которой у неё мало экспертного опыта, и через пробы и ошибки она находит неочевидное решение. Так произошло и с нами, когда понадобилось перенести сбор метрик из Infux в Prometheus. Их итоговая размерность оказалась 1,5 миллиона, и мы решили ее уменьшать. Инфраструктуру по сбору метрик (Prometheus, k8s, деплой через Helm) создавали DevOps-инженеры из другой команды, у которых не было ресурсов для нашей задачи. Поэтому мы заручились их советами, изучили документацию и решили снижать размерность метрик силами разработки.

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

  • как в два шага уменьшить размерность метрик с помощью двух ServiceMonitor,
  • какой есть эталонный способ уменьшить размерность метрик без «костылей»,
  • почему не стоит тратить время на снижение размерности метрик с помощью Pushgateway.
Читать дальше →

Как масштабировать разработку при 400 000 RPM и не надорваться

Время на прочтение10 мин
Количество просмотров3.8K
Если бизнес идет вверх, то запросы и нагрузка на разработку увеличиваются в разы. Рано или поздно каждый управленец сталкивается с выбором из двух крайностей: встать на сторону бизнеса, двигать продукт и демотивировать разработчиков бесконечным техдолгом или дать свободу разработке и потерять контроль над задачами бизнеса.

Mindbox 15 лет развивает B2B-продукт и вырос с 3 до 70 человек в разработке. Мы тестировали разные подходы к масштабированию и готовы поделиться опытом, чтобы вам не пришлось наступать на те же грабли. Ниже расскажу, как попробовали полную автономию команд и централизацию, роняли надежность, демотивировали команды, как в результате с этим справились и выработали свою систему масштабирования.

По материалам выступления на Agile Days 2021:


Стоит ли переходить с Powershell DSC на Ansible и как это сделать

Время на прочтение11 мин
Количество просмотров6K
Об IaC под Windows пишут мало, потому что DevOps/SRE ассоциируется в основном c Linux и Kubernetes. Мы решили исправить эту ситуацию и сравнить инструменты, которыми можно управлять IaC на базе Windows. Статья будет полезна разработчикам, которые работают с Windows-инфраструктурой и выбирают способы управления, и тем, кто уже внедрил Powershell DSC или Ansible, но сомневается в своем решении. Ниже поделимся опытом и расскажем:
  • как устроен Powershell DSC и чем он отличается от Ansible при управлении инфраструктурой на Windows;
  • почему мы перешли на Ansible;
  • с какими проблемами столкнулись и как их решали;
  • как соотносятся ожидания и реальность после перехода на Ansible;
  • кому стоит выбрать Powershell DSC, а кому — Ansible.
Читать дальше →

Как с помощью нейросети определить лучшую дату отправки email и повысить доход рассылки в 8,5 раз

Время на прочтение6 мин
Количество просмотров7K
Чтобы email-рассылка не затерялась во входящих, а клиенты чаще открывали письма и покупали, важно угадать правильное время отправки. С помощью нейросети мы проанализировали поведение клиентов и спрогнозировали дату отправки следующего email, чтобы порекомендовать клиенту товары в то время, когда он захочет их купить. Протестировали в зоомагазинах на рассылках с предложением повторной покупки и оценили результат с помощью AB-тестов. Получили следующие результаты:

в 23 раза
больше целевых отправок email с помощью нейросети по сравнению с триггером

в 8,5 раз
увеличился доход от email-рассылки по атрибуции last click

в 2 раза
уменьшился процент отписок

в 17 раз
выросло число открытий в абсолютном значении


Ниже поделимся опытом и расскажем:

  • почему решили использовать LSTM-модель нейросети для предсказания даты отправки email вместо алгоритма градиентного бустинга;
  • как устроена LSTM;
  • какие данные нейросеть использует для обучения;
  • какую архитектуру нейросети использовали и с какими сложностями столкнулись;
  • каких результатов достигли и как их оценивали.
Читать дальше →

Рост 100% в год и 400 тыс. RPM. Эволюция разработки 2018—2020: процессы, люди, техника и планы

Время на прочтение8 мин
Количество просмотров2.6K
Mindbox — два миллиона строк кода b2b бизнес-логики под нагрузкой. Наши продукты: CDP, программа лояльности, персонализация сайта, транзакционные и массовые рассылки — критичные по надежности и скорости работы элементы инфраструктуры бизнеса.

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

Это — третий ежегодный пост про разработку по итогам черной пятницы — недели максимальной нагрузки. Почему наконец думаем, что мы молодцы; что для этого сделали; почему столкнулись с трудностями и что планируем делать дальше.
Читать дальше →

Data Science в обувном магазине: предсказали поведение клиентов и увеличили конверсию сайта на 16%

Время на прочтение6 мин
Количество просмотров3.7K
Российский производитель обуви Mario Berluchi автоматизировал маркетинг, внедрил привычные для интернет-магазинов механики, но не остановился на этом и запустил направление Data Science. Теперь магазин с помощью алгоритмов машинного обучения предсказывает действия клиента: что он сделает после добавления товара в корзину — купит или уйдет, а если уйдет, то когда вернется.

Предсказание помогает в нужный момент побуждать клиента к покупке или, наоборот, не трогать его, если он купит и так. В рамках AB-теста механика персонализации сайта на основе предсказания помогла увеличить конверсию интернет-магазина на 16,5% и ARPU на 35,7% относительно контрольной группы.

Азамат Тибилов, директор по маркетингу Mario Berluchi, рассказывает о механике с предсказанием, измерении результатов, истории запуска направления Data Science и делится советами для интернет-магазинов, которые тоже хотят растить выручку за счет полезного и основанного на данных маркетинга.

Mario Berluchi — российский производитель обуви, сумок и аксессуаров с пятью офлайн-магазинами в Москве и онлайн-магазином.

Масштаб. 200 тысяч посетителей сайта в месяц.

ИТ. Сайт на Bitrix, бэк-офис на «1С», платформа клиентских данных Mindbox.

Задача. Повысить выручку за счет работы с накопленными данными.

Результат. Рост конверсии сайта на 16,5% в рамках AB-теста, рост ARPU на 35,7%, снижение доли брошенных корзин на 17,2%.

Читать дальше →

Открыт набор в Школу разработчиков с перспективой стажировки в Mindbox

Время на прочтение7 мин
Количество просмотров3.5K
Школа разработчиков — первый шаг к стажировке в Mindbox. Программа предназначена для студентов 3–4 курса и выпускников технических вузов с базовыми навыками программирования.
Первый набор Школы стартует 6 сентября, курс разбит на 8 занятий по 4–5 часов.

Чтобы записаться, оставьте контактные данные — пришлем тестовое задание, рассчитанное на два часа. Но сначала убедитесь, что обучение в Школе разработчиков Mindbox — это то, что вам нужно. Все подробности — под катом.

Читать дальше →

Черная пятница: взгляд на нагрузку глазами разработчика

Время на прочтение4 мин
Количество просмотров2.7K

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

Читать дальше →

Как мы разрабатываем персональные товарные рекомендации

Время на прочтение8 мин
Количество просмотров8.1K

image
Наши клиенты-магазины хотят делать крутой маркетинг. Чтобы люди больше покупали, они регулярно шлют им email-рассылки. И каждый раз думают: “Что же написать в письме?”.




Можно писать просто: “Покупайте у нас почаще!”, но это не очень-то работает. Идея получше — вставлять в письмо рекламу товаров. Желательно, рекламу товаров, которые заинтересуют покупателей.


Дальше расскажу о том, как мы с нуля делали настоящие персональные рекомендации.

Читать дальше →

Как вызвать перемены при помощи ретроспективы

Время на прочтение5 мин
Количество просмотров6.6K

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


Регулярные ретроспективы вызывающие изменения снизу — важнейший признак организовавшейся живой команды.


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


Для проведения ретроспективы желателен опытный фасилитатор. Особенно это важно в стартующих командах.


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


Цель


Распространено мнение, что цель ретроспективы — улучшить работу. Это упускает ключевую деталь — самостоятельность. Считаю, цель ретроспективы — чтобы команда сама улучшила свою работу.


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


Для контроля инструкций нужен менеджер. А автономная команда должна сама их контролировать, что требует принятия решений членами команды на личностном уровне.


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

Читать дальше →

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

Как мы написали еще один алгоритм RFM-анализа

Время на прочтение5 мин
Количество просмотров14K

КДПВ Недавно мы рассказали, почему придумали свой RFM-сегментатор, который помогает сделать RFM-анализ за 20 секунд, и показали, как использовать его результаты в маркетинге.


Теперь рассказываем, как он устроен.


Читать дальше →

RFM-анализ одной кнопкой или как мы облегчили клиентам жизнь

Время на прочтение6 мин
Количество просмотров15K

image
С тех пор как в компании Mindbox впервые произнесли Machine Learning, общей целью стала Большая Зеленая Кнопка. Это такая кнопка во весь экран, при нажатии на которую всё работает само и приносит прибыль.


В аналитическом проекте «RFM» цель менее амбициозная — Маленькая зеленая кнопка. Нажимаешь, и база автоматически делится на сегменты, по которым запускается отправка писем (например).




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


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

Читать дальше →

Немного о ретроспективе

Время на прочтение6 мин
Количество просмотров12K
Для команды разработки важно регулярно проводить ретроспективу, чтобы постоянно совершенствоваться. Но какой она должна быть?

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

  • на ретро тратили по 2 часа и сильно выматывались
  • обсуждения периодически уходили в затяжные бесполезные споры
  • некоторые мелкие проблемы не успевали решить и постоянно переносили на следующее ретро
  • отдельным членам команды надоедали ретроспективы из-за однообразия

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

Прошлой весной я сходил на Okademy от ScrumTrek. Это обширный курс, включающий в себя много полезного для скрам-мастера, но для меня самым полезным оказалась часть о том, как эффективнее проводить ретроспективы. Хочу рассказать, как это нам помогло.

image
Читать дальше →

Одних тестов недостаточно, нужна хорошая архитектура

Время на прочтение11 мин
Количество просмотров9.3K
Мы все понимаем, что такое автоматические тесты. Мы разрабатываем софт, и хотим, чтобы он решал какие-то проблемы пользователей. Написав тест, мы убеждаемся, что конкретная проблема решается конкретным участком кода. Потом требования изменяются, мы меняем тесты и меняем код соответствующим новым требованиям образом. Но это не всегда спасает. Кроме высокого тестового покрытия наш код должен быть спроектирован таким образом, чтобы защищать разработчика от ошибок ещё при его написании.

В статье я постарался описать одну из проблем, которую может решить хорошая архитектура: связанные участки кода могут разъезжаться между собой, это может приводить к багам, и тесты тут не спасут. А грамотный дизайн может помочь.
Читать дальше →

Проектирование и разработка шаблонного движка на C# и ANTLR

Время на прочтение14 мин
Количество просмотров11K

Предыстория


Уже много лет мы помогаем нашим клиентам отправлять потребителям хорошие, информативные и человеческие письма. В них вместо сухого “Добрый день” мы пишем “Здравствуйте, Никита!”, а вместо “Ваш баланс пополнился” сообщаем “вы получили 25 баллов”. Но маркетологи становятся все изобретательнее, и современное письмо от интернет-магазина должно выглядеть так:


В реальной жизни всего этого на порядок больше в каждом письме


И мы хотим уметь генерировать такие письма автоматически.

Читать дальше →

Про опыт обучения в OKademy

Время на прочтение9 мин
Количество просмотров5.7K

Вместо вступления


Всем привет. Делюсь впечатлениями от обучения в школе скрам-мастеров от ScumTrek, под хабракатом шесть страниц текста моих мыслей и впечатлений по этому поводу. Велкам.

Читать дальше →

Информация

Сайт
www.mindbox.ru
Дата регистрации
Дата основания
2006
Численность
201–500 человек
Местоположение
Россия