Взяться нельзя отказаться. Как я внедрял IT-систему на 8000 квартир за 2 месяца. Что получилось, а что пошло не так?
В конце декабря у управляющей компании застройщика “Строим Везде” ломается система сбора показаний. Все, что нарабатывалось в течение 5 лет, утрачено. Полное восстановление должно занять 5 месяцев. В один момент компания лишается автоматического получения показаний по электроэнергии, теплу, холодной и горячей воде на 36 многоквартирных домах.
Сделать проект на 5 месяцев за 1 месяц. Браться или нет?
Представляете, что такое со следующего месяца обойти 8000 квартир для сбора показаний вручную с каждого счетчика? На сбор показаний со всех квартир потребуется 20 человек + неделя времени. Нужно успеть восстановить систему до следующего периода сбора показаний.
Мы созваниваемся с Мишей, моим партнером, который отвечает за продажи.
Миша — прямой человек в общении: если что-то есть, с чем несогласен — сразу скажет. Одна из вещей, которые я вынес из совместной работы с ним — это именно его прямота и спокойная сила
Во время звонка оба понимаем, что настроить и отладить систему на 31 794 счетчика за месяц невозможно. В спокойном темпе это делается за 5 месяцев. Но у нас не было столько времени.
Если мы не закончим за месяц, то управляющей компании придется обходить 8000 квартир и вручную собирать показания.
Надо придумать, как успеть внедрить нашу систему.
Нашей компании Wise 3 года. У нас работы по пилотному проекту: внедряли нашу систему умный дом в 180 квартир. В каждую квартиру мы устанавливали несколько систем:
Система защиты от протечек автоматически перекрывает воду при обнаружении протечки, а жителю и сотруднику управляющей компании отправляется уведомление о том, что затопление предотвращено.
Для меня сдача пилотного проекта — личная история.
Это первое внедрение наших систем и нашего оборудования в многоквартирные дома.
Мы ставим свое оборудование для защиты от протечек — контроллер Wise Leak, датчики протечки и привода перекрытия. Система следит за состоянием мокрых зон и в случае протечки автоматически перекрывает воду, даже без интернета.
Еще один контроллер, который мы разработали для домов — Wise Electro. Он позволяет управлять освещением и розетками.
Открывать и закрывать воду, управлять освещением, розетками и прочими электрическими приборами житель может через мобильное приложение.
Но как у любого уважающего себя стартапа, есть и куча вопросов, которые нам еще предстояло решать.
Буквально за месяц до этого мы расходимся с одним из моих партнеров, который вместе со мной отвечает за IT. Помимо формирования продукта я начинаю отвечать еще и за управление командой разработки бэкенда и всех новых интеграций.
В конце лета я читаю книгу Эви Пумпурас и решаю пойти на борьбу. Оглядываясь назад, могу сказать, что это было одно из лучших решений в моей жизни.
План внедрения — как успеть, когда не успевается?
Первое, что делаю для решения проблемы — рассказываю нашим разработчикам про ситуацию и предлагаю всем принять участие во внедрении. Команда откликается, не формально, для галочки, а по-настоящему. Над задачей начинают думать еще 7 человек.
Я делаю план по внедрению, таблицу в Google Drive со статусами, где видно кто и за что отвечает. За каждым домом был закреплен ответственный, обновление статуса происходило 3 раза в день. Такой подход позволил в любой момент иметь актуальную картину и быстро принимать решения.
Это решение сработало. Ощущения у меня — как на парусной яхте, когда внезапно ловишь попутный ветер.
“Планирование — всё”. Но всё идет не по плану
3 недели мы с командой из 7 человек заводим все счетчики управляющей компании к нам в систему. Завели. И внезапно оказалось, что система не вывозит. Мы осознанно не занимались вопросами производительности на начальном этапе.
Первое — нужно собрать общую, но в то же время четкую картину что именно работает медленно и сколько занимает времени. Этим уже можно управлять.
Для этого настроили мониторинг запросов, чтобы видеть сколько измерений в секунду нам прилетает и какой вклад каждой бизнес-функции в нагрузку. Нашли узкие места, приоритезировали.
Далее снимаем дампы с виртуальной машины Java, чтобы изнутри посмотреть на то, чем живет программа в каждый момент времени. Чувствовали себя хирургами.
Нашли проблемные места, локализовали и оптимизировали. Сейчас у нас в секунду идет от 50 до 100 измерений. Запас прочности — x4 с понятной стратегией масштабирования.
Тем временем время сбора показаний начинается через несколько дней.
Первый месяц получения показаний через нашу систему — всю неделю мы напряженно работали, решая оставшиеся проблемы, но показания сняли и отдали управляющей компании.
Ощущение, что мы оторвались от земли, но по-прежнему летим на очень маленькой высоте, периодически еще ударяясь о землю.
На второй месяц после внедрения на решение внештатных ситуаций потребовалась уже неделя. На третий месяц — всего 2-3 дня.
Спустя год после окончания проекта я гулял по одному из ЖК, где мы внедряли нашу систему. В ЖК 17 домов, в каждом доме по 200–500 квартир. И в каждой квартире работает наша система по сбору данных. Даже не верится: наша махина сейчас переваривает уже больше 40 000 датчиков и счетчиков, следит за состоянием системы защиты от протечек, пожарной системой, охраной, а также управляет умными устройствами внутри квартиры.
В конце августа 2023 мы зафиксировали более 1.2 миллиона измерений за сутки. Для сравнения, если каждый день один раз получать показания с многоквартирного дома в 200 квартир, получится всего 800 показаний. Но у нас есть еще и другие системы: пожарная безопасность, охрана, умные устройства внутри квартиры, система защиты от протечек и управление освещением и розетками.
Доводить казалось бы невозможные проекты разработки и внедрения до завершения — то, что меня по-настоящему драйвит. О моей жизни, проектах в IT и находках рассказываю в своем канале в телеге.
Особенно интересны горящие и сложные проекты, что к ним привело и как получается выходить из таких ситуаций?
Сейчас еще изучаю, с какими проблемами в IT сталкиваются люди и компании.
Если столкнулись с горящим проектом и не знаете, что делать — можно спросить у меня @anzuev
На рассказ этой истории меня вдохновила статья Василия Ганова про завод, которую я увидел на VC пару месяцев назад. Я написал ему и мы начали работать вместе. Василий, cпасибо за помощь в подготовке статьи 🙏
Антон, вам и команде респект за такую работу, отличный кейс
А книга Эви Пумпурас любимая. Перечитывала несколько раз 🙌
Анастасия, спасибо за комментарий. Работаем, чтобы все проекты получались такими. А мне в ваших статьях нравятся иллюстрации. Как вам Aigital, рекомендуете? 🙂
Превратить 5 месяцев в 1 — это надо иметь талант! Если я правильно понял, то процессы были не оптимальны, раз получился такой выигрыш по времени при тех же ресурсах?
Я заметил несколько изменений. Как думаешь, какое дало самую большую выгоду?
И интересно, оставишь эти изменения для будущих задач или продолжишь работать, как раньше?
По поводу процессов: я заметил, что бОльшую часть времени занимает отладка системы и поиск мелких ошибок из-за человеческого фактора. Это нудно и долго делать, поэтому мы 1 раз автоматизировали это и все. Я люблю делать вещи 1 раз и потом всю жизнь пользоваться результатами. У тебя нет такой проф. деформации?
Дело не только и не столько в процессах (хотя они тоже были улучшены). У меня есть 2 режима работы: кризис и спокойный темп. Плюс работы в режиме кризиса - скорость, но есть и обратная сторона: долго в таком режиме ни я, ни команда работать не можем, это изматывает.
Поэтому всегда “ехать быстро” не получается, нужно время на восстановление. Или у тебя есть секрет как “ехать быстро” и долго, не изматывая себя и команду?
Ну что тут скажешь, отличная работа, если бы все так работали👍
Интересно, насколько часто приходят заказчики с такими срочными и сложными задачами?
Светлана, спасибо за комментарий, стараемся 🙂
Насчет срочных и сложных задач.
“Нужно вчера” - самая частая формулировка.
Но я люблю брать такие IT-проекты и доводить до завершения.
А у вас не бывает ситуаций, когда “нужно вчера”? :)
Интересная история, но один вопрос не дает покоя: в течение того месяца удалось ли работать физически не на износ? Сон, свободное время — или всё-таки пришлось нагонять не только процессами, но и часами?
Смотрите в корень :)
Есть вещи, от которых в моменте можно отказаться, и от которых нельзя.
Сон для меня - это то, от чего я стараюсь не отказываться. Даже во времена, когда я участвовал во всяких хакатонах, занимать призовые места помогал именно сон и свежая голова.
А свободное время иногда страдало, особенно в начале проекта. Это та стоимость, которую я плачу за более высокую скорость в моменте.
Но после обязательно был отдых. Без этого никак.
А у вас есть вещи, от которых вы не отказываетесь?
Спасибо за материал0 приятно читать
Спасибо за комментарий, его тоже приятно :) а что вам больше всего понравилось?
Можно примерный порядок стоимости проекта узнать?
Вячеслав, приветствую!
Спасибо за вопрос. Сильно зависит от объекта. А вы спрашиваете, чтобы свой запрос оценить?
В ЖКХ денег много, но бизнес очень жесткий
Костя, спасибо за комментарий. Да, есть такой момент.
Но что для меня было открытием в ЖКХ: управляющие компании от застройщика по моему опыту сильно отличаются в лучшую сторону. И с ними прекрасно работать и всей этой жесткости я не встретил. Прекрасные люди.
А вы с чем сталкивались?
Сколько памяти забирает java машина для приложения?
Сейчас у нас она ест около 1гб оперативной памяти на нашей нагрузке (100+ rps). Не сильно много.
История интересная. Но с количеством слов "система" в тексте прямо таки перебор.
Спасибо за комментарий)
А чем история понравилась?
P.S. Со словом система и правда перебор. Буду иметь в виду.
Писать идеальные статьи - не моя сильная сторона, а поделиться историей хотелось :)
Неплохая история, но черезчур много поверхностного текста, вода, конкретики нет! Что в итоге произошло и что конкретно вы сделали, я работаю в строительстве и понимаю в IT, но из стати максимум понятно что «сам себя не похвалишь - никто не похвалит» а какая ценность в ней в таком случае?
Рад что вам понравилась статья. И за критику тоже спасибо!
В статье я описал, что сделал с точки зрения управления, чтобы проект завершился в кратчайшие сроки. Конкретно это
1) подключение бОльшего количества людей для решения (не исполнителей, а включение в процесс генерации решений),
2) механизм управления проектом - таблицы, через которые видно что прямо сейчас требует внимания, а что нет.
Если не секрет, чем вы занимаетесь в строительстве?
Стало интересно, кто оплачивает автоматизированный сбор данных? УК или жильцы? Я понимаю, что в итоге все равно платят жильцы, так как у УК нет других источников дохода, но перекладывают ли они это напрямую на жильцов или выделяют из своей маржи кусочек все же?
Антон, спасибо за комментарий.
Обычно за такие системы платит застройщик и дальше передает управляющей компании для использования. Для застройщика это относительно небольшие деньги в масштабе всей стройки.
А с жителя управляющая компания может брать за обслуживание, но это очень маленькие деньги: от 80 рублей в месяц.
Застройщики, с кем мы работаем по таким системам, продают не только стены, но и дальнейший опыт жизни в доме. И поэтому вкладываются в дополнительные удобства: автоматический сбор показаний, приложение для жителя, звонок из домофона в приложение, просмотр камер в доме, открытие парковок и шлагбаумов через приложения и другие приятные вещи.
Но есть и другие примеры, конечно. Какой у вас был опыт? Перекладывали на жильцов?
Ох уж Java. Мне кажется на ней можно запилить всё что угодно.
Да, на Java можно сделать много всего, но далеко не все, к сожалению. Но каждый инструмент всего лишь инструмент. Один подходит для одних задач, и ужасен для других.
Например, для embedded устройств софт на Java - это невозможная роскошь.
А какое самое необычное использование Java вы встречали?