В офисе было четыре парковочные зоны: перед зданием (91 место), за ним (67 мест), под ним (41 место) и удаленная парковка (153 места) - в паре километров по Крылатской улице. Чтобы заехать в первые три (расположенные возле здания офиса), нужно было передать охраннику свой основной (белый) пропуск, а взамен получить пропуск на конкретное место. Номера никто не соблюдал (их было трудно рассмотреть в хорошую погоду, и невозможно в плохую), но за зонами следили - пропуск нужно было положить под стекло, и если припарковался не в своей зоне - возникали вопросы.
Главной проблемой парковок у здания была их небольшая емкость (чуть более 200 мест в общей сложности), что приводило к их очень быстрому исчерпанию утром, потому что сотрудников было сильно больше, как и корпоративных автомобилей. В районе 8:30 уже заканчивался подвал, где-то в 9:00-9:10 уже не было мест наверху. Однажды на бизнес-завтраке General Manager российского офиса даже сказал: "Я не понимаю, почему на парковке столько корпоративных автомобилей. Вы должны быть в полях, продавать - вам для этого машины и выдаются, а вы все сидите в офисе". Ситуация после этого не поменялась.Удаленная парковка была решением, но добираться оттуда пешком, особенно в плохую погоду, было довольно трудно, а шаттл - хоть и ходил регулярно - все же надо было вызывать и ждать.
Но даже не это было главной проблемой. Примерно в 8:40-8:50 на въезде собиралась длинная очередь, и конкретный автомобиль доезжал до пункта охраны в районе 9:00, чтобы только узнать о том, что мест нет, и затем выставивал до 10-15 машин в очереди на выезд. Итого - потеря минут 20-30. А затем нужно было ехать на дальнюю парковку, там вызывать шаттл, если его не было, и минут 10 возвращаться в офис. Итого - время на парковку могло занять час и даже больше. Добавляло рандомности и то, что иногда места были и в 9:30, а иногда - в 8:50 уже не было. Возможно, потому что многие решали не испытывать судьбу и ехать сразу на дальнюю парковку, а потом приезжали в офис, видели свободные места и решали в следующий раз заезжать, создавая пробку. Таким образом вероятность попасть в пробку была 50% - или попадешь, или нет, и из-за довольно большого количества сотрудников - угадать общее мнение было невозможно. Как-то вечером я забирал свою девушку с работы в офисе Siemens, и обратил внимание, что у них над въездом висит табло, которое показывает количество свободных мест.В тот же день я написал письмо в rusintd и предложил сделать что-то подобное. По итогу обсуждения в рассылку у нас сформировалась небольшая рабочая группа, в которую вошли несколько сотрудников и представители прокьюрмента. Мы собрались в WIndows 7 кафе, обсудили варианты реализации, выработали два основных способа реализации и выбрали тот, который в итоге и был реализован.
Основная архитектура была очень простой:- Приложение Windows для компьютера в пункте охраны
- Там же сканер штрих-кода
- Модем Yota для отправки статистики
- Приложение в Windows Azure, выступающее в роли сервера и веб-сайта
- Приложение для WIndows Phone
- Наклейки с штрих-кодами для идентификации карточек мест (обменный пропуск - см. выше)
- Сотрудник смотрит в приложение и видит, что места еще есть
- Сотрудник подъезжает к пункту охраны и передает свой белый пропуск
- Охранник обменивает белый пропуск на карточку места, на которую приклеен штрих-код, и сканирует его
- Охранник передает карточку места сотруднику
- Сотрудник проезжает в назначенную зону и кладет пропуск под стекло
Обратный алгоритм был аналогичным, но в обратном порядке:
- Сотрудник подъезжает к пункту охраны и передает карточку места
- Охранник сканирует штрих-код (алгоритм toggle: одно сканирование - место занято, еще одно - свободно)
- Охранник меняет карточку места (по номеру) на пропуск сотрудника, который там лежит
- Охранник выдает сотруднику белый пропуск
- Сотрудник проверяет, что это его пропуск, и уезжает
Мы рассматривали несколько вариантов реализации штрих-кодов (от ручных кодов до распечатки новых карточек с их повторной ламинацией).
В итоге коллеги из прокьюрмента предложили использовать наклейки, которые они использовали для инвентаризации - это была очень надежная наклейка, на которой штрих-код вместе с цифровым значением кода был напечатан на клеевом слое, а сама наклейка была защищена от отклеивания (проявлялась надпись VOID при попытке ее отклеить).Кроме того, чернила были под полиэтиленом, поэтому наклейка, закрепленная на ламинированной карточке, была очень надежной.
Вся информация была скоммуницирована сотрудникам, был объявлен бета-тест, количество использований подскочило почти до максимума сразу. Я получил большое количество обратной связи, первый комментарий был получен 5 марта 2012 года. Вот только несколько цитат:- От ветерана "Майкрософт" - сердечное спасибо за проявленную инициативу и полезное решение!
- HTC HD7 - полет нормальный, никаких глюков не заметил.
- Огромное спасибо за реализацию! Идеи идеями, но без реализации толку от них нет.
Финальный релиз состоялся 10 мая 2012 в магазине приложений для Windows Phone, а 13 июня я сделал рассылку о general availability приложения.
Такое, весьма "костыльное", приложение использовалось 6 лет до внедрения полноценной системы. Про него даже писали в статье про офис Microsoft в The Village:В бизнес-центре есть две парковки. Узнать о наличии мест можно с помощью специального мобильного приложения, разработанного одним из сотрудников Microsoft.
. А сотрудники, с которыми я перескался уже после ухода из Microsoft, вспоминали про это приложение.
Как говорится - нет ничего более постоянного, чем временное.