Pull to refresh

Comments 35

Я думал, сейчас получим интервью с ответами HR на вот эти вот классические вопросы от HR. А тут получается просто интервью с создателем компании. Вообще, интересный
человек и руководитель.
А на счет разницы между нашими программистами и программистами с запада, это то, что наши уверены, что знают всё. Поэтому, когда наших просят что-то сделать, если наш думает, что что-то сделать нельзя — то сразу говорит, что сделать нельзя и делать не буду. А западный программист сначала попробует 10 разных способов что-то сделать, и только потом скажет, что это сделать нельзя. Нередко, в этих 10 попытках, все таки находится способ сделать то, что надо. Ну это так, моё мнение.
На последнем собеседовании, несколько лет назад, было так:
— Что вы знаете?
— перечислил
— Что делали на Х технологии?
— то и это
— Пиво пьешь?
— Бывает
— Какое?
— Guinness / Kilkenny
— Пошли в паб, там договорим.
… ты меня уважаешь.

Правда это был первый и единственный раз, когда мы так погуляли в пабе (корпоративы не в счет).
У меня одно из первых собеседований (собеседовал, правда, я) было полной противоположностью. К нам в контору человек пришёл устраиваться на работу админом и меня попросили с ним «поговорить». За час где-то мы поговорили на несколько разных тем, причём ни одного правильного ответа я не услышал. Кандидат ушёл грустный… грусть прошла только на следующий день, когда мой начальник связался с ним, чтобы обсудить уже конкретно когда он на работу выйдет.

Больше я старался так не делать.
Так и не понял, как именно «так» не делать. Не разговаривать? Не делать кандитатов грустными? Не давать положительную(?) характеристику после плохого интервью? Как?
Я думал это было понятно.

Не делать кандитатов грустными?
Примерно вот это. Если мы его взяли на работу — причём на следующий день, то это значит, что вопросы, которые ему достались (а кандидат, как мы помним, не смог правильно ответить ни на один) были просто очень сложными.

С тех пор стараюсь задавать вопросы полегче, постепенно поднимая планку и учитывая, что на собеседованиях — любой, даже хороший, кандидат волнуется и потому «тупит».
Так разговор с вами ни на что не влиял, или вы каким-то образом сделали положительные выводы из неправильных ответов?
Сделал положительные выводы. Вот один из вопросов (других не помню, но идея та же): у вас есть 6 рабочих станций и сервер с двумя сетевыми картами, а от провайдера получено 4 IP-адреса. Можно ли 4 рабочим станциям назначить «белые» адреса — если нельзя, то почему, если можно — то как?

Мне не казалось это такой уж большой проблемой, тем более что я за полгода до этого сам лично ровно так всё и настроил. А у кандидата — возникли проблемы. Но при этом он подробно рассказал — что и как можно сделать и почему ни одно из решений, которые он видит не подходит.

Проблема в том, что задача решается на том уровне в ядре Linux, которого ни в каких книжках нету… гораздо веселее, что во FreeBSD она, похоже, не решается вообще (когда наша фирма сокращалась и мы оба оттуда ушли был заключён договор с админом этого самого провайдера, чтобы он за небольшую плату поддерживал жизнь в нашем закутке — а тот был фанатом FreeBSD… через неделю он плюнул и убедил начальство выдать ему сетку /29 вместо четырёх IP, так как воспроизвести эту, отлично работавшую на Linux конфигурацию под FreeBSD просто не смог).

P.S. Про FreeBSD, кстати, спорить не буду — может быть там это и возможно. Но человек с чуть ли не 10 годами опыта это сделать не смог, а я во FreeBSD не силён, так что врать не буду.
Эмм… А надо именно ip-ники выдать, или входящие соединения на эти IP-ники получать, а что там на самих машинах будет — не важно?
Просто во втором случае какая-то уж очень простая штука получается — 4 DNAT-правила, и всё. Или одно NETMAP, кажется.
А если надо прям на них навесить, но и всё остальное тоже во что-то натить — тут придется хитроиз**нуться, но вероятно если сделать bridge-интерфейс и nat-ить исходящие соединения, от всего остального — тоже должно получится, нет?
Другое дело, что обе конфигурации, гхм, малость костылеобразные и требуют тщательного документирования, что не было делано, судя по реакции нового админа.
Эмм… А надо именно ip-ники выдать, или входящие соединения на эти IP-ники получать, а что там на самих машинах будет — не важно?
Этот вопрос тоже был задан. Ответ: нам неважно как раз что будет на сервер и оставшихся двух машинах (браузер работает — да и ладно), на этих 4 мы отлаживаем софт, который использует проприетарный протокол, который мы не умеем NAT'ить. Одна из них, впрочем, моя, так что я могу её дополнительно подкрутить…

А если надо прям на них навесить, но и всё остальное тоже во что-то натить — тут придется хитроиз**нуться, но вероятно если сделать bridge-интерфейс и nat-ить исходящие соединения, от всего остального — тоже должно получится, нет?
Если вы bridge'ите соединения, то ваши «внутренние» машинки будут выставлены «наружу» и не очень понятно что и откуда вы будете NAT'ить: у вас же после этого будет один интерфейс.

На самом деле там были просто руками нарисованы правила для iptables и ARP'а. Сервер выдавал на сетевые карты ARP'ом адреса, висящие «с другой стороны» и пересылал пакеты туда-обратно. А с моей машины был забрал диапазон портов под NAT (и он был запрещён к использованию у меня).

Другое дело, что обе конфигурации, гхм, малость костылеобразные и требуют тщательного документирования, что не было делано, судя по реакции нового админа.
Да нет, облом произошёл на первом шаге. FreeBSD отказывалась принимать и передавать дальше пакеты, которые приходили на адрес, которого у неё не было совсем ни на одной сетевой карте. То есть оказалось, что ARP-таблицы и таблицы роутинга у неё связаны: если вы отвечаем, что это «наш» пакет, то дальше его уже не отдать.

P.S. Собственно основная проблема была в том, что все IP-адреса были заняты под машинки, которым были нужны «белые» адреса. А серверу не досталось ничего. Кроме небольшого диапазона с моей машинки.
Ага, то есть тюнить пришлось и клиента тоже. Ну ок, оно полетит, конечно, но вы сами-то понимаете, что это какой-то дикий лес из костылей с целью — сэкономить конторе полторы копейки?
Ну ок, оно полетит, конечно, но вы сами-то понимаете, что это какой-то дикий лес из костылей с целью — сэкономить конторе полторы копейки?
Сейчас — да. Но сейчас у меня больше опыта.

А тогда — мне была поставлена задача, я её решил. Причём три компьютера из четырёх считали, что они работают «в вольном интернете» — в чём, собственно, и была задача. И оно отлично работало несколько лет — пока (уже после того, как я оттуда ушел) на FreeBSD перейти не решили.
Смаршрутизировать /32 адреса?
Адреса в TCP/IP не маршрутизируются. Маршрутизируются подсети. И да, из этих четырёх адресов можно было бы организовать подсеть, но толку? В каждой подсети два адреса служебyые (броадкаст и сама сеть), так что половина адресов пропала бы «зря».
$ sudo ip route add 1.2.3.4/32 dev lo
$ ip route show
<...>
1.2.3.4 dev lo  scope link
<...>

А на рабочих станциях, если там линукс, примерно так же прописывается дефолтный маршрут, только надо будет ещё src указать, чтобы от имени белого адреса выходить в интернет.

А на рабочих станциях, если там линукс
На рабочих станциях Windows и проприетарный софт. И только одна из них под моим контролем, остальные должны настраиваться по DHCP.

P.S. То, что «ip route» может отправить один адрес — это уже немного выход за рамки «стандартного» TCP/IP, но да — это, конечно, часть решения.

P.S. Собственно речь не идёт о том, что все «уж очень суперсложно и никто такого не сделает». Но оказалось что для собеседования — эта задачка чересчур сложна…
Отличная история! Напишите в личку ваш мейл. Направлю ключ к Parallels Desktop и приятные подарочки от компании.

