Блог

Обновлено / Дмитрий Пирязев

Внедрение локального модуля «Честный ЗНАК» в бизнес: от проблемы к решению

ИТ и бизнес

С 1 марта 2025 года вступили в силу требования к обязательной оффлайн-проверке товаров, подлежащих обязательной маркировке средствами идентификации. Это коснулось всех бизнесов, работающих с системой «Честный ЗНАК». В случае недоступности онлайн-сервиса проверки маркировки (например, из-за проблем с CDN или интернет-соединением), система требует производить проверку с помощью локального решения — ЛМ ЧЗ …

Обновлено / Дмитрий Пирязев

«Разработка своего ПО» VS «Готовый софт»

ИТ и бизнес

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

Обновлено / Дмитрий Пирязев

Засучивайте рукава

ИТ и бизнес

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

Обновлено / Дмитрий Пирязев

ИИ глазами разработчика

ИТ и бизнес

На данный момент тема с ИИ доносится изо всех утюгов, поэтому самое время высказать свое непопулярное мнение. Большинство наших заказчиков знают, насколько негативно я отношусь к ИИ и хайпу вокруг него. Попробую пояснить свою позицию простыми словами настолько, насколько у меня получится. Еще в универе на одном из предметов нам рассказывали теорию экспертных систем …

Обновлено / Дмитрий Пирязев

Когда использовать enum?

Проектирование

В данной заметке мы не будем рассматривать enum с технической стороны, нас будет интересовать, когда же стоит применять их c точки зрения проектирования. Enum — это очень дешевый и удобный инструмент, который позволяет отнести сущность к той или иной категории. Один из самых частых примеров — это состояние заказа { OnDelivery, Delivered, Completed, Canceled }…

Обновлено / Дмитрий Пирязев

Кому доверить разработку ПО

ИТ и бизнес

Допустим, что вы решились на разработку своей системы автоматизации, тогда следующим важным вопросом станет: «А кто же будет ее разрабатывать?». Давайте рассмотрим варианты без персоналий, кто же сможет заняться разработкой. Фрилансеры Сразу стоит уточнить, что тут мы не берем в расчет команду разработчиков с фриланс биржи. Данный вариант гораздо лучше перекликается с работой с ИТ компанией …

Обновлено / Дмитрий Пирязев

Монолит или микросервисы

ИТ и бизнес

Одним из самых ярких вопросов в мире программирования является «Монолит или микросервисы». И иногда заказчик может услышать, что для разработки программы будет использоваться архитектура микросервисов. Как правило, этот факт преподносится как некоторое преимущество. И еще чаще монолитная архитектура считается у разработчиков некоторым недостатком. Должен ли данный вопрос волновать заказчика? Ответ – однозначно да. Начнем издалека …

Обновлено / Дмитрий Пирязев

Почему мы не работаем по ТЗ

ИТ и бизнес

Я верю, что где-то существуют проекты, которые успешно и эффективно реализованы на основе ТЗ. Но это не точно… Проблема в том, что за всю свою карьеру я видел лишь одно ТЗ, очень очень давно. Начиная с проекта Додо ИС, такого больше не происходило. До сих пор помню как создавался движок для рекламных акций Додо ИС …

Обновлено / Дмитрий Пирязев

Результат разработки ПО

ИТ и бизнес

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

Обновлено / Дмитрий Пирязев

Стоит ли игра свеч?

ИТ и бизнес

Давайте поговорим подробнее о том, ради чего вы собираетесь городить огород, а именно разрабатывать свою информационную систему. При этом речь постараемся вести о преимуществах над софтом из коробки. Так уж получилось, что самым известным нашим проектом, который мы стартовали и развивали на протяжении нескольких лет, является Dodo IS (Информационная система Додо Пиццы). Мнение конечно субъективное …

Обновлено / Александр Шибанов

Создание алгоритма маршрутизации для сервиса доставки воды

Программирование

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

Обновлено / Александр Шибанов

Хочу свою Додо ИС, сколько будет стоить и сколько времени займет?

ИТ и бизнес

Приблизительно такой вопрос мне задают бизнесмены. Сложно дать ответ, потому что программистам нужно техническое задание, чтобы точно ответить, а вы его не предоставляете (у нас даже родилась такая поговорка: «Хочешь избавиться от заказчика — пошли его писать ТЗ») …

Обновлено / Дмитрий Пирязев

Индексы в реляционных БД на пальцах

Базы данных

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

Обновлено / Александр Шибанов

Kometa Fit. Как мы автоматизировали сеть фитнес-клубов в Москве

Проекты

Основная задача — создать экономически рабочую, масштабируемую информационную систему, с возможностью расширять модель, чтобы можно было открывать новые клубы, развивать их и получать прибыль. Нами была создана информационная система, позволяющая оцифровать большинство процессов, которые происходят в клубе (посещение клиентов, покупка и продление абонементов, работа с тренерами и т.д.) …

Обновлено / Дмитрий Пирязев

Хранение истории состояний в реляционной БД

Базы данных

Хранение истории состояний является достаточно часто встречающейся задачей. Например, вам нужно хранить информацию, когда заказ перешел в тот или иной статус. Пример списка возможных статусов: Ожидает приготовления, готовится, ожидает доставки, доставляется, завершен. Для решения этой задачи мы применяем 2 подхода, которые внутри нашей команды условно называются «горизонтальная запись» и «вертикальная запись». Горизонтальная запись Горизонтальную запись …

Обновлено / Дмитрий Пирязев

Идентификатор записи в БД: Целое число против UUID

Базы данных

Впервые отказаться от целочисленного идентификатора пришлось при работе над проектом Dodo IS (Информационная система Додо пиццы), когда на горизонте замаячили микросервисы, нагрузка, шардирование и прочие непонятные термины. До этого в качестве идентификаторов использовались именно целые числа, которые генерировались БД при помощи автоинкремента …