Чтение онлайн

на главную

Жанры

Записки автоматизатора. Профессиональная исповедь

Орлов Андрей Юрьевич

Шрифт:

В резюме программистов я сразу же смотрю раздел специальных знаний. И если в качестве языков программирования перечислены Word, Excel и html, резюме отправляется в корзину незамедлительно.

Просьба принести на собеседование несколько страниц исходных текстов своих программ на любом носителе почему-то сразу отсеивает процентов десять кандидатов. Ясно, что у вас нет никакой возможности проверить, написан ли исходник самим кандидатом, но вы можете понять, какой текст программы кандидат считает годным для предъявления новому работодателю, то есть качественным.

Кстати, совершенно не обязательно, чтобы кандидат в программисты очаровал вас во время интервью. Программист – не сейл, поэтому может быть и стеснительным, даже слегка аутичным, и свои успехи совершенно не обязан уметь рекламировать. Более того, к тем, кто себя умеет хорошо продать, следует относиться настороженно: совмещение профессий (а особенно, таких как сейл и программист) встречается редко.

Конечно, на интервью надо поверять уровень знания кандидатом программных средств, которые он продекларировал как использовавшиеся. Даже если работать придется

с другими языками программирования и СУБД. Любой квалифицированный программист хоть какие-то языковые средства должен знать хорошо. Людей, поклоняющихся языку программирования как божеству, на работу стараюсь не брать. Кандидатов, которые начинают петь песни «Си рулит, Паскаль отстой», «Слава Юниксу» и т. п., даже когда их не просят петь вовсе, я отсеиваю. Они обычно не понимают, что язык – всего лишь рабочий инструмент, а не волшебная палочка. Я до сих пор убежден, что человек, который в состоянии формулировать алгоритмы на одном языке программирования, достаточно быстро и без проблем освоит любой язык. Но вот отсутствие алгоритмического мышления не может заменить даже знание всех языков мира.

Одну задачу я даю практически всем. Вот эту.

Написать программу на любом языке программирования.

Входные данные в формате чч: мм:

1) время прибытия поезда по расписанию; 2) время фактического прибытия поезда на станцию.

Выход: текст: «Поезд опоздал» / «Поезд пришел раньше» / «Поезд пришел вовремя», время задержки или опережения.

Поскольку у читателя совершенно случайно может возникнуть желание решить приведенную задачу, разбор ее решения я поместил в Приложение 1.

Конечно, посмотреть, как кандидат решает задачи, которые вы даете, интересно и познавательно. И некоторую информацию вам это даст. Однако не забывайте, что результат любых тестов объективно оценивает только способность испытуемого проходить тесты соответствующего вида. Вам нужен стайер, который должен бегать кроссы по пересеченной местности в составе команды, а вы пытаетесь его оценить по тому, как он бегает спринтерские дистанции в одиночку.

Подряд

Часть работ может быть возложена на внешних подрядчиков. Основным критерием для возможности передачи работ служит одновременное выполнение перечисленных ниже требований:

– возможность четко сформулировать задачу;

– возможность выполнить эту задачу независимо от остальных задач;

– возможность быстро проверить результат и принять работу.

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

Стиль руководства

В математике функции бывают сразу четными и нечетными. Только это все подфункции тождественного нуля. А начальники умеют быть посредственными и непосредственными одновременно.

Про то, как нужно руководить людьми, написана куча литературы, особенно в Соединенных Штатах. Часть из нее даже полезно прочесть, хотя это и не может заменить вашего личного опыта и мозгов.

Сам я вряд ли могу научить, как надо руководить, зато точно могу сказать, как не надо.

Приводимый ниже текст написан мной несколько лет назад. Все слова в нем – мои, но все методики разработаны другим, причем вполне конкретным автором. Если он только пожелает, я с удовольствием размещу его фамилию на обложке этой книги как фамилию своего соавтора. Гонораром я уже предлагал делиться, но ответа не получил.

Руководство по руководству

Каждый подчиненный должен чувствовать, что он дерьмо.

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

1. Не давайте подчиненному получить удовлетворение процессом труда. Для этого проще всего дать ему невыполнимое задание или работу, рассчитанную на пять человек. Но это грубо и подрывает авторитет руководителя, поскольку демонстрирует его глупость или, в лучшем случае, неумение считать. Вот более приемлемые способы.

