Есть ли хорошо принятый термин для разработчика с набором навыков между младшим и старшим разработчиком?

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

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

Для иллюстрации я буду использовать Высшую лигу бейсбола:

  • Начинающий игрок --> Разработчик начального уровня
  • Игрок класса А --> Младший разработчик
  • Двойной первоклассный игрок --> Младший разработчик
  • Лучший игрок --> Младший разработчик
  • Игрок Высшей лиги --> Старший разработчик

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

Итак, существует ли коммуникативный термин или фраза, которые выражают уровень навыков «младшего» разработчика более точно, чем общий термин «младший»? Я понимаю, что эту роль трудно определить, но мне было любопытно.

Навыки в бейсболе гораздо легче измерить и измерить, чем в программировании.
Я понимаю это, поэтому мой комментарий в конце. Это было просто, чтобы проиллюстрировать мою точку зрения.
Я видел термин «Medior», используемый по отношению к разработчикам.
Просто «разработчик» или «Java Developer» для Java.
Также появляется «средний вес». Хотя для меня это такая же загадка, как и для «старшего» и «младшего».
Даже младший старший, на мой взгляд, хорошо зарекомендовал себя.
Ни в коем случае игрок Высшей лиги --> Старший разработчик. Если вы достаточно хороши, чтобы вас призвали, вы хороши. Новичок --> Малая лига.
А как насчет многолетнего опыта? Он не описывает набор навыков напрямую, но может быть хорошим прокси и его легче определить, чтобы все знали, что это значит.
Ориентирован на Великобританию, но это иерархия, которую я видел. Разработчик-стажер (необязательно, может быть отнесен к младшему. Подразумевается опыт работы < 1 года). Младший разработчик (подразумевается <2-3 лет в зависимости от способностей). Разработчик программного обеспечения (иногда называется мид. Обычно означает где-то между 18 месяцами и 8-10 годами). Старший разработчик (не встречается с опытом менее 3 лет, может иметь любой общий год. 5-6 лет нормального окна продвижения по службе). Ведущий разработчик (я не встречал ни одного с опытом менее 5 лет). Весь опыт относится к последипломному опыту работы.

Ответы (2)

Названия должностей полностью зависят от компании и часто бессмысленны с точки зрения набора навыков.

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

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

Не существует общепринятой иерархии титулов. Лучшее, в чем я работал, было трехуровневым.

Младший инженер

Инженер

Старший инженер

Но даже тогда один из старших парней получил свой титул (и зарплату) благодаря офисной политике, а не набору навыков.

Я бы сказал, что Intermediate Developer — это нечто среднее. Обычно под эту группу подпадает кто-то с опытом от 2 до 10 лет, и, вероятно, к ней относится большинство разработчиков в рабочей силе. Вот пример объявления о вакансии. Как вы можете видеть здесь, они ищут кого-то с опытом работы не менее 2-5 лет.

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

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