IT-страдания

IT-страдания

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

В бэк-офисе постепенно внедрялись новые модули, и соответствующая группа планомерно переходила на собственные технологии, не вызывая у OZON.ru никаких потрясений. А вот у группы разработки веб-витрины работа не ладилась. Причем все это происходило в тот момент, когда старая веб-витрина уже совершенно не справлялась с нагрузками: там давно был достигнут технологический предел. Витрина не в состоянии была справиться с более чем сотней одновременных (в пределах 15 минут) посещений, в то время как на сайт магазина часто приходило значительно больше народу; а уж поиск, который чисто технологически не выдерживал более пары одновременных запросов, постоянно вводил сервер в клинч. На этом фоне новая веб-витрина нужна была как воздух, и проблемы с ее разработкой серьезно нивелировали успехи развития нового бэк-офиса.

При этом сроки запуска новой витрины все время отодвигались. Конец 2001 года, январь 2002-го, февраль – но при этом ничего так и не было готово хотя бы предварительно. По словам экспертов, основная проблема группы веб-разработки заключалась в недостаточном опыте управления проектами. У них не получилось эффективно спланировать работу и расставить соответствующие приоритеты, в результате чего группа залезла в дебри каких-то малозначащих деталей, которыми можно было заниматься годами. Разработчикам было интересно копаться в мелочах, но проект практически не двигался, и в совете директоров уже теряли терпение.

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

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

Новые модули были распространены среди группы разработки бэк-офиса, и сотрудники были просто поражены тем, насколько с помощью этой технологии все получается быстро и красиво. Вот тогда-то и зазвучали сначала робкие, а потом все более громкие предложения, что, может, ну ее к черту, эту Java Server Pages под Linux/FreeBSD, а сделать все на ASP/ASP.NET под Microsoft SQL Server.[12] Нужно было срочно принимать решение: времени на раздумья уже не было, ситуация была критическая и могла привести к расформированию всего отдела!

Решили просто сравнить оба технических решения. Специалисты группы бэк-офиса буквально за неделю разработали на ASP.NET макет веб-витрины с ключевой функциональностью (корзина, списки, деталировка товара), после чего запустили сравнительное тестирование. Стресс-тесты показали, что механизм на Java проигрывает по всем статьям.

Нужно отметить, что данная ситуация вовсе не является примером того, что Java Server Pages безусловно проигрывает ASP.NET. Очень многое зависит и от разработчиков, и от принятой стратегии, и от механизмов реализации. Просто в данном случае группа, работавшая на Java Server Pages, не смогла решить задачу, а группа, применившая ASP.NET, показала быстрые и впечатляющие результаты. В общем-то, могло быть и все наоборот – прецеденты были неоднократно.

Группа веб-разработки, увидев результаты тестов, пыталась оптимизировать свои модули, однако у них, по словам руководства IT-отдела, даже сам движок еще был весь разобран, как ворота из «12 стульев», поэтому не было никаких надежд на то, что веб-витрина, во-первых, будет сделана в обозримые сроки, а во-вторых, что она покажет нужную производительность, без которой ее разработка вообще не имела никакого смысла.

В конце апреля 2002 года было принято второе крайне тяжелое, но необходимое решение: группа веб-разработки увольняется в полном составе, их работа в течение почти года считается полной потерей времени и денег, а на IT-отдел ложится задача с помощью ASP.NET опять с нуля написать качественную веб-витрину, которая любой ценой должна быть запущена до начала следующего сезона, то есть до сентября 2002 года.

Это было жуткое, хотя и закономерное решение. IT-отдел, который со своими задачами, в общем-то, вполне справлялся, был поставлен в ситуацию, когда он был вынужден в крайне сжатые сроки и в очень нервной обстановке с нуля сделать то, с чем не справилась другая группа разработчиков. Руководство OZON.ru, разумеется, уже не желало и слышать никаких оправданий. К сентябрю должна быть новая веб-витрина – точка. Самый крайний срок – конец сентября. В противном случае IT-отдел считается не справившимся с оказанным ему высоким доверием – со всеми вытекающими последствиями.

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

Это кажется невероятным, но в ночь с воскресенья на понедельник, с 25 на 26 августа, OZON.ru перешел на новую веб-витрину. Она была полностью написана и отлажена за четыре месяца.

Данный текст является ознакомительным фрагментом.