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