– Никогда не формулируйте четко, чем должен заниматься сотрудник. Если же он все-таки выдавил из вас перечень своих функций, немедленно поручите ему что-нибудь другое или, наоборот, поручите то же самое еще троим, причем желательно, чтобы сами исполнители об этом были не в курсе.

– Никогда не сообщайте сотруднику всю информацию, необходимую для выполнения задания. Если же информацию ему все же удалось получить, немедленно дайте другому сотруднику, занимающемуся тем же самым, информацию, противоречащую первой.

– Весьма полезно объявить человека ответственным за что-либо на совещании, на которое вы его не пригласили. Самое главное после этого – дать ему понять, что он сам не пошел на совещание.

– Всегда старайтесь, чтобы никто не знал, кому он кроме вас подчиняется. Если вы не можете не подчинить одного сотрудника другому, обязательно подчините его сразу двоим, а самому подчиненному назовите в качестве руководителя кого-нибудь третьего. Интересны также схемы, в которых сотрудник оказывается подчиненным сам себе через одно или два звена.

– Очень полезно держать на работе хотя бы одного сотрудника, который в состоянии провалить любое порученное ему дело. Такой сотрудник должен выполнять обязанности, пересекающиеся или стыкующиеся с обязанностями наибольшего возможного количества других сотрудников. Очень

вероятно, что в этом случае уже никто не сможет сделать что-нибудь по-человечески.

Приучайте подчиненных делать все через задницу. Когда вы заметите, что у них даже это начало получаться, поменяйте часть тела. Частей тела много, ко всем не приспособятся.

2. Не давайте подчиненному получить удовлетворение результатом труда.

– Никогда не принимайте окончательных решений и не назначайте окончательных сроков. Это можно делать только для того, чтобы отменить первое и передвинуть второе. Если сотрудник подготовил все заранее, передвиньте срок на более поздний или отмените задание, в противном случае передвиньте срок на более раннее время.

– Если успех какой-либо работы неминуем, можно поступить одним из двух способов. Или дайте сотруднику другое задание (еще лучше – отправьте в командировку) и торжественно завершите дело сами, или начинайте активно ему мешать: дайте его подчиненным другие задания (желательно требующие их присутствия в другом месте и так, чтобы руководитель об этом не знал), отберите обещанные ранее ресурсы (деньги, автомашину, связь и т. п.). Конечно же, все это нужно делать в последний момент, когда изменить уже ничего нельзя.

3. Всегда показывайте, что вы умнее, сильнее, круче и лучше подчиненного.

– Если подчиненный принял какое-нибудь решение самостоятельно, обидьтесь, поругайтесь, повозмущайтесь и отмените это решение. Если он внес предложение, представьте его как невероятно бездарное, а если это не получается, скажите, что тут все надо обдумать. Обдумывание должно длиться не менее двух месяцев, после чего про предложение можно забыть или выдать его за свое. Если подчиненный не принимал решений и не вносил предложений, пожалуйтесь на его безынициативность.

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

– Никогда не пытайтесь выполнять свою работу: это может не получиться. Всегда делайте работу своих подчиненных, это беспроигрышный вариант: если получилось – «Мне приходится работать за всех», если нет – «Вам ничего нельзя поручить».

– Потопчите подчиненного. Лучше всего просто избить его или вымазать дерьмом, но это опасный и/или дорогостоящий путь. Еще лучше заставить его изнасиловать себя самого, но я не знаю, как этого добиться.

– Изумительно действует на подчиненных и такой маневр: дав сотруднику согласие переговорить с ним и предложив садиться, вы в ту же секунду начинаете набирать номер на своем телефонном аппарате и после соединения приступаете к получасовому общению с абонентом.

– В качестве очень эффективного средства рекомендуется организация переездов из одного помещения в другое. Самое главное при этом – проследить, чтобы условия работы ни у кого не улучшились.

– Никогда не показывайте, что вы довольны чьей-то работой. Лучше всего, чтобы сотрудник просто не мог понять, хорошо ли он работает. Для этого иногда даже стоит не обращать внимания на явные провалы в работе сотрудника (они и так видны). У вас всегда достаточно поводов поругать его за что-нибудь другое.

