Только бы затея с алгоритмом не оказалось большим пшиком. О чем это я? Огромная корпорация закрыла ученых, усилила безопасность, изымает похожие проекты из сети, запугивает журналистов. Это точно не пшик, хватит ли мне сил? Я провел рукой по пиджаку светло-синего цвета и сердце наполнилось уверенностью, а нервы успокоились. Только к горлу опять подступил ком. Нет времени на пожалейки. Одел пиджак и зашел в нужный видеочат.
После обмена общими фразами, началось собеседование.
- Расскажите мне про принципы SOLID. – Начал собеседование программист с ухоженной бородой.
- Да нет никаких принципов, глупости это все. – Ответил я. Не перегнуть бы палку.
- Поясните, пожалуйста. – Тактично попросил собеседник.
- Первичен хороший код, а не принципы. Их выделили постфактум. Соответственно, нужно понимать, что они отнюдь не так универсальны, как подаются. В хорошем коде обязательно можно найти несколько из пяти принципов, но при достаточно сложной задаче никогда не получится следовать им до конца.
- Вы же понимаете, что мы сейчас говорим о базисе для любого хорошего программиста. – Он начал что-то записывать в отчет.
- Давайте лучше посмотрим на мой код, а там будет видно. Куда полезней этих принципов паттерны, хотя с ними и похожая ситуация. – Заметил я.
- В некотором смысле я с вами согласен. Конечно, интуитивно можно прийти к правильному коду, как и к некоторым паттернам. Но знать их необходимо.
- Я же и не говорю, что не знаю их. Посмотрите код, а потом пройдемся и по принципам, и по паттернам. – Я настоятельно начал подсовывать ему код.
- Хорошо, показывайте. – Сдался собеседник.
Я переслал ему файл, он рассматривал содержимое минут пять.
- Кажется понял, вы использовали недавнюю наработку, в этом месяце выходила статья на Программисте (портал программистов). Не проверял, но автор утверждает, что работает на двадцать пять процентов быстрее, чем аналогичный стандартный запрос в базу. Что ж, хорошо, что вы используете новые наработки, но скопировать чужой код не так сложно. Это почти один в один как пример в статье. – Он посмотрел на меня с ухмылкой.
- Это не почти, а тот самый пример. – Ответил я.
- Не понял, вы сейчас признались в копипасте? – Недоуменно спросил интервьюер.
- Нет, это моя статья на Программисте. Если понадобится, могу доказать.
- Не стоит, я вам верю. Действительно работает на четверть быстрее? – Спросил он.
Наверняка потом проверит. На такие случаи у меня есть несколько статей с моими реальными данными.
- Да, быстрее. Перейдем к паттернам?
- А у вас есть статьи и по паттернам? – Догадался смышленый программист.
- Да, я разработал пять паттернов, которые прижились в сообществе. Скидываю ссылки на статьи. Они под тем же аккаунтом, он привязан к этому идентификатору.
- Понятно, к принципам SOLID возвращаться смысла нет, я так понимаю. – Сказал он утвердительно.
- Из больших проектов участвовал в создании анонимного чата, вы наверняка пользовались. – Упредил я его следующий вопрос. – Пересылаю подтверждение.
- Я потом проверю, но меня мучает вопрос.
- Почему я до сих пор не работаю на какую-нибудь компанию? – Угадал я. Собеседник лишь кивнул. – Я люблю интересные проекты, а в работе на компанию нужно соглашаться на то, что дают.
- Что же изменилось? – Спросил он.
- Жизненные обстоятельства. Юношеский максимализм прошел, остались потребности. И стабильная высокая заработная плата сейчас в приоритете.
- Я высылаю вам тестовое задание, но уверен, что у вас не возникнет с ним проблем. Присылайте, как только закончите, обработка результатов собеседования обычно занимает несколько дней, но ответ по вашему будет завтра утром. Буду рад пообщаться с вами уже в качестве сотрудника IO.
Расшаркивались еще пару минут. Собеседование идет под запись, так что поговорить толком и не получилось. Нужно соблюдать определенный формат.
Как только закончилось собеседование – мне пришло сообщение от этого программиста со ссылкой на анонимный чат.
Сбор информации
В чат вошел Главный Зебр.