пятница, 18 апреля 2014 г.

[life.work] Интервэйл все 2.0 :)

Спустя совсем небольшое время после заметки "Интервэйл 2.0" приходится писать "Интервэйл все 2.0" :)

Вчера мое возвращение в Интервэйл закончилось. Подошел к концу 3-х месячный испытательный срок и нужно было принимать решение о том, готов ли я дальше тащить ответственность за большой коллектив в нынешней ситуации. Понял, что не хватает гибкости и мудрости, чтобы принять и приспособиться к неожиданно меняющимся условиям. По многим вопросам компромиссы возможны и я готов их искать, как бы тяжело это не было. Но бывают принципиальные моменты, где моя позиция не может измениться не смотря ни на что, вплоть до потери работы. Так уж я был с детства воспитан родителями, спортом, учебой и своим профессиональным становлением в КБСП в очень непростых условиях 1990-х годов.

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

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

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

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

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

среда, 16 апреля 2014 г.

[management] "Но я уже забыл почему." Такое вообще бывает?

Пролистал давеча книженцию Стратоплан-овцев Славы Панкратова и Александра Орлова "Управленческие инструменты (менеджмент на пальцах)" (в электронном варианте ее с еще четырьмя подобными книгами сейчас раздает dev.by). Наповал сразил пример "из жизни":

На одном из наших докладов как-то встал опытный дядька (лет 45) и поделился своей ситуацией:
Я — главный архитектор в компании. Ко мне студент приносит свою архитектуру. Я на нее смотрю и вижу, что она плохая. Но я уже забыл почему. Как мне объяснить студенту, что он не прав?

Неужели такое в жизни бывает, чтобы архитектор не помнил, почему архитектура плоха?

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

  • как получилось, что на должности архитектора оказался такой "специалист"?
  • как не допустить подобных ситуаций в будущем?

PS. По поводу тренингов и материалов Стратоплана у меня есть свое мнение. Но вот в чем ребятам не откажешь, так это в умении себя продавать и обманчивом ощущении легкости темы управления людьми, которое они формируют на своих тренингах. Чем-то напоминает книги и учебные пособия Брайана Петерсона по фотографии ;)

понедельник, 14 апреля 2014 г.

[work] Банальность: главный ингредиент в разработке ПО -- это люди

Не побоюсь выступить в роли Капитана Очевидность и скажу то, что давным-давно известно. И что я, имея за плечами 20-летний профессиональный опыт разработки ПО и пусть небольшой, но очень экстремальный опыт руководства разработчиками, осознаю все лучше и лучше.

Управление разработкой ПО -- это управление людьми. Успех разработки не в технологиях, не в инструментах, не в процессах, не в регламентах. А в людях.

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

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

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

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

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

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

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

Фокус в том, что таких ярко выраженных типажей не так уж и много. Многие сочетают в себе разные качества, в большей или меньшей степени. И, главное, не всегда осознают что могут, и не всегда понимают, чего хотят. Более того, с возрастом взгляды, устремления и амбиции меняются, об этом обязательно нужно помнить.

Но главный фокус в том, что теории все это просто. А на практике все намного, намного сложнее.

воскресенье, 13 апреля 2014 г.

[life.photo] Кампутер и наушники в Ч/Б

Дело было вечером, делать было нечего... В кадр попало то, что было под рукой :)


1.4/35mm, ISO 2000, f=1.4, 1/125

[work.prog] Вот уж действительно непростой вопрос...

После завершения перевода статьи Тома ДеМарко "Идея, время которой пришло и ушло" не отпускает вопрос, заданный в статье:

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

Последние пару дней мучительно пытаюсь найти на него ответ и не могу :(

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