Почему мы не тестируем. Практика проведения технического интервью

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

Ставим задачу

Кого ищем? Ищем эффективных бойцов. Известно, что эффективность программистов со схожим опытом может отличаться в 10 раз (Ф. Брукс) или даже в 27 раз (Р. Гласс). Сразу, оговорюсь, эффективность это не только количество трупов врагов реализованных требований к ПО на единицу трудозатрат, но и умение результативно взаимодействовать с окружающими. Это важно, потому что по моим наблюдениям 50% проектных человеко-часов тратится на коммуникации. У нас это называется «синхронизация ментальных моделей».

Поэтому задача, которую ставим себе при проведении технического собеседования это постараться оценить эффективность бойца.

Почему мы не тестируем. Практика проведения технического интервью

Если на заводы людей нанимают за умения и обучают нужному отношению к делу, то в разработке ПО, следует поступать наоборот. Нанимать за нужное отношение к делу и учить необходимым умениям. Не следует брать людей, которые знают и умеют, а потом заниматься промыванием их мозгов и пытаться мотивировать их на эффективную работу. Их знания и умения ничего не будут стоить уже через полгода или год.
В идеале, конечно, следует стараться привлечь и знающих, и умеющих, и подходящих по своим жизненным позициям. Но если приходится выбирать, то правильнее выбрать жизненную позицию. Ищем тех, кто хочет развиться и расти, а затем, если необходимо, помогаем им получить требуемые технические навыки. Предлагаем не работу, а возможности.
(далее…)

Мотивация по Герцбергу. Деньги — это не главное

Был недавно на курсах + вчера пересмотрел Фарго.

И захотелось запостить картинку из одного из слайдов с курсов:
(далее…)

Маленькие советы старшим о младших

Почему новички время от времени делают «не то»? Почему они не понимают старших инженеров? Всегда ли это происходит из-за отсутствия опыта? И почему время от времени, за разговорами на кухне те же новички называют своих лидов «м*дками»?

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

Начнем издалека. Когда я еще учился в школе, у меня было увлечение – игры. А именно Warcrtaft III. И я постоянно играл, играл, играл в нее. Сначала дело ограничивалось играми с ботами, затем, в прекрасном 2003’ем у меня появился интернет и понеслись игры с живыми людьми.
Свою первую игру я проиграл – от нервов и мысли, что я могу проиграть, у меня тряслись руки и мерзли кончики пальцев, а где-то к середине игры на спине выступил холодный пот. Ясное дело, что с таким настроем первую игру я проиграл. Я проигрывал раз, затем другой, а за ним и третий. Это продолжалось довольно долгое время, пока один из моих друзей не посоветовал мне начать смотреть записи игр других, профессиональных игроков.
(далее…)

Разработка клиентской части игры для Windows 8

Добрый день. Стараясь читать материалы о разработке игр нигде не встречал цифр по времени разработки, связи со сложностью и материальными средствам. Об этом хочется поговорить на нашем опыте. Конечно, можно говорить о сложности лишь субъективно, но связь со временем все же будет прослеживаться. Каждый сможет выделить коэффициент связи, бегло просмотрев приложение и статью. Обращаю внимание, разговор пойдет исключительно о клиентской части, серверная часть заранее готова, покрыта тестами и какое-то время работала с клиентами на других платформах. Но не обойдется без небольших изменений серверной части, которые пойдут ей на пользу.
(далее…)

Cтудентов-айтишников принуждают трудиться на сборке PlayStation 4

Cтудентов айтишников принуждают трудиться на сборке PlayStation 4

«Передовой» практикой набора кадров отличилась компания Foxconn. Как сообщает китайская пресса, новое поколение игровых приставок Sony PlayStation 4 собирают тысячи студентов компьютерных и инженерных специальностей из технологического университета Сианя.

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

Обзор Mars Information Services

Наша вторая статья касается интересного и относительно молодого подразделения компании Mars — Mars Information Services (Mars IS). Мы осветим несколько моментов, касающихся специфики сферы деятельности подразделения, возможностей для студентов и проектов, которые реализуются силами Mars IS. Информация предоставлена нам эксклюзивно инсайдерами — сотрудниками Mars IS. В беседе принимали участие Сергей Кречетов и Валерий Еникеев, аналитики центра глобальной технической поддержки Mars Service Desk.
image
(далее…)

Проектирование сайта как консультационная услуга

Два с половиной года назад хабровчан нужно было убеждать в необходимости проектирования. Сегодня поисковая выдача Яндекса по запросу «проектирование сайта» содержит больше сотни тысяч страниц (к сожалению, не всегда хорошего качества). Это говорит о консенсусе в отрасли — проектирование сайтов необходимо.

В новой статье мы хотим развеять очень устойчивое и популярное заблуждение: «результат проектирования — документ или прототип». Такая мысль, по умолчанию прошитая в головах всех клиентов и почти всех исполнителей, выливается в серьёзные финансовые потери.
(далее…)

Применение Agile в рамках договора с фиксированными фазами

Вы руководитель нового проекта заказной разработки. Вам принесли договор, неизвестно кем и как заключенный, дали контакты заказчика и дальше вы предоставлены сами себе. Изучив функциональный объем проекта, вы понимаете, что в данном случае было бы правильно применить Agile. Но в договоре уже прописаны четкие фазы в соответствии с каскадной моделью разработки (waterfall) со сроками, результатами и фиксированной ценой по каждому этапу. Что делать в этой ситуации?
Применение Agile в рамках договора с фиксированными фазами

(далее…)

Тонкости в процессе дизайна для стартапов

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

Тонкости в процессе дизайна для стартапов

Надеюсь, что она поможет дизайнерам избежать тех же ошибок, на которые натолкнулась в свое время я. Людям, которые решили сделать свой стартап, эта статья поможет учесть тонкости, связанные с процессом разработки и сделать более качественный продукт.
(далее…)

Запад есть Запад, Восток есть Восток. О разнице культур и взаимодействии внутри международной компании

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

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

Наверное, я мог бы попробовать сформулировать разницу в одном предложении, но для полного понимания приведу красивую теоретическую базу, подтверждающую опыт.
Иллюстрация
(далее…)