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

на главную - закладки

Жанры

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

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

Шрифт:

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

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

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

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

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

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

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

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

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

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

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

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

Подряд

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Любовь Носорога

Зайцева Мария
Любовные романы:
современные любовные романы
9.11
рейтинг книги
Любовь Носорога

Лекарь для захватчика

Романова Елена
Фантастика:
попаданцы
историческое фэнтези
фэнтези
5.00
рейтинг книги
Лекарь для захватчика

Кротовский, не начинайте

Парсиев Дмитрий
2. РОС: Изнанка Империи
Фантастика:
городское фэнтези
попаданцы
альтернативная история
5.00
рейтинг книги
Кротовский, не начинайте

Новый Рал 3

Северный Лис
3. Рал!
Фантастика:
попаданцы
5.88
рейтинг книги
Новый Рал 3

Сердце Дракона. Том 10

Клеванский Кирилл Сергеевич
10. Сердце дракона
Фантастика:
фэнтези
героическая фантастика
боевая фантастика
7.14
рейтинг книги
Сердце Дракона. Том 10

Я – Стрела. Трилогия

Суббота Светлана
Я - Стрела
Любовные романы:
любовно-фантастические романы
эро литература
6.82
рейтинг книги
Я – Стрела. Трилогия

Имперец. Земли Итреи

Игнатов Михаил Павлович
11. Путь
Фантастика:
героическая фантастика
боевая фантастика
5.25
рейтинг книги
Имперец. Земли Итреи

Блуждающие огни 4

Панченко Андрей Алексеевич
4. Блуждающие огни
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Блуждающие огни 4

Книга 4. Игра Кота

Прокофьев Роман Юрьевич
4. ОДИН ИЗ СЕМИ
Фантастика:
фэнтези
боевая фантастика
рпг
6.68
рейтинг книги
Книга 4. Игра Кота

Наследник 2

Шимохин Дмитрий
2. Старицкий
Фантастика:
попаданцы
альтернативная история
фэнтези
5.75
рейтинг книги
Наследник 2

Расческа для лысого

Зайцева Мария
Любовные романы:
современные любовные романы
эро литература
8.52
рейтинг книги
Расческа для лысого

Кодекс Крови. Книга VI

Борзых М.
6. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга VI

Клан

Русич Антон
2. Долгий путь домой
Фантастика:
боевая фантастика
космическая фантастика
5.60
рейтинг книги
Клан

Истинная со скидкой для дракона

Жарова Анита
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Истинная со скидкой для дракона