Шум, крики, а дальше — настоящий треш и угар: на полу барахтались две женские фигуры, сцепившись словно в гладиаторском бою. Алла и Даша катались по полу, дёргали друг друга за волосы и издавали звуки, отдалённо напоминающие «Да как ты смеешь!» и «Убери свои руки!».
— Ё-моё, — вырвалось у меня, хотя я старался выглядеть суровым и спокойным. — Так, парни, живо разнимаем!
Мы с Лёхой бросились к девушкам. Геo, чуть оторопев, тоже подскочил. Лёха попытался ухватить Аллу за талию, чтобы оттащить, но она крутанулась и успела отвесить Даше подзатыльник.
Я постарался блокировать Дашин выпад, при этом не зацепив её волосы, а Геo тем временем старался убрать с их пути тот злополучный стул. Картина была ещё та: офис, вокруг вся эта чинность и благолепие, а две наши сотрудницы устроили UFC на ровном месте. И это в рабочее время! Блин, ну хоть бы вечером зарубились, когда никого нет…
Однако всё оказалось не так просто, как хотелось. Алла, вырвавшись из наших рук, вскинула подбородок и выдохнула:
— Да ты ничего не понимаешь в грамотном продвижении!
— Зато я понимаю в профессиональном подходе! — парировала Даша, красная от бешенства. Её самолюбие было точно задето. — Ты просто решила… ой! — Она запнулась, потому что всё-таки я с Лёхой сумели её оттеснить на пару шагов. — Решила! — передёрнула она плечами и продолжила: — Ты, Аллочка, всё самовольно запустила без моего согласования!
— Ещё бы я у тебя спросила, — огрызнулась Алла, — большое тебе спасибо. Сидела бы я и ждала месяц до твоего одобрения. Между прочим, я всё делаю ради пользы компании, если уж ты не в курсе.
— Так, стоп! — я выставил ладони перед ними. — Успокоились обе и дышим ровно. Никто никого не будет больше трогать, а то пойдете у меня на коллективный сеанс психотерапии.
Пока я говорил, мы аккуратно разжали их руки, чтобы они не продолжили драть друг друга за волосы. У обеих пряди торчали в разные стороны, словно они прошли через турбулентность на самолёте. Алла при этом буквально испепеляла Дашу взглядом, а Даша скрежетала зубами так, что я уже боялся за целостность её челюсти.
— Девушки, — попробовал я мягко, — вы же не в каком-нибудь подпольном бойцовском клубе. Это наш офис. Соберитесь. Давайте, как цивилизованные магтех-гуру, обсудим, что вас так раскалило.
Алла первая подала голос, точнее, звонкую трель, обёрнутую в обиду:
— Да меня раскалило то, что Даша, которая якобы главная по пиару, кричит мне, что я не имею права предпринимать решения без её ведома! Тим, ну ведь я, по факту, могу принять какие-то меры, если вижу, что это поможет компании. Творческая свобода, всё такое!
— Стоп, — я повернул к ней голову, — подожди. Мы действительно договаривались, что любые крупные промоакции должны согласовываться. Так что Даша имеет на это право.
— Вот! — радостно подхватила Даша. — Тим, ты же понимаешь, а? Спасибо. Она вообще вырвала у меня инициативу из рук, я планировала тонкую, аккуратную промо-кампанию, а эта. эта… бахнула всё в лоб. Более того, уже запустила. У нас там на весь экран АрхМаркета теперь висит: «Маги — всех полов и возрастов объединяйтесь!». С глитч-эффектом, мигающим баннером и дополнительными провокационными слоганами!
— Ну… — я, признаться, улыбнулся. — Слоган как минимум звучит. «Всех полов и возрастов» — что-то в этом есть. Вроде как всеобъемлющий призыв.
— Да вы шутите? — Даша буквально зашипела на меня. — Это совершенно не в том стиле, который мы разрабатывали. Нужно ведь точечно бить в целевую. А тут всё и сразу, да ещё и объединяйтесь! Это напоминает мне акцию по ликвидации прошлых оптовых скидок. А всё, потому что наша Аллочка больно любит громкие лозунги.
— Зато это бьёт массово, — прервала её Алла, гордо вскинув подбородок. — Мы говорили про привлечение новой аудитории, про яркое начало — вот оно. Причём здесь твой консерватизм? Я, наоборот, помогаю привлечь побольше магов, причём любых! Чтобы народ заходил и регался.
Я посмотрел на них по очереди. Алла вся такая «ах, я сделала прорыв», Даша с фиолетовыми после вчерашней смены имиджа, волосами, лежавшими сейчас хаотично, так и сверлила её взглядом. Честно говоря, их экспрессия была настолько громкой, что про логику я уже не вспоминал. Пришлось повысить голос:
— Так! Во-первых, — громко сказал я, — давайте не будем устраивать тут ярмарку огня со взаимными угрозами. Во-вторых, Алла, без согласования такие вещи не прокатывают. Нужно спрашивать хотя бы меня, если с Дашей не находишь общий язык. Всё-таки Даша — официальный пиар-специалист. Должность сама за себя говорит.
— Ага, — процедила Даша. — Слышишь, Аллочка?
— Да слышу я, — ответила Алла с намёком на сарказм. — Но если уж Тим одобряет лозунг, то и может подписать приказ задним числом, верно?
— Эй! — остановил я её резким тоном. — Я не говорил, что полностью одобряю. Я сказал, что это в целом неплохо и ярко, но мы всё же придерживаемся внутренней дисциплины. Если бы ты мне заранее показала, я бы дал зелёный свет, но с оговорками. И уж точно вы бы с Дашей договорились, если бы сначала обсудили.
Надо ли говорить, что в это время, вся наша команда не занималась работой, а с интересом наблюдала за происходящим, вынырнув из своих ноутбуков?
— Не в консерватизме дело, Тим. — Даша перешла на более тихий, но крайне напряжённый тон. — Я — пиарщица, у меня есть профессиональная гордость, и я хочу делать качественную, продуманную рекламу. А не вот эти аляповатые плакаты. А Алла… — она бросила в сторону Аллы тяжёлый взгляд, — ставит под сомнение мой профессионализм. Кому, простите, это понравится?
— Твоему профессионализму — две копейки цена, — передразнила её Алла, явно желая задеть. И задела.
— Значит, считаешь, что я здесь не нужна? — Даша отдернула руку, когда я попытался её слегка успокоить. — Так? Хорошо, раз меня не ценят, тогда я не знаю, что я здесь делаю.
— Ого, — пробормотал Лёха. — Похоже, кого-то знатно бомбануло.
— Да я-то… — начал я, но не успел.
Даша тряхнула своими новыми яркими волосами — надо признать, смотрелись они очень эффектно, особенно с её огненным взглядом, — резко повернулась к нам спиной и выпалила:
— Баста, ребята. Если моя работа никому не нужна, я, наверное, пойду и поищу место, где её оценят. Всем пока!
— Даша, да подожди! — я дернулся за ней, но она, уже была на выходе из опенспейса. Ещё пара секунд, и я услышал, как она шумно захлопнула дверь на лестницу.
Вокруг повисла напряжённая тишина. Алла торжествующе отряхивалась, оправляла блузку, хотя изрядно помятая ткань — это ещё не самое страшное последствие. Хуже то, что у нас теперь в коллективе дикий конфликт.
Я зло посмотрел на Аллочку:
— Это что такое было?
Та явно занервничала:
— Прости, Тим. Но я просто не люблю, когда меня ограничивают. Я из тех, кто привык действовать. А то, что она там надумала…
— Меня это мало волнует, — отрезал я, — Выбор между Дашей и тобой, даже не стоит, — она с нами с самого начала, и я ее не отпущу. А вот если вы не сможете договориться между собой, то скорей всего нам с тобой Алла придется расстаться.
— Но… — попыталась было возразить явно растерянная моей отповедью Алла, но тут раздался громкий возглас из дальнего угла опенспейса:
— Эй, народ! У нас тут атака идёт!
Макс редко повышал голос, у него был более спокойный характер. Разве что, когда напьется только. Но если он кричал так громко, значит, дело действительно серьёзное. Я обернулся: Макс сидел за монитором, яростно клацал по клавишам, рядом суетился Зу, и их лица выражали тревогу.
— Чёрт! — выругался я. — Видимо, придётся отложить разборки. Всем вернуться к работе, немедленно!
Я махнул Алле, чтобы она заняла своё место. Гоша уже юркнул обратно в ноут. Мила и Ари принялись проверять, отображается ли приложение нормально. Я же вместе с Лёхой и Геo быстро подошёл к Максу. Тот даже не сразу отвёл взгляд от экрана:
— Тим, у нас масштабная маг-хакерская атака. Похоже, их боты пытаются положить наши сервера: фейковые запросы, загрузка ресурсов, входы под левыми аккаунтами.
— Система не успевает обрабатывать? — спросил я.
— Да, и тормозит конкретно. Пользователи жалуются, что не могут войти в приложение, оно то вылетает, то показывает «ошибка соединения».
— Твою ж… — я сжал кулаки, — Хорошо, Макс. Что можно сделать?
Геo наклонился к монитору:
— Может, Кораблёв? — спросил он тихо. — Заподозрил что-то?
Я покачал головой:
— Слишком быстро. И слишком изощрённо для него. Он обычно действует в лоб, как танк. Если бы атаковал Кораблёв, то уже бы в приёмной стояли его люди с дубинками. Скорее это НоваКод.
— НоваКод? — Лёха бросил настороженный взгляд. — Мы же с ними ещё не договаривались. Они что вышли на нас?
— Именно, — я кивнул. — Добро пожаловать в большой бизнес. Если ты маленький, то все пытаются попробовать тебя на зуб. Так что теперь придётся выкручиваться. Макс, Зу, вы сможете справиться?
Макс тяжело вздохнул:
— Это не так просто. Надо время, надо анализ логов, отсеивать вредоносные сессии, прописывать фильтры. Нужен целый комплекс мер. А у нас тут… — он махнул рукой на наши скромные силы.
— Действуй. Делай всё, что в твоих силах, — сказал я. — Гоша, звони в КераМод, пусть проверят, нет ли аппаратных уязвимостей. Если нужно — ругайся, требуй спецов. Зу, Макс, вы пробуйте отразить атаку софтово. А мы будем думать, как сделать так, чтобы впредь подобных сюрпризов не было.
— Принял, — Макс наклонился к клавиатуре так, словно хотел её прогрызть.
Мы с Геo отступили на пару шагов. Геo поджал губы:
— Если НоваКод уже начал войну, то не остановится. Они сильны, у них деньги, связи. Скорее всего, они купили целую ферму ботов. И тогда нам придётся туго.
— Ну, ничего, — я сказал это с той уверенностью. — Время — деньги, как говорится. Будем держаться. Сможешь найти номер этого Феликса?
— Думаю, да, найду, — Геo нахмурился. — У меня контакта нет, но я примерно представляю у кого он есть.
— Пришлёшь мне, когда найдёшь? — уточнил я.
— Ага, — вздохнул Геo.
Я кивнул, и он пошёл к себе. Весь наш опенспейс превратился в улей — никто не сидел спокойно, все метались между рабочими вкладками, переглядывались, строчили команды. Атмосфера была накалённая, словно мы в подводной лодке во время учений, а где-то снаружи глубинные бомбы взрываются.
Час пролетел в состоянии «делай-что-можешь». Макс, Зу и Гоша в поте лица ставили заглушки, блокировали вредоносные Ай-Пи, прописывали всякие хитроумные скрипты.
Мила с Ари проводили экспресс-тестирование основных функций приложения, чтобы убедиться, что пользователь всё ещё может авторизоваться.
Мне пришлось выступать организатором этого хаоса: то кричал кому-то, чтобы проверили приложение, то дёргал ребят, спрашивая про статус атаки, то одновременно пытался подумать, как быть с Дашей, которая сбежала. Но когда компанию атакуют, личные конфликты, увы, уходят на второй план.
Наконец, Макс откинулся на спинку стула и громко выдохнул:
— Фух! Отбились… вроде как.
Я подошёл к нему, за мной и Лёха подскочил. Макс щёлкал вкладками, показывая графики нагрузки — они всё ещё были высоки, но уже не запредельные, и кривые постепенно шли вниз.
— То есть всё? Норм? — уточнил я, прищурившись.
— Да, платформа работает, пользовательская активность восстанавливается. Может, не до конца, но уже хотя бы люди могут зайти. Ещё немного — и мы бы рухнули. — Макс провёл рукой по лицу. Было видно, что он вымотан.
— Спасибо, народ, — сказал я, обвёл взглядом их команду. — Отличная работа. Вы реально увели нас от края пропасти.
— Ну, теперь-то мы поняли, как это может быть серьёзно, — подал голос Гоша, стоявший чуть в стороне. — Надо расширять команду, Тим. Мы втроём на такие атаки уже не потянем, если они станут регулярными.
— Я в курсе, Гош. — Я глубоко вздохнул. — Я веду переговоры, чтобы нанять в штат дополнительных людей. Вы, Макс, Зу, получите подмогу. Скоро.
— О, вот это классно, — Зу громко щёлкнул мышью, закрывая лог-файл.
Эта новость вызвала довольный ропот среди ребят. Негромкие «ура» прозвучали тут и там, и в воздухе снова повеяло надеждой. Я тоже немного успокоился — уж коли отразили атаку, значит, можно передохнуть, и заодно начать думать, как ликвидировать брешь в штате.
Я собирался заняться возвратом Даши в коллектив. Мне действительно не хотелось терять специалиста по пиару — она хоть и горячая, но талантливая. Я как раз подумывал, где бы ее отыскать, когда в поле моего зрения вновь показался Геo, на этот раз победно размахивая бумажкой.
— Тим! — он подошёл ко мне с улыбкой. — Я нашёл личный номер де Виллара. То есть прям его мобильник.
— Ого! — я округлил глаза. — Отлично! Дай-ка…
Я протянул руку, но Геo хитро приподнял бровь:
— Может, пойдём ко мне в кабинет, и вместе позвоним? Хочу лично услышать, как ты выведешь этого Феликса на чистую воду.
— Да без проблем, — ответил я. — Я уже столько раз заходил к тебе в кабинет, что мне пора считать его своим.
— Не дорос еще, — ехидно парировал тот. — Идём.
Мы шутливо пересеклись взглядами, и я понял, что Геo, несмотря на злость после атаки и Кораблева, сейчас в приподнятом настроении. Похоже видит свет в конце тоннеля.
В кабинете у Геo я устроился в огромном кожаном кресле, словно на троне, достал смартфон и набрал на громкой связи.
Гудки не длились долго — видимо, человек всегда на связи.
— Да? — прозвучал мужчина с приятным, но довольно холодным голосом. Я бы даже сказал, высокомерным.
Я откашлялся:
— Добрый день, — представился максимально чётко и уверенно. — Феликс де Виллар? Это Тим Резников, основатель проекта МагНет. У нас тут по вашей милости проблемы.
— Прошу прощения, — в голосе звучала лёгкая насмешка. — Могу я уточнить, кто вы такой?
— Тим. Резников, — я чётко выделил каждое слово, помня, что с высокомерными людьми надо разговаривать так, будто их заносчивость — просто фоновый шум. — Разумеется, вы слышали о нашем магтех-проекте. Не нужно притворяться. Человек вашего уровня должен всегда быть в курсе всех продуктов на рынке. Сегодня на нас совершили атаку, и наши сведения указывают на то, что ваш холдинг НоваКод может быть причастен.
Небольшая пауза. Я представил, как он там усмехается, шевельнув бровью.
— МагНет? Атака? Нет, не знаю, о чём вы. Если у вас проблемы с безопасностью, советую нанять компетентных специалистов, — сказал де Виллар таким тоном, как будто упорно не понимал в чем здесь дело. Сам-то небось уже крутил вовсю мысли, как ему быть в такой ситуации.
— Компетентных специалистов мы наймём, но это не отменяет факта, что вы играете грязно, — парировал я. — Если хотите честного соревнования — пожалуйста. Но бить исподтишка ботами по нашим серверам… простите, но это не спортивно.
Феликс коротко хмыкнул:
— Спортивно? Вы в гольф играете или в детскую песочницу? Если у вас проблемы, почему вы решили, что тут замешан я или мои люди?
— Потому что такие вещи из воздуха не берутся. Вы хотели нас перекупить, а после отказа, стали играть грязно. Но я предпочитаю другое ведение дел: честный бой, с равными правилами.
— Какая прелесть, — саркастично отозвался де Виллар. — Вы ещё мальчик, который не нюхал настоящего бизнеса. Ничего не могу поделать с вашими фантазиями.
Я едва сдержался, чтобы не заржать. Но меня уже охватил азарт и я сделал тон потвёрже:
— Запомните, если вы решите продолжать эти махинации, то ответ последует незамедлительно. Я не позволю тащить нас на дно при помощи хакерских приёмчиков. Я за честную конкуренцию. Иначе…
— Иначе что? — теперь в его голосе звучала явная усмешка. — Угрожаете? Как интересно. Да и вообще, откуда у вас мой номер?
— Скажем так, у нас свои связи. И, раз уж мы заговорили об угрозах, то это, скорее, обещание. Я человек спортивный, люблю честную борьбу. Но если вы продолжите грязную игру, мне придётся отвечать тем же.
— Очень тронут вашей заботой, — фыркнул де Виллар с истинным снобизмом.
И тут же просто прервал связь. Характерная короткая мелодия в динамике дала понять, что его сиятельство «большая шишка» не хочет терять на меня больше ни секунды. Я убрал телефон, глянул на Гео: тот сидел с отвисшей челюстью.
— Ты это сейчас слушал? — спросил я полушёпотом.
— И видел, и слышал, — пробормотал он, округлив глаза. — Это же… Этот тип даже не стал скрывать, что может дать тебе жёсткий отпор.
Я пожал плечами и встал:
— Ну и отлично. Зато всё понятно: считает меня молодым сопляком, который «ничего не может». Отлично. Такой противник расслабляется и перестаёт следить за флангами. А мы, Гео, за это время успеем выстроить свою систему обороны.
— Да, но он опасный хищник, — напомнил Гео.
Я ухмыльнулся:
— Согласен. Он крупнее меня, богаче, влиятельнее. Но кто сказал, что это помешает нам наступать? Главное, чтобы у нас с тобой и с ребятами был общий настрой. Попробуем показать Феликсу, что даже молодые инноваторы могут сильно кусаться, когда это потребуется.
Я был уверен: если де Виллар решит продолжить войну — он ещё пожалеет, что недооценил меня.
— Логика понятна, — кивнул Геo. — Но держись, Тим. Эти ребята могут быть жёстче, чем Кораблёв.
— Да я уж понял, — вздохнул я. — Ладно, вернусь к нашим. С кодерами нужно обсудить нашу дальнейшую стратегию.
Геo ухмыльнулся:
— Ох, занимайся стратегиями, стратег. А я, пожалуй, прикрою тылы. Займусь новым офисом и подбором персонала. МагНет нужно усилять
Я рассмеялся и, одобрительно кивнув ему, вышел.
Возвращаясь в опенспейс, я натолкнулся на Лёху. Он шагал мне навстречу с невесёлым лицом:
— Ну что, позвонил этому Феликсу?
— Ага, поговорили. Как и следовало ожидать, он всё отрицает.
— Ладно. — Лёха фыркнул. — Хотя я всё равно думаю, что это они. Слишком уж подозрительно, что атака была сегодня.
Мы как раз проходили мимо рабочего места Макса, и я замедлил шаг:
— Макс, — позвал я, — как там дела?
Макс был погружён в работу, экран переливался строчками кода. Вместо него ответил Гоша:
— Да нормально. Найденные уязвимости залатываем. Осталось пару дырок, которые были нам незнакомы. Мы сейчас сидим, разбираемся, как их устранить, чтобы впредь не пропускать такую атаку.
— Молодцы, — кивнул я. — Главное, следующую волну встретить во всеоружии.
Макс лишь буркнул, что-то вроде «угу», не отрываясь от клавиатуры. Я ухмыльнулся и сказал:
— Знаю, вы справитесь. Вот что, у меня есть одна идея насчёт НоваКода, но сначала вы доделайте текучку, чтоб я вас не отвлекал. Как только будет минутка, соберёмся и обсудим план контрудара.
— О, контрудар, — Лёха посверкал глазами. — Да ты прямо полководец.
— А кто бы сомневался? — я усмехнулся.
— Никто конечно, — радостно пропел Леха. — После того как мы разделались с Кораблевым, я уверен, что мы горы свернём. И НоваКод окажется лишь жалкой пустышкой.
Макс не отрываясь от экрана ноут, повел ухом, будто зацепившись за интересную деталь.
— Чего там с Кораблёвым-то в итоге вышло? — сказал он быстро. — Он реально вписался к нам?
Вместо меня на этот раз встал в роль сказочника Лёха — видимо, его распирало желание поделиться:
— О, Макс, да ты бы видел этот цирк! Барон пришёл с мордоворотами, думал, что всё под контролем. А мы уже накануне всё перенесли в новую компанию, сделав нынешнюю, по сути, дочкой-пустышкой. Теперь Кораблёв формально владеет тем, где ничего нет, а все основные активы, код, персонал — в новой компании, «МагНет Империум». А в старой, «МагНет Инкориум» — пустая бухгалтерия, ни денег, ни собственности.
Макс резко перестал печатать и медленно повернулся на стуле.
— Погодите, — произнёс он, нахмурившись, — а как же патент на алгоритм? Вы же оформили его… куда?
Лёха, словно не замечая изменения в голосе Макса, махнул рукой:
— Да там тоже всё чётко. Тим настоял, чтобы патент был на него лично. Так что мы в любом случае не паримся: компания может быть любая, а патент остаётся за Тимом.
Я почувствовал, как в груди неприятно ёкнуло. Вот это Лёха выдал — я же специально не хотел афишировать при Максе, что патент полностью оформлен на меня. Понимал, что Макс может воспринять это болезненно, ведь он создатель этого алгоритма, и идея вообще-то появилась из его старых разработок.
— Лёха, — тихо выдохнул я, но уже было поздно.
Макс откинулся, лицо его заметно побледнело, глаза сузились:
— Постой. Мой алгоритм, который я ночами кодил, отладку делал, создавал эту логику? Теперь… принадлежит Тиму?