Джуниор мидл сеньор

Ранги программистов

карьера, рост, развитие, разработка

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

Как же выглядит карьерный рост разработчика?

Junior (джуниор) — первая ступень на долгом пути саморазвития. Как правило, для успешного прохождения этого этапа требуется помощь более опытных товарищей. Серьезные проектные задачи джуниору еще не под силу, однако с каждым днём он получает все больше опыта и уверенности в собственных силах. Основная задача на старте — это связать обширные теоретические познания с реальной практикой промышленного программирования. Далее идёт рутинный процесс работы, который рано или поздно приводит к позиции мидла.

Middle (мидл) — золотая середина, человек, который уже знает свои возможности. Если джуниоры имею репутацию оптимистов, то мидлы реально оценивают время и сложность поставленных перед ними задач. Книги уже прочитаны, за плечами несколько проектов и можно спокойно работать и пить кофе в перерывах. Однако, спокойной и размеренной жизни у программистов быть не может, потому что новые технологии развиваются непрерывно и если не следовать за ними по пятам, можно остаться на невостребованной обочине карьеры. Мидл, который понял это простое правило, имеет все шансы перейти на следующую позицию.

Senior (сеньор) — на самом деле, это последний этап, требующий применения навыков написания кода в бою. Сеньор много времени проводит на митингах, обсуждая высокоуровневые концепции программного продукта. Зачастую, именно сеньоры занимаются подготовкой джуниоров, поскольку у мидлов на это не хватает времени. На самом деле, компании не против, если человек будет оставаться на данной позиции долго и счастливо. Срок, проведенный на этой ступени карьеры зависит только от желания программиста.

А что же дальше? На самом деле, тут начинается самое интересное. Как мы упомянули ранее, с ростом карьеры растёт и уровень абстракции решаемых задач. Непосредственное написание кода остается в прошлом и на смену ему приходит проектирование, то есть создание архитектуры приложений. Однако архитектор — лишь один из возможных вариантов развития. Если человек ориентирован на активное общение, то его ждет позиция руководителя проектов. Если он желает углубиться в обучение, то может стать отличным тренером.

Кто такие Junior, Middle и Senior специалисты, и чем они отличаются?

И конечно же есть вариант стать высококлассным экспертом-консультантом.

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

 

Комментарии

Следующая  

Junior, Middle, Senior, Lead — в чем разница и куда дальше?

Привет всем! Меня зовут Александр Демура, в IT я работаю с 2004 года, сейчас руковожу центром разработки DataArt в Одессе. В мои непосредственные обязанности входят найм и развитие наших специалистов, поэтому рассуждения на тему «синьорности» сотрудников и качеств, необходимых для той или иной роли, для меня актуальны и привычны.

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

Изначально в DataArt не было формальной градации по уровню квалификации — мы ведь берем в команду человека целиком, со всеми плюсами и минусами, а не просто покупаем на рынке труда требуемую функцию. Если вдуматься, «джуниор», «мидл» или «синьор» — всего лишь штампы. Но такие ярлыки приходится использовать для упрощения картины мира и повышения эффективности коммуникации — они привычны и клиентам, и коллегам.

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

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

Интерн

В DataArt есть практикантская программа, куда мы берем людей даже без опыта работы. У них есть три месяца, чтобы под руководством опытного ментора дорасти до уровня «джуниор». Для позиции интерна есть два основных требования:

  1. Хороший английский.
  2. Понимание выбранного инструмента и умение им пользоваться.

Требование к знанию английского у нас, на самом деле, общее для всех. DataArt — международная организация, большинство заказчиков находятся в США и Западной Европе, и даже внутренние коммуникации уже все больше на английском. Если человек — грамотный технический специалист, мы поможем ему разговориться и подтянуть язык — для этого есть корпоративные курсы и куча дополнительных инициатив. Но если человек без технического опыта (а интерн — как раз такой) еще и слабо знает английский, ему нужно обладать уникальными качествами, которые перекроют оба этих недостатка.