С ног на голову — это когда программист собеседует работодателя. А мы с вами прочли типичный пример болезни HR головного мозга.

Кстати, если вы читали пелевинский iPhuck, можете в комментариях написать слово, про которое забыл Николай Добровольский?

Возможно, вот это?
Молодой и модный питерский художник в компании друзей, обкурившись травы, подходит к помойке, вынимает из неё какую-то блестящую железяку — то ли велосипедный руль, то ли коленчатый вал — поднимает её над головой и заявляет: «Чуваки, на спор: завтра я продам вот эту хероебину фирме за десять тысяч долларов».

Виктор Олегович в этой книге по части мата сам себя превзошёл, особенно ближе к концу :)

Бинго! Напишите в личку ваш мейл. Направлю ключ к Parallels Desktop и приятные подарочки от компании.
10 лет назад владелец фирмы, где я работаю, пришёл ко мне домой и сказал:
— Нам нужен компьютерщик — пойдёшь?
Я ответил:
— Да.

Это считается за собеседование?
Раз беседа была, однозначно да :)
Мне повезло собеседования на корпоративе.
Работаю удаленно, матом ругаюсь отборным, хорошо, что никто не слышит, иногда проверяю не остался ли включен какой-то канал связи случайно…
— Назови три книги, больше всего на тебя повлиявшие?
— «Гении и аутсайдеры», «Дизайн привычных вещей» и различные биографические работы. Есть история Amazon, про Илона Маска, Стива Джобса.


Хочется спросить — серьезно?! Это книги, оказавшие на вас наибольшее влияние?
А вы ожидали Clean Code? ;)

У меня вот тоже в башке полный переворот произошел. И это была не техническая литература…
У меня пока сильный пересмотр некоторых вещей произошел после «Совершенный код» Макконела и «Код. Тайный язык информатики» Петцольда.
Заметьте, интервью идёт не с программистом, а «сооснователем и вице-президентом компании». Для него примеры из жизни великих людей гораздо важнее учебников по программированию. Сюда же могу добавить книги про Возняка, Джони Айва, Кэтмелла, да взять хотя бы того же Дурова. А уж книги от Трампа и Ко полезны будут любому CEO, CIO etc.

Для руководителя книги по психологии и управлению будут гораздо важнее очередного Страуструпа или Эккеля. Взять того же Макконела, кроме бессменного Совершенного кода у него есть клёвая книга «Сколько стоит программный проект», которая обязательна к прочтению тем, кто общается с заказчиками, потому что разработка софта — это не только код.
Выполнил тестовое задание, получил отказ по причине того, что был выбран другой кандидат. Ответил письмом, что буду рад сотрудничать в будущем, если у компании появится такая потребность. Через год получил предложение о работе от этой компании. А собеседование — это просто проверка адекватности.

Тоже поделюсь историей. Правда, случилась она не со мной лично, а с бывшей коллегой. Она однажды откликнулась на вакансию в РЖД. И с ней связались, пригласили на собеседование и взяли. Через 5 лет после отклика.

Отличная история! Напишите в личку ваш мейл. Направлю ключ к Parallels Desktop и приятные подарочки от компании.
5 лет назад решил переехать в Москву из провинциального миллионика. Отослал резюме в Parallels, назначили собес с руководителем отдела. Он меня спросил — что ты знаешь про Parallels? Я говорю — ну есть у меня знакомый, работает у вас, раньше жил в моем городе, пересекались как-то, но сейчас не общаемся. Поговорили, в общем с шефом «о том, о сём». На следующее утро прихожу на работу, меня коллега спрашивает — ты чего в Parallels собрался? Я, конечно, был мягко говоря удивлен, т.к. своими планами я ни с кем не делился. Оказывается, мой коллега — хороший знакомый знакомого того работника, о котором я на собесе говорил (а он в одном подъезде жил с шефом, который собес проводил). Город-то провинциальный, все друг друга знают, хотя и миллионный. Вот так я попал в Parallels :)
Sign up to leave a comment.