Программист решает сложные задачи и приводит в движение важнейшие механизмы. Но в глазах непрограммистов он часто выглядит как угрюмый чудаковатый парень за компьютером. Это несправедливо. Пора всё это поменять.
Если вы опытный программист, проследите, не делает ли кто-то из ваших подопечных того, что написано ниже. Научите их круто показывать свою работу.
Неподготовленным людям — техническим языком
Допустим, в офисе программисту задали вопрос из серии «Ой, да что там сложного? Это же одну кнопку добавить». А в реальности там задача на изменение архитектуры серверной части, замену протоколов, в общем — большая работа под капотом.
Программист может сказать так: «Нет, там нужна новая инфраструктура, полный рефакторинг бэкенда, выкатка нового API и ещё бы обвешать всё автотестами». Это верно по сути, но окружающие почувствуют себя дурачками. Им проще посчитать программиста безнадёжным чудаковатым технарём, чем разобраться в сути.
Как быть. Если видите, что человек не совсем понял ваше объяснение, попробуйте объяснение на овощах, магазинах, пасочках с песком, домашних животных и родственниках — в общем, на чём-то понятном и бытовом. Даже если вы немного пожертвуете точностью, человеку станет понятнее, и он проникнется к вам уважением.
Было: «Нет, там нужна новая инфраструктура, полный рефакторинг бэкенда, выкатка нового API и ещё бы обвешать всё автотестами».
Стало: «Представь, что у нас не интернет-магазин, а обычный продуктовый. И нам надо установить камеры. Сами камеры — ерунда, купил и прикрутил к стене. Вот кнопка тоже ерунда, я тебе хоть сейчас её добавлю.
Но смотри: каждой камере нужна розетка. Розетку нельзя просто вбить в стену, там должен быть кабель с питанием. Эти провода будут либо под потолком, либо в стене. Вот эти все розетки, провода, стены — это инфраструктура. И всем этим можно заниматься только ночью, когда посетителей нет. Вот я буду делать то же самое, только с программами».
Инструкции для людей, как для машин
Программист привык, что если он написал правильный алгоритм, всё выполнится как нужно. Данные никуда не потеряются, последовательность действий не нарушится, программа не перескочит через этапы и не займётся самодеятельностью. Так работают машины.
Люди так не умеют. Если программист напишет инструкцию к своей программе для сотрудника, то сотрудник наверняка по дороге забудет часть информации, поменяет местами шаги или вообще сделает по-своему. Программиста это может злить.
Что делать. Просто признать, что человек устроен принципиально сложнее, чем машина, на нём не работает логичный и последовательный код пошаговых инструкций. Человека нужно обучать, водить за ручку, проверять его навыки и десять раз всё проделывать вместе с ним, прежде чем он научится. Машинам — код, человекам — обучение.
Снисходительное отношение к гуманитариям
Гуманитарии редко владеют высшей математикой и не сдавали в универе теорию вероятностей. Зато они сдавали другие предметы и хороши в своих областях. То, что программист владеет миром абстрактного — не повод снисходительно проявлять себя по отношению к гуманитариям.
Даже наоборот: на волне популярности программирования и разработки в этой области будет всё больше людей без специального технического образования. Может быть, гуманитарий не напишет новый физический движок или не разработает сложный алгоритм для научных симуляций, но он вполне может написать веб-приложение или запрограммировать робота.
Как быть. Если вас раздражают гуманитарии, представьте такое: это просто люди, которые ещё не начали изучать программирование. Скоро они тоже захотят писать код, а вы со своими знаниями и опытом сможете стать их наставником и товарищем.
Скрытность
Конечно, то, что программисты замкнутые и нелюдимые — это миф, и программисты бывают какие угодно. Но на работе часто бывает такое: программисты долго делают часть продукта или внутреннего сервиса, выпускают её и особо ничего не рассказывают коллегам.
В итоге неудивительно, что коллеги считают программистов оторванными от реальной жизни технарями: «Они что-то там делают, мы не знаем».
Как быть. Возьмите за правило показывать коллегам, что вы сделали за последний месяц: приглашайте их на планёрки, показывайте код, демонстрируйте «Было — стало». Даже если вы просто ускорили работу и никто ничего не заметил, покажите коллегам демонстрацию: вот так работало до обновления, вот так после, стало в три раза быстрее. Это благодаря вот этому коду, мы его полностью переписали.
Очень скоро вы увидите, что коллеги будут относиться к вам с гораздо большим уважением, а к вашей работе — с интересом.
Все беды — от общения
Мы все часто недооцениваем значение правильной коммуникации: как важно погружать людей в свой мир, показывать им понятные примеры, вовлекать.
И ещё: когда люди с интересом показывают свою работу, всегда находятся те, кто загорается ею и тоже хочет попробовать. Показывайте свои успехи, делитесь алгоритмами, проводите презентации. И вы увидите, как растёт не только ваш авторитет в компании, но и число ваших последователей и будущих коллег.