Про инструмент мысль тоже, мне кажется, простая. Если вы приходите на роль программиста, инструмент для вас — язык программирования со средствами разработки, которыми нужно уметь пользоваться. Если потенциальный интерн хочет разрабатывать на .NET, но не может объяснить, что делает CLR, чем «Equals» отличается от «==» или реализовать простейший алгоритм — шансов у него нет никаких. Приходить с нулевыми знаниями и надеяться, что всему научат на месте, параллельно выплачивая зарплату, бесполезно — слишком большой конкурс. За плечами многих кандидатов профессиональные курсы, они с легкостью отвечают на все теоретические вопросы и даже имеют опыт программирования «для себя». Конечно, таких людей берут в первую очередь.

Junior

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

Для джуна важны следующие качества:

  1. Желание развиваться и учиться (а на своих ошибках — особенно).
  2. Энергия и целеустремленность.
  3. Способность спокойно относиться к критике.

Нужно понимать, что на задачи, которые синьор решит за десять минут, джуну может потребоваться три подхода по часу каждый, а в процессе код придется переписывать полностью, затратив массу дополнительной энергии. Важно не бояться этого и чувствовать баланс: когда поднажать, попробовав решить-таки задачу самостоятельно, а когда, наоборот, перестать биться лбом о стену, сжигая проектное время, и обратиться за помощью. Оправдывать свою недостаточную производительность фразой «я же еще джун» — плохая идея.

Middle

Основное требование к мидл-разработчику — способность самостоятельно выполнять поставленные перед ним задачи. Очень похоже на то, что было написано в предыдущем пункте, правда? Однако есть важный нюанс — здесь отсутствует слово «технические».

Junior, Middle, Senior — в чем разница и куда дальше?

То есть на новом уровне нужно понимать требования бизнеса и уметь переводить их в технические решения.

Таким образом:

  • Мидл-разработчик понимает, что именно делает приложение. Это позволяет глубже понять задачу, а, значит, точнее ее оценить и качественнее реализовать.

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

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

Senior

Синьор — опытный разработчик, повидавший много кода, набивший кучу шишек и сумевший сделать из этого правильные выводы. Основная задача синьора — принимать правильные технологические решения в проекте. «Правильные» — это такие, которые приносят максимальную пользу бизнесу и минимизируют затраты. Хороший синьор не только понимает, что разрабатывает команда, но думает, какие задачи должно решить готовое приложение. Разрабатывая площадку для аукциона, синьор всегда задается вопросом о пиковой нагрузке и старается предусмотреть попытки конкурентной записи в таблицы БД. Он заранее думает об узких местах системы, о возможности ее масштабирования, помнит об уязвимостях и проблемах, вызванных неправильным использованием инструментов.

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

Немного поразмыслив, мы сможем сформулировать ряд особенностей синьор-разработчика:

  • Способность решать несколько более сложные задачи, делать это быстрее или лучше, чем средний разработчик, не имеет практически ничего общего с синьорностью. В нашей классификации человек, который это умеет, называется «Strong Middle».
  • Звание синьора невозможно получить быстро. Нужно наработать обширный опыт и понять, что отличает хорошо сделанный продукт от тяп-ляп-разработки, как проявляет себя технический долг, сколько стоит рефакторинг, зачем на самом деле нужны паттерны и так ли необходимы бесконечные уровни абстракции. Необходимо самостоятельно принять важные решения и дать им пройти испытание временем, иначе оценить их не получится.
  • Синьору необходимы хорошие коммуникативные навыки, потому что он должен не только предложить правильное решение, но и убедить в своей правоте заказчика и команду. Если вы не смогли отстоять хорошее решение и вместо него было принято плохое, винить в этом придется самого себя. Вариант «я же говорил» на уровне Senior уже не работает. С командой то же самое — мало знать, как надо, нужно еще и уметь это доходчиво объяснить. Тогда команда быстро растет и набирается опыта, избегая болезненных ошибок. Авторитарный подход («делайте, как я сказал») зачастую приводит к внутренним конфликтам, и ситуацию на проекте отнюдь не улучшает — нужно стараться этого избегать.
  • Синьор не может обойтись без понимания устройства библиотек и фреймворков. Если инструмент разработки для вас — черный ящик, и вы составляете приложение из готовых частей, не зная, что у каждой из них под капотом, продукт всегда будет неустойчивым и непредсказуемым.

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

