Я младший разработчик программного обеспечения и работаю в компании менее года.
В то время как я всегда думал, что разработка программного обеспечения означает разработку программного обеспечения и кодирования чего-либо, мои задачи в большей степени связаны с типом администрирования, таким как настройка Jenkins, SQL Replication и т. Д.
Включены ли эти виды работ в роль разработчика или разработчик разрабатывает только программное обеспечение? Должен ли я поговорить с моим менеджером об этом? Является ли это обычным способом для компаний оценивать «развивающиеся» навыки?
Ответы:
Мне кажется, что они наняли младшего, потому что они не могли позволить себе старшего, а не потому, что они на самом деле хотели младшего (кого-то, в кого они могут инвестировать и наставлять, пока не станут старшими). Я управлял командой, которая навязывала это решение менеджерам, которые не знали лучше.
Он закончил со всеми видами неудачных заданий, таких как создание обучающих видео для пользователей и тому подобное, и я до сих пор чувствую себя виноватым из-за этого, но я находился под давлением, и ожидалось, что добавление головы в комнату разработки только ускорит процесс ,
Это печально, потому что это ставит вас и вашего босса в хитрые позиции.
У него, вероятно, нет работы, которой он мог бы доверять младшего, и любые старшие, которых он мог иметь, не могли отвлекаться от их повседневной жизни. Самый простой выход - дать младшему множество задач, не связанных с разработкой, с которыми он также не хочет тратить время старших разработчиков.
Но из этого возникает несколько проблем.
Во-первых, для работы, которую он вам дает, нужен старший разработчик. В частности, сервер сборки должен быть настроен кем-то, кто создает программное обеспечение и знает, где находятся болевые точки.
Во-вторых, младший не становится более полезным. Через пять лет вы все равно будете выполнять те же задачи, потому что вам все еще нельзя доверять фактическую работу по разработке.
В-третьих, младший со временем (как и вы) поймет, что не помогает своей карьере. Предположение, что юниоры имеют низкое качество, а не мало (и ищут), является ужасной, но очень распространенной ошибкой в этой отрасли.
Так что, да, сядь со своим боссом. Но поймите затруднительное положение, в котором он находится. Посмотрите, сможете ли вы прийти к какому-то соглашению, которое решает проблемы каждого. Вам понадобится старший наставник, и некоторые из ваших текущих задач нужно будет передать старшему. Это замедлит проект, но, в конечном итоге, окупится. Это то, что вам нужно, чтобы связаться с вашим боссом и, возможно, с его боссами. Кроме того, посмотрите, сможете ли вы найти что-то, что вы можете предложить взамен, чтобы снизить расходы.
Если вы не можете, то вы можете посмотреть в другом месте.
источник
Я считаю термин «разработчик программного обеспечения» синонимом «программист». Таким образом, разработчик программного обеспечения - это человек, основной обязанностью которого является написание кода. На моей первой работе мое звание было «Разработчик», и моя основная ответственность заключалась в разработке и написании программного обеспечения. Но я думаю, что нет точного определения этого термина. Разные люди используют его по-разному, поэтому значение становится нечетким.
Но чтобы команда разработчиков работала эффективно, вам необходимо настроить такие компоненты, как серверы конфигурации, репликацию SQL, развертывание на тестовых серверах, мониторинг тестовых серверов, архивирование сборок и т. Д. (Возможно, не все из них применимы в любой ситуации) ,
Эти задачи займут много времени в начальной фазе проекта, но займут меньше времени после того, как вы запустили хорошую настройку.
К сожалению, разработчики предпочитают кодировать, а не управлять серверами сборки. Поэтому часто эти скучные задачи попадают в руки младших разработчиков, поскольку у старших разработчиков есть более важные задачи.
Я не испытывал ни одной компании, которая использует эти задачи как средство для оценки навыков.
Если вы не удовлетворены своими текущими обязанностями, я бы предложил обсудить этот вопрос с вашим непосредственным руководителем.
источник
Это зависит. Кажется, что разные компании определяют это по-разному, а для некоторых это общий термин для множества технических функций. Для некоторых это просто название. Задавая тот же вопрос раньше, я получил ответ, похожий на «Только разработчики имеют возможность делать это в нашей организации», я бы сказал, может быть, но это не обязательно делает его разработкой).
Теоретический ответ заключается в том, что разработчик (по сравнению с программистом / программистом) - это человек, который «решает проблемы», даже если он не имеет отношения к «кодированию чего-либо».
Вы хотите больше кодировать, так что, возможно, спросите своего менеджера о дополнительных задачах по кодированию или о том, как выполнять кодирование? Вы упомянули операционные вещи, так что, возможно, некоторые из них могли бы быть сделаны фреймворками DevOps (проверьте chef и puppet ), которые сделают функции более эффективными и близкими к разработке.
источник
Это не редкость для разработчиков можно ожидать , чтобы иметь некоторые навыки системного администрирования. Как старший разработчик, я считаю, что около 5% моего времени уходит на такие задачи.
Однако, если вы не делаете любое кодирование, то вы , вероятно , следует поговорить с менеджером о получении кодирования задач. В конце концов, вы хотите создать опыт программирования. Вы также более ценны как программист, чем как системный администратор.
источник
Код не очень полезен, если он не встроен в приложение должным образом или не имеет доступа к правильным данным, поэтому перечисленные вами действия кажутся очень соответствующими тому, что делает разработчик. Я должен добавить, что разработчики программного обеспечения также сильно запутались в документации и тестировании. Это действия, необходимые для производства программного обеспечения.
Хорошо, если в вашей компании есть специалисты, которые могут сделать это за вас, но если нет, то разработчики программного обеспечения несут ответственность за все, вплоть до (и, возможно, включая) развертывание приложения в производство и его поддержку там.
источник
Разработчик в небольшой или средней компании довольно часто берет на себя некоторые задачи администратора сервера / администратора базы данных / общие настройки.
Однако, если эти задачи начинают становиться основной частью ваших обязанностей, это может быть чем-то, о чем нужно беспокоиться в зависимости от ваших карьерных целей. Хотя вы, вероятно, можете процветать в определенных компаниях в качестве общего технолога, когда вам нужно перейти в новую компанию, это может вызвать много проблем в вашем переходе. Если вы не занимаетесь какой-либо традиционной разработкой, вам нужно обязательно указать это в своем резюме. Если вы хотите устроиться на работу в процессе разработки после того, как трудоустроился, как вы описали, вам, возможно, придется принять то, что вы «переоценили» за годы работы в отрасли.
С другой стороны, могут быть компании, которые ищут разработчиков с различными навыками. Но с нынешней тенденцией написания кода на собеседованиях вам также понадобятся первоклассные навыки кодирования, даже если работа требует небольшого кода, как только вы получите.
Если вы не хотите застрять в своем текущем положении, я бы определенно попытался исправить ситуацию в ближайшее время.
источник