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

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

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

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

1. Аналитика или средство решения проблем

Программисты действительно склонны заниматься аналитикой. Но вряд ли все действительно аналитичны, методичны и интересуются процессами.

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

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

Сила - он способен решать конкретные проблемы компании, которые обычно не встречаются в Интернете, и обладает терпением, чтобы тщательно исследовать первопричину проблем. Кроме того, если вам нравятся бизнес-правила, вы, как правило, хорошо моделируете системы, активно работая с системными аналитиками, владельцами продуктов и другими заинтересованными сторонами.

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

2. Практическое или практическое

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

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

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

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

Карьерный рост. Практики могут стать менеджерами, чтобы окружить себя более технически продвинутыми людьми. На самом деле это довольно часто случается, в основном в компаниях, где ИТ не являются основным кормильцем. Другой вариант - специализироваться на карьере DevOps и быть лидером в этой области, работая вместе с архитекторами.

3. Исполнитель или техник

Этого парня я называю техническим программистом. Он любит технологии, ему надоедают деловые дискуссии и оценки времени. Однако когда дело доходит до технических вопросов, он поднимает планку и имеет твердое мнение по этому поводу.

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

Исполнителю настолько нравится программирование, что у него нет проблем с карьерой разработчика, и зачастую он не претендует на лидерство.

Слабость. У них не очень бизнес или клиентоориентированный ум, поэтому, если задача требует больших знаний, им потребуется помощь, которую они обычно принимают.

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

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

4. Дизайнер

Дизайнер - это программист, чей перфекционизм воплощен в пользовательском опыте, поэтому он программист, созданный для Front-End. Этому парню нравится все, что связано с этой областью, и он будет гордиться адаптивными экранами, эффектами и другими задачами, которые, как сообщается, не нравятся другим программистам.

Слабость. У меня могут возникнуть трудности с программированием логики и алгоритмов. Когда сложность явно выражена, им нравится работать только с Html и CSS. Однако, когда трудности будут преодолены, они могут хорошо структурировать переднюю часть, используя компонент многократного использования.

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

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

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

Третий вариант - стать дизайнером, что дает вам большое преимущество. Они могут предсказать, как ваши решения повлияют на взаимодействие с пользователем, скорость внедрения и возможность повторного использования компонентов.

Бонус: Создатель

Это программист, объединяющий одновременно несколько качеств. Он практичный, аналитический и исполнительный. В итоге это метапрограмма, которая разрабатывает программы и инструменты, чтобы облегчить жизнь другим программистам. Билл Гейтс и Линус Торвальдс, например, являются прекрасными примерами.

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

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

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

Больше контента на plainenglish.io