Продолжение читайте на сайте: https://goo.gl/B59zpz

432 views

Управление (Peter F. Drucker) — это особый вид деятельности, превращающий неорганизованную толпу в эффективную целенаправленную и производительную группу.

УПРАВЛЕНИЕ (Мескон, Альберт, Хедоури) — это процесс планирования, организации, мотивации и контроля, необходимый для того, чтобы сформулировать и достичь целей организации.

УРОВНИ УПРАВЛЕНИЯ

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

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

рабочих, которые физически производят продукцию или оказывают услуги. Такое вертикальное разделение труда образует уровни управления.

Количество уровней управления может быть различным. Множество уровней еще не определяет эффективность управления. Количество уровней иногда определяется величиной организации и объемами управленческой работы. Иногда же это исторически сложившаяся структура.

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

  • руководители низового звена,
  • руководители среднего звена,
  • руководители высшего звена.

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

Существует параллельное деление руководителей на три уровня, введенное американским социологом Талкоттом Парсонсом:

  • технический уровень – соответствует уровню низового звена,
  • управленческий уровень – соответствует уровню среднего звена,
  • институционный уровень – соответствует уровню высшего звена.

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

РУКОВОДИТЕЛИ НИЗОВОГО ЗВЕНА

Младшие начальники, которых также называют руководителями первого (низового) звена или операционными руководителями – это организационный уровень, находящийся непосредственно над рабочими и другими работниками (не управляющими). МЛАДШИЕ НАЧАЛЬНИКИ в основном осуществляют контроль за выполнением производственных заданий для непрерывного обеспечения непосредственной информацией о правильности выполнения этих заданий. Руководители этого звена часто отвечают за непосредственное использование выделенных им ресурсов, таких как сырье и оборудование. Типичным названием должности на данном уровне является мастер, мастер смены, сержант, заведующий отделом, старшая медсестра, заведующий кафедрой управления в школе бизнеса. Большая часть руководителей вообще – это руководители низового звена. Большинство руководителей начинают свою управленческую карьеру в этом качестве. Исследования показывают, что работа руководителя низового звена является напряженной и наполненной разнообразными действиями. Она характеризуется частыми перерывами, переходами от одной задачи к другой. Задачи сами по себе потенциально краткие: в одном исследовании обнаружено, что время, затрачиваемое мастером в среднем на выполнение одного задания, равнялось 48 секундам. Временной период для реализации решений, принимаемых мастером, также короткий.

РУКОВОДИТЕЛИ СРЕДНЕГО ЗВЕНА

Работа младших начальников координируется и контролируется руководителями среднего звена. За последние десятилетия среднее звено управления значительно выросло и по своей численности, и по своей значимости. В большой организации может быть столько руководителей среднего звена, что возникает необходимость в разделении данной группы. И если такое разделение происходит, то возникают два уровня, первый из которых называется верхним уровнем среднего звена управления, второй – низшим. Таким образом, образуются четыре основных уровня управления: высший, верхний средний, низший средний и низовой. Типичными должностями руководителей среднего звена управления являются: заведующий отделом (в бизнесе), управляющий сбытом по региону или по стране и директор филиала.

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

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

РУКОВОДИТЕЛИ ВЫСШЕГО ЗВЕНА

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

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

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

О названиях Junior, Middle и Senior Developer

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

Поделись статьей!

Читай еще похожие статьи:

This entry was posted in Управление and tagged выполнение, деятельность, контроль, организационный, организация, персонал, план, работа, работник, руководитель, управленческий, управляющий, уровень. Bookmark the permalink.

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

Закрыть меню