Disclaimer: Я в курсе, что «индусский код» это очень сильный негативный брэнд среди разработчиков в России и у большинства в голове масса предрассудков на эту тему. Очень не хотелось бы получить шовинистский срач в комментариях, хотя я почти уверен что этого не избежать. Также я почти уверен, что мои индийские коллеги этот пост прочитают хотя бы в переводе. Поэтому давайте постараемся выглядеть цивилизованными профессионалами в вопросах и комментариях.
Моя профессиональная карьера сложилась таким образом, что в настоящий момент я работаю техническим директором в компании Knoema и в моем подчинении оказалась очень необычная команда состоящая из российских (Пермь) и индийских (Bangalore) разработчиков. За почти 2 года такой работы накопилось много полезных наблюдений. Да и вообще тема достаточно интересная поскольку практически все мои знакомые из ИТ интересуются как оно там в Индии и чем русские разработчики отличаются от индийских. До этого я более 10 лет работал в разработке ПО в России и США, из них более 7 лет руководителем разных рангов. Вот я и решил поделиться накопившимся «интернациональным» опытом.
Начать я хотел с того, что хотя и есть достаточно существенные отличия, но в общем и целом работают в ИТ конкретные люди, а не индусы или русские и гораздо больше флуктуаций я наблюдаю на персональном уровне, чем вижу отличий в менталитете или местной специфике.
На мой взгляд наибольшие отличия между Индией и Россией заключаются в процессе найма сотрудников и надо сказать честно ситуация в Индии мне нравится гораздо меньше, чем в России. Основное отличие заключается в том, что в Индии резюме специалистов доверять нельзя совершенно и нужно проводить тщательный отбор перед приемом людей на работу.
В России (в Перми) редко встретишь резюме технического специалиста длиною больше чем 2 страницы. У нас большинство технарей совершенно не умеет себя рекламировать и подать через резюме, многие его пишут лишь бы было. Но если уж резюме есть, то, как правило, сведениям в нем можно в общем и целом доверять. Если человек пишет, что он эксперт в C# и MS.NET, то вероятно оно так и будет.
В Индии типовое резюме представляет собою портянку страниц на 10 с перечислением кучи самых разных технологий, массы проектов, выполнявшихся ролей и задач. В общем по резюме золото, а не люди. На практике если человек когда-либо участвовал в проекте в котором используется технология Х и сам никогда к ней не прикасался, то он совершенно спокойно может указать ее в резюме. Знание всех необходимых вам технологий и фреймворков нужно обязательно и тщательно проверять на собеседованиях. Неоднократно я сталкивался со случаями откровенного вранья, когда по резюме человек должен иметь неплохой опыт работы с какой-то технологией, а в реальности знаний ноль. С такими я расставался сразу же.
Другой неприятной проблемой в Индии является то, что даже после пройденного собеседования и принятого оффера нет никакой гарантии что человек выйдет на работу. Стандартной практикой в Индии является так называемый notice period по которому сотрудник обязан отработать на компанию обычно 45-60 дней после подачи заявления об увольнении. В России, как правило, если уж человек написал заявление об увольнении с текущей работы, то с большой степенью вероятности ты увидишь его у себя через 2 недели, ну или чуть больше если он так договорился с работодателем. В Индии человек подписавший job offer пропадает из твоего поля зрения на полтора-два месяца и это часто приводит к тому что он пропадает вообще. Нормальной ситуацией является невыход на работу в оговоренный срок хотя до этого с человеком еженедельно созванивались и подтверждали дату выхода на работу.
Позитивным моментом в Индии является все-таки значительно более широкий рынок специалистов и в абсолютных цифрах большее количество интересных кандидатов. В одном только Бангалоре в ИТ отрасли работает за сто тысяч человек. Конечно далеко не все из них разработчики и качественные, но все-таки интересных кандидатов значительно больше. Нужно отметить также что в Бангалоре и значительно выше конкуренция среди работодателей, т.к. практически все крупные мировые софтверные компании там открыли центры разработок.
Вообще быть разработчиком в Индии весьма престижно и это хороший социальный лифт для многих. На общем достаточно бедном социальном фоне опытные разработчики имеют весьма неплохие зарплаты и могут многое себе позволить относительно других социальных слоев. Соответственно многие стремятся в этот сектор и естественный отбор делает свое дело. Не забывайте что в Индии 1.2 миллиарда населения и действующий чемпион мира по шахматам — индус.
На мой субъективный взгляд принципиальной разницы между разработчиками в России и Индии нет. У меня работают талантливые ребята в Индии и точно такие же талантливые в России. Какой либо фундаментальной разницы в уровне и знаниях я не вижу. Весьма вероятно это связано с моими жесткими критериями отбора. С моей точки зрения «индусский код» — это такой российский миф, основанный на не самом удачном опыте работы. В Индии действительно много тех кого мы называем «говнокодерами» (извините за выражение), работающих на аутсорсе делающих кабы что кабы как и выдающих «индусский код». Но и в России полно непризнанных гениев, которых у нас принято называть быдлокодерами. Просто в силу несравнимых абсолютных величин в Индии этот эффект значительное заметнее чем в Росcии (1200 против 140 миллионов населения).
Одним очень важным и серьезным конкурентным преимуществом Индии является то, что все более или менее серьезные специалисты владеют английским на хорошем уровне. В этом плане российские специалисты вчистую проигрывают индийским и на мой взгляд именно поэтому так мало известных русских имен международного уровня в ИТ.
Зарплаты разработчиков одного уровня в Перми и в Бангалоре почти одинаковы. Если сравнивать с Москвой или Питером, то толковый разработчик в Бангалоре обойдется заметно дешевле. По сравнению с США и Европой разница будет еще более заметной. Вкупе с качественным английским именно это сделало Индию столь привлекательной для аутсорсинга ИТ-разработок.
В плане менталитета есть два существенных отличия. Индусы, как и многие другие азиатские нации, не очень любят прямые и жесткие разговоры на сложные или неприятные темы. Зачастую приходиться выпытывать ответы на простые, бинарные вопросы на которые люди, если ответ им неприятен, пытаются отвечать уклончиво, а не да или нет. Заметно, что требование прямого ответа вызывает у них разрыв шаблона. С другой стороны меньше резкости в повседневном общении, люди общаются более культурно что-ли и более ответственно относятся к сказанному. В России все-таки нередки случаи когда сначала скажут, а потом подумают. Еще один важный культурный момент заключается в том, что некоторые индусы скорее соврут, чем условно потеряют лицо. Это нужно пресекать на корню и объяснять людям, что облажаться это не смертельно и со всеми случается.
Второе важное отличие заключается в том, что на мой взгляд русские более креативны и творчески подходят к работе, а индусы более исполнительны и контролируемы. Я думаю явление «творческого кризиса» знакомо многим менеджерам в ИТ в России: «меня не ценят», «занимаюсь какой-то фигней», «нет бесплатного биллиарда». У индусов я практически не замечаю этих творческих заморочек, они более что-ли меркантильны и уровень зарплаты и должность для них более важны чем для русских.
Подытоживая хотел бы отметить, что у нас в команде русские и индусы совместно работают над общим кодом, совершенно нормально общаются через Skype, почту и на выходе вроде даже что-то толковое получается :-) Может я и жестоко ошибаюсь, но мне кажется что это нравится и индусам и русским поскольку возможность регулярного общения с представителями другой страны и культуры как ни крути полезный опыт хорошо расширяющий кругозор. Мы все вместе как и впрочем хаброжители свято верим в карму :-) и стараемся ее только повышать выдавая качественный код, делая ревью кода и помогая друг другу.
В статье я затронул только основные моменты. На появившиеся вопросы постараюсь ответить в комментариях. Спасибо за внимание.
Моя профессиональная карьера сложилась таким образом, что в настоящий момент я работаю техническим директором в компании Knoema и в моем подчинении оказалась очень необычная команда состоящая из российских (Пермь) и индийских (Bangalore) разработчиков. За почти 2 года такой работы накопилось много полезных наблюдений. Да и вообще тема достаточно интересная поскольку практически все мои знакомые из ИТ интересуются как оно там в Индии и чем русские разработчики отличаются от индийских. До этого я более 10 лет работал в разработке ПО в России и США, из них более 7 лет руководителем разных рангов. Вот я и решил поделиться накопившимся «интернациональным» опытом.
Начать я хотел с того, что хотя и есть достаточно существенные отличия, но в общем и целом работают в ИТ конкретные люди, а не индусы или русские и гораздо больше флуктуаций я наблюдаю на персональном уровне, чем вижу отличий в менталитете или местной специфике.
Найм сотрудников
На мой взгляд наибольшие отличия между Индией и Россией заключаются в процессе найма сотрудников и надо сказать честно ситуация в Индии мне нравится гораздо меньше, чем в России. Основное отличие заключается в том, что в Индии резюме специалистов доверять нельзя совершенно и нужно проводить тщательный отбор перед приемом людей на работу.
В России (в Перми) редко встретишь резюме технического специалиста длиною больше чем 2 страницы. У нас большинство технарей совершенно не умеет себя рекламировать и подать через резюме, многие его пишут лишь бы было. Но если уж резюме есть, то, как правило, сведениям в нем можно в общем и целом доверять. Если человек пишет, что он эксперт в C# и MS.NET, то вероятно оно так и будет.
В Индии типовое резюме представляет собою портянку страниц на 10 с перечислением кучи самых разных технологий, массы проектов, выполнявшихся ролей и задач. В общем по резюме золото, а не люди. На практике если человек когда-либо участвовал в проекте в котором используется технология Х и сам никогда к ней не прикасался, то он совершенно спокойно может указать ее в резюме. Знание всех необходимых вам технологий и фреймворков нужно обязательно и тщательно проверять на собеседованиях. Неоднократно я сталкивался со случаями откровенного вранья, когда по резюме человек должен иметь неплохой опыт работы с какой-то технологией, а в реальности знаний ноль. С такими я расставался сразу же.
Другой неприятной проблемой в Индии является то, что даже после пройденного собеседования и принятого оффера нет никакой гарантии что человек выйдет на работу. Стандартной практикой в Индии является так называемый notice period по которому сотрудник обязан отработать на компанию обычно 45-60 дней после подачи заявления об увольнении. В России, как правило, если уж человек написал заявление об увольнении с текущей работы, то с большой степенью вероятности ты увидишь его у себя через 2 недели, ну или чуть больше если он так договорился с работодателем. В Индии человек подписавший job offer пропадает из твоего поля зрения на полтора-два месяца и это часто приводит к тому что он пропадает вообще. Нормальной ситуацией является невыход на работу в оговоренный срок хотя до этого с человеком еженедельно созванивались и подтверждали дату выхода на работу.
Позитивным моментом в Индии является все-таки значительно более широкий рынок специалистов и в абсолютных цифрах большее количество интересных кандидатов. В одном только Бангалоре в ИТ отрасли работает за сто тысяч человек. Конечно далеко не все из них разработчики и качественные, но все-таки интересных кандидатов значительно больше. Нужно отметить также что в Бангалоре и значительно выше конкуренция среди работодателей, т.к. практически все крупные мировые софтверные компании там открыли центры разработок.
Вообще быть разработчиком в Индии весьма престижно и это хороший социальный лифт для многих. На общем достаточно бедном социальном фоне опытные разработчики имеют весьма неплохие зарплаты и могут многое себе позволить относительно других социальных слоев. Соответственно многие стремятся в этот сектор и естественный отбор делает свое дело. Не забывайте что в Индии 1.2 миллиарда населения и действующий чемпион мира по шахматам — индус.
Уровень специалистов
На мой субъективный взгляд принципиальной разницы между разработчиками в России и Индии нет. У меня работают талантливые ребята в Индии и точно такие же талантливые в России. Какой либо фундаментальной разницы в уровне и знаниях я не вижу. Весьма вероятно это связано с моими жесткими критериями отбора. С моей точки зрения «индусский код» — это такой российский миф, основанный на не самом удачном опыте работы. В Индии действительно много тех кого мы называем «говнокодерами» (извините за выражение), работающих на аутсорсе делающих кабы что кабы как и выдающих «индусский код». Но и в России полно непризнанных гениев, которых у нас принято называть быдлокодерами. Просто в силу несравнимых абсолютных величин в Индии этот эффект значительное заметнее чем в Росcии (1200 против 140 миллионов населения).
Одним очень важным и серьезным конкурентным преимуществом Индии является то, что все более или менее серьезные специалисты владеют английским на хорошем уровне. В этом плане российские специалисты вчистую проигрывают индийским и на мой взгляд именно поэтому так мало известных русских имен международного уровня в ИТ.
Зарплаты
Зарплаты разработчиков одного уровня в Перми и в Бангалоре почти одинаковы. Если сравнивать с Москвой или Питером, то толковый разработчик в Бангалоре обойдется заметно дешевле. По сравнению с США и Европой разница будет еще более заметной. Вкупе с качественным английским именно это сделало Индию столь привлекательной для аутсорсинга ИТ-разработок.
Менталитет
В плане менталитета есть два существенных отличия. Индусы, как и многие другие азиатские нации, не очень любят прямые и жесткие разговоры на сложные или неприятные темы. Зачастую приходиться выпытывать ответы на простые, бинарные вопросы на которые люди, если ответ им неприятен, пытаются отвечать уклончиво, а не да или нет. Заметно, что требование прямого ответа вызывает у них разрыв шаблона. С другой стороны меньше резкости в повседневном общении, люди общаются более культурно что-ли и более ответственно относятся к сказанному. В России все-таки нередки случаи когда сначала скажут, а потом подумают. Еще один важный культурный момент заключается в том, что некоторые индусы скорее соврут, чем условно потеряют лицо. Это нужно пресекать на корню и объяснять людям, что облажаться это не смертельно и со всеми случается.
Второе важное отличие заключается в том, что на мой взгляд русские более креативны и творчески подходят к работе, а индусы более исполнительны и контролируемы. Я думаю явление «творческого кризиса» знакомо многим менеджерам в ИТ в России: «меня не ценят», «занимаюсь какой-то фигней», «нет бесплатного биллиарда». У индусов я практически не замечаю этих творческих заморочек, они более что-ли меркантильны и уровень зарплаты и должность для них более важны чем для русских.
Подытоживая хотел бы отметить, что у нас в команде русские и индусы совместно работают над общим кодом, совершенно нормально общаются через Skype, почту и на выходе вроде даже что-то толковое получается :-) Может я и жестоко ошибаюсь, но мне кажется что это нравится и индусам и русским поскольку возможность регулярного общения с представителями другой страны и культуры как ни крути полезный опыт хорошо расширяющий кругозор. Мы все вместе как и впрочем хаброжители свято верим в карму :-) и стараемся ее только повышать выдавая качественный код, делая ревью кода и помогая друг другу.
В статье я затронул только основные моменты. На появившиеся вопросы постараюсь ответить в комментариях. Спасибо за внимание.