Вы замечаете со своими международными коллегами (из ЛЮБОЙ страны), что стиль кодирования и решения проблем соответствуют родным языкам?
Абсолютно. Это сложный факт. Цепочка причинно-следственных связей, однако, сложнее.
Регион, его экосистема, погодные условия, растительный и животный мир оказали влияние на развитие местной культурной религии, являющейся ее частью.
Культура и религия оказали влияние на формирование и развитие местного языка (языков).
Культура и язык оставили свой след в модели общества для этой конкретной этнической группы.
Модель общества определила модель поведения - образ жизни, отношение к работе, социальные отношения, приоритеты и ценности людей. Это та часть, которую мы хотим.
Люди разных культур будут подходить к решению проблемы с багажом своего культурного наследия - как они думают об этом, какое отношение они к работе, какую методологию и модели решения проблем они будут применять, какие приоритеты и ценности они устанавливают.
Говоря о примерах, я могу привести два. Если мы возьмем Германию, где я в настоящее время проживаю, я обнаружил определенные закономерности.
Планирование всего заранее и на длительный срок - это образ жизни. Вечерние встречи с друзьями могут быть запланированы за недели и месяцы. Молодые люди уже заботятся о своем выходе на пенсию (страхование и т. Д.). Качели настроения, импровизация, готовность и способность приспосабливаться к ходу очень низки. Естественно это переносится на способ работы. Планирование и порядок играют большую роль. Быть проворным считается исключительной характеристикой современного человека / команды с прогрессивным мышлением. Однако большинство гибких процессов, которые я наблюдал в немецких командах, больше похоже на машинное выполнение предопределенных шагов (даже если люди действительно стремятся быть гибкими), но не как дух гибкости как таковой.
Предсказуемость всего является нормой жизни. Люди привыкли знать, что будет, где и когда. Это простирается от повседневной жизни по рабочему стилю до личных отношений. Это видно, например, когда люди переходят дорогу. Они ждут зеленого света и начинают движение, не глядя, действительно ли машины остановились - потому что они ожидают этого. Люди гордятся тем, что способны контролировать каждый аспект своей жизни. Однако когда жизнь встречает что-то неожиданное, когда что-то выходит из-под контроля, люди начинают волноваться. Если перейти к программированию, я видел, что кодирование выполняется довольно оптимистично, без навязчивых идей.с проверкой ввода, внешних ключей для проверки целостности данных и так далее. Кроме того, не требуется каких-либо дополнительных разработок, чтобы сохранить некоторую устойчивость кода к сбоям и адаптировать его к некоторым будущим изменениям, просто чтобы удовлетворить сегодняшние ожидания (которые, по их мнению, вряд ли изменятся).
Экономия денег и оптимизация их расходов чрезвычайно важны в культуре. Это отражается на работе артефактов. Характеристики и качество соответствуют планированию, но не превышают их внезапно (чтобы сделать его более прохладным или просто «на всякий случай»). Другая сторона игры - нежелание инвестировать в современное аппаратное и программное обеспечение, реинжиниринг рабочего кода, его реорганизацию, улучшение, просто чтобы соответствовать текущему состоянию вещей, готовиться к будущему. Поскольку немедленного выигрыша нет и никто не платит за изменения, никто на самом деле не собирается двигаться.
Предпринимательство и креативность в культуре довольно низки. Нежелание рисковать за свой счет велико. Результаты работы редко несут отпечатки необычного, неожиданного, творческого. Люди склонны следовать проторенным путем, небольшим экспериментам или необычным установкам «из любопытства». Людям не нравится брать инициативу в свои руки, особенно в сочетании с ответственностью. Я также слышал, что у немцев, приземляющихся в Нидерландах, иногда возникают трудности, так как люди там привыкли работать независимо друг от друга без жесткого руководства. С точки зрения программирования это означает небольшое экспериментирование с новыми языками, инструментами или библиотеками, новые версии не принимаются из-за страха изменений. Люди берут шаблоны проектирования и слепо применяют их, потому что их так учили в университете и не ставят под сомнение их применимость.
Функция над модой. Это видно в повседневной жизни. Общий городской стиль, дизайн зданий, оформление улиц - все сводится к минимуму, необходимому для его функционирования, но обычно это не только стиль, красота. В программировании это проявляется в отсутствии красивого дизайна пользовательского интерфейса. Большинство корпоративных и личных сайтов довольно старомодно и скучно. Вы также не можете убедить начальника и коллег сделать некоторую полировку, потому что они не видят никаких ощутимых преимуществ.
Сложность и бюрократия являются частью образа жизни. Люди берут это дальше и применяют везде. Личные отношения детали работы, решения и решения часто приводят к множеству артефактов, документирующих то, что было сделано. Программный код часто выходит с ненужными элементами, уровнями абстракции и композициями, потому что он кажется людям более серьезным. Принцип KISS не очень популярен.
«Спасение лица» кажется очень важным, чтобы казаться успешным, чтобы не показывать признаки слабости или неудачи кому-либо еще (если у вас есть, это почти наверняка будет использовано против вас). В трудовой практике признать неудачу достаточно сложно, люди делают все, чтобы не «потерять лицо». Брать критику тоже сложно. Критика кого-либо (по уважительной причине или нет) - верный способ сделать врага. Сказать, что у вас на уме, не практикуется, что затрудняет понимание того, кто и где стоит.
Суть в том, хорошие исполнители, планирование и вершина графика, точность хороша. Инновации и креативность, однако, не ожидаются.
Второй пример касается русской культуры, к которой я принадлежу. Это совсем другое.
График и планирование не имеют особой ценности. Незначительные отклонения не касаются людей, если только / пока это не станет угрожать большему результату. Людям не нравится жить по плану, они предпочитают психическую свободу, делают все, что им нравится, и когда им хочется. В программировании они могут игнорировать «несущественное», например, написание документации и бумажную работу. Людям намного легче приходить и уходить, если им скучно от проекта, не нравится атмосфера и так далее. Долгосрочные обязательства на всю жизнь не ожидаются, люди не хотят быть связанными, не ожидают, что они придут однажды и останутся до пенсии. Это хорошо видно на рынке мобильных телефонов. В то время как в Европе / США повсеместно иметь двухлетние контракты, в России это не практикуется. Люди не
Люди не любят бюрократию и предпочитают неформальные отношения. Бумажная работа практически не ведется, как можно меньше дискуссий и встреч, просто делайте эту работу. Сложность в коде не нравится, простые решения и прямые способы предпочтительнее. Скучная рутина не одобряется. Некоторые «несущественные» задачи, такие как комментирование и документирование, могут игнорироваться. Люди могут откладывать определенные скучные вещи и делать вместо этого более интересные вещи или делать скучную часть неожиданным способом, который будет поддерживать их мотивацию.
Затраты не так важны. Людям нравится получать что-то более новое, более прохладное, более интересное и более современное без каких-либо бизнес-обоснований. Если это обеспечивает удовлетворение, они обычно не будут обеспокоены дополнительными затратами.
Люди в восторге от всего. Пища, музыка, одежда, артефакты и идеи из разных стран и культур попадают в открытые двери. Мудрые программисты будут экспериментировать с новым языком, инструментом или библиотекой просто так, из любопытства, с бизнес-кейсом или без. Различные философии и методологии, все с удовольствием взяты, затронуты, укушены, экспериментированы и смешаны в стиле фанк.
Красота и стиль очень важны. Люди будут тратить дополнительное время и деньги на то, что не имеет каких-либо ощутимых преимуществ, но только удовлетворяет некоторый художественный смысл. Часто они предпочитают что-то стильное, а не что-то более функциональное. Красивый дизайн интерфейса высоко ценится. Мудрые программисты реинжинирируют код, который кажется неуклюжим и неструктурированным, просто чтобы придать ему больше стиля, даже если раньше он прекрасно работал, что приводило к дополнительным затратам времени.
Рецепт и правила часто игнорируются и даже презираются, люди могут сделать что-то совершенно другое, если они будут убеждены, что это будет лучше (или круче - не сможет противостоять этому). Многие решения сверху будут подвергнуты сомнению и обсуждению. И да, у всех есть твердое мнение обо всем.
Предсказуемость жизни довольно низка, поэтому люди всегда планируют любые непредвиденные обстоятельства. То же самое часто отражается в коде, скорее в пессимистическом отношении, с двойными проверками и запасными планами. Архитектура может отражать готовность к возможным будущим изменениям, но не астронавтоподобная сверхархитектура. Agile - это не современная методология, а образ жизни. Также люди привыкли к изменениям и не пытаются контролировать каждый аспект своей жизни. Когда случается что-то неожиданное, люди просто кивают, говорят: «В следующий раз будет лучше» и продолжают двигаться, не сходя с ума, не начинают пить, принимать наркотики и т. Д. Провал проекта не приводит к самоубийствам, его легко воспринимать.
Политкорректность низка, поэтому люди могут просто сказать, что они думают заранее, когда вы этого не ожидаете. Будь готов.
Другой итог: ожидайте неожиданного, чего-то необычного и творческого, но не ожидайте точности машины, графика и следования правилам.
Какой из них лучше, нельзя легко ответить. Один тип работы лучше охватывается одной категорией работников, другой - другой. Плохо, если людям назначают неправильные задания для их менталитета. Я полагаю, что международному руководителю команды трудно осознать эту проблему. Я не уверен, что это когда-либо обсуждалось с применением в ИТ-индустрии.