5 Типы программистов — какой тип вы?

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

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

  1. Пользователь инструмента
  2. Пользователь инструмента — наименее опытный из них. У него достаточно знаний, чтобы вытаскивать инструменты, такие как Visual Studio 2005, и ударять вместе графический интерфейс, просто перетаскивая виджеты на форму. Кому-то, кто не знает лучшего, потому что он дает результаты, которые часто выглядят убедительно (вызванные усилиями инструмента, а не его собственными действиями), они высоко ценят его и / или его конструкции. Почему термин «строительство, а не производство или разработка»? Ну, он ничего не развивает. Он строит вещи с использованием все более сложных инструментов. Хорошее управление, которое является убедительным или высокотехнологичным, увидит прошлое, но, к сожалению (или, к счастью, для лучших программистов мира), он все еще находит свое место.

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

    Языки выбора: Было бы действительно важно? Это все тарабарщина
    Программное обеспечение по выбору: Любые инструменты RAD, которые обеспечивают быструю разработку щелчков интерфейса

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

    Языки выбора: Javascript, html, css, возможно ограниченное понимание php
    Программное обеспечение по выбору: Простые текстовые редакторы, возможно текстовые редакторы, обеспечивающие подсветку синтаксиса

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

    Это незнание инструментов и библиотек; результат ограниченной экспозиции и опыта в более широкой области, затеняет его от более крупных проектных сред, требующих контроля версий, многих разработчиков и более крупных сред. Он просто не знаком с этим. Точно так же, будучи способным программистом, он не обязательно думает о том, как другие будут использовать то, что он пишет, и как таковой не вписывается в среду создания команды. Он опытный «одинокий программист». У него могут быть навыки, но никто не может работать с ним, потому что он не думает выше или ниже строки кода, который он пишет.

    Языки выбора: C ++, Java, C #, Visual Basic

  7. Разработчик
  8. Разработчик — опытный программист, который понимает, что гораздо больше разрабатывается программное обеспечение, чем строки кода, из которого он состоит. Он обладает гораздо лучшим пониманием концепций и принципов разработки программного обеспечения, чем программист, и думает о проблеме в целом. Хотя у него есть хорошее понимание этой проблемы и он открыт для того, чтобы видеть это под большим углом зрения, он не обязательно понимает весь домен, к которому он относится.

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

    Языки выбора: Обычно предпочитает управляемый код по неуправляемому коду, поскольку он понимает повышение производительности, которое приходит с ним.
    Программное обеспечение выбора: Большая IDE разработки; все, что обеспечивает интеллект, подсветку синтаксиса, фрагменты кода, шаблоны, форматирование и т. д.
     

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

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

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

С какими типами программистов вы встречались / работали в своем жизненном пути?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *