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