– Сотрудник никогда не должен знать, за что ему платят зарплату. Для этого иногда следует давать ему премию, чтобы снять ее в тот момент, когда ему все-таки удастся что-нибудь сделать.

– Выдавать зарплату лучше ближе к ночи, как минимум часа через два после окончания рабочего дня. При этом последние три часа нужно находиться на виду у всех и всем своим видом показывать, что у вас есть дела и поважнее, чем платить кому-то зарплату.

– Еще лучше иногда забывать отдать зарплату сотруднику. Идеальное время для этого – день зарплаты перед длительными праздниками или отпуском.

– После невыплаты двух получек подряд очень эффектно расплатиться за подчиненного за обед в столовой.

Если тем не менее ваш подчиненный так и не ощущает себя дерьмом, выгоните или, что еще лучше, выживите его с работы.

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

Кроме того, вот несколько правил, которыми я на самом деле пользуюсь.

1. Никогда не берите на работу родственников и друзей. У меня есть положительный опыт работы и с родственниками, и с друзьями, но проблемы, которые могут возникнуть после такого шага, заставляют меня продолжать придерживаться этого правила.

2. Сотрудник, который знает свое непосредственное дело хуже вас, – плохой сотрудник. Я исхожу из предположения, что вы собрались делать дело, а не тешить свое самолюбие.

3. Если качество или производительность труда программиста можно повысить с помощью материального стимулирования, то этого программиста следует уволить.

4. Качество и производительность труда программиста всегда можно понизить с помощью отрицательного материального стимулирования. Например, понижая ему зарплату после каждого внедрения, можно добиться полного отсутствия уже третьего внедрения.

5. Очень просто людей, преданных вам, превратить в людей, преданных вами. Чьи-либо успехи в обратных действиях мне неизвестны.

Еще одно правило, специфическое для разработчиков программного обеспечения. Я его изобрел во время внедрения первого проекта, но никогда им не пользовался. Хотя иногда очень хотелось. Называется оно «принцип модульности Орлова»: если из распечатки одного модуля программы можно свить веревку, на которой можно повесить программиста, его написавшего, то все это следует сделать.

Буратино в отделе

(Конспект лекции, прочитанный одному Буратино из отдела ИТ летом 2003 года)

Поделиться:
Популярные книги

Идеальный мир для Лекаря 15

Сапфир Олег
15. Лекарь
Фантастика:
боевая фантастика
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 15

Младший сын князя

Ткачев Андрей Сергеевич
1. Аналитик
Фантастика:
фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Младший сын князя

Попала, или Кто кого

Юнина Наталья
Любовные романы:
современные любовные романы
5.88
рейтинг книги
Попала, или Кто кого

Имперец. Том 4

Романов Михаил Яковлевич
3. Имперец
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Имперец. Том 4

Проданная Истинная. Месть по-драконьи

Белова Екатерина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Проданная Истинная. Месть по-драконьи

Газлайтер. Том 5

Володин Григорий
5. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 5

Приручитель женщин-монстров. Том 2

Дорничев Дмитрий
2. Покемоны? Какие покемоны?
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Приручитель женщин-монстров. Том 2

Путь Шедара

Кораблев Родион
4. Другая сторона
Фантастика:
боевая фантастика
6.83
рейтинг книги
Путь Шедара

Последний Паладин. Том 4

Саваровский Роман
4. Путь Паладина
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Последний Паладин. Том 4

Возрождение Феникса. Том 1

Володин Григорий Григорьевич
1. Возрождение Феникса
Фантастика:
фэнтези
попаданцы
альтернативная история
6.79
рейтинг книги
Возрождение Феникса. Том 1

Я все еще не князь. Книга XV

Дрейк Сириус
15. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я все еще не князь. Книга XV

Чужая дочь

Зика Натаэль
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Чужая дочь

Черный Маг Императора 6

Герда Александр
6. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
7.00
рейтинг книги
Черный Маг Императора 6

В теле пацана

Павлов Игорь Васильевич
1. Великое плато Вита
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
В теле пацана