Однако компания, из которой был создан новый IT-отдел OZON.ru, до этого практически десять лет занималась разработкой и внедрением различных систем, в том числе финансовых и складских, поэтому руководство отдела посчитало, что они все-таки справятся.
Для решения этой задачи группа IT-разработчиков была поделена на две части: бэк-офис и веб. К бэк-офису относилась финансовая часть и складская логистика, а к вебу – интернет-витрина и прием заказов.
В первую очередь предстояло разделить бэк-офис и веб. Бэк-офис предстояло срочно перенести на отдельный сервер, а витрину решили временно оставить в старой архитектуре с поддержкой «Рексофта». Тем не менее группа веб-разработки начала заниматься созданием новой витрины на Java Server Pages и веб-сервере Apache под управлением операционной системы FreeBSD, потому что следующий этап плана предусматривал переход веб-витрины в ведение IT-отдела и перенос ее в Москву. У «Рексофта» витрина работала на ColdFusion[10] под Microsoft Windows, а потому планировалась полная смена платформы.[11]
Команда IT-отдела OZON.ru в свое время разрабатывала фактически с нуля движок для магазина XXL.ru, поэтому новый механизм создавался все-таки не на пустом месте: специалисты использовали имеющийся опыт и кое-какие наработки.
Разработка фундамента новой системы
При разработке нового бэк-офиса пришлось решать массу всяких задач, которые зачастую были связаны не только с программированием как таковым. Бэк-офис – это система, в которой смоделировано и автоматизировано большинство бизнес-процессов фирмы. А что делать, если механизм этого процесса не существует еще даже в теории?
В связи с этим весьма примечательна история с системой прогнозирования закупок. Прогнозирование закупок – задача крайне сложная и важная: закажешь меньше, чем нужно, – не сможешь вовремя выполнить заказы клиентов; закажешь больше – забьешь склад ненужным товаром, в результате чего не останется места для нужного.
Тогда формулу, по которой работала автоматизированная система закупок, на одном из совещаний с руководством IT-отдела нарисовал директор Владимир Долгов. Выглядела эта формула очень просто и даже нелепо, но ее много раз проверяли – и практика доказала ее эффективность.
В основу расчетов была положена идея, что каждому из поставщиков требуется некоторое время на обработку заказов, которое отсчитывается с момента поступления заявки до момента доставки. Причем это время зависит от нескольких различных факторов: организации работы у данного поставщика, расстояния до Москвы и так далее. Формула учитывала имеющиеся заказы, гипотетические заказы, которые могли быть сделаны за время обработки, а также предусматривала некий страховой запас, который учитывал несоответствие между реальной ситуацией на складах поставщиков и предоставляемыми данными.