Всем привет! Довольно часто я присутствую на собеседованиях многих разработчиков, которые считают себя senior, но это не так. Опыт работы является обязательным требованием для каждой должности старшего разработчика. Но один только опыт не делает вас старшим разработчиком.
Так в чем же секрет? Это сложный вопрос, и, вероятно, на него нет реального ответа. Часто разработчики считают себя старшими разработчиками, но им не хватает некоторых качеств.
Меня зовут Антон. Я занимаюсь front-end разработкой и сейчас я расскажу кто такой senior-разработчик.
Вступление
Недавно в интервью я присутствовал на интервью с 22-летним разработчиком, который утверждал, что является старшим разработчиком. Он был хорош, но я не думаю, что у него были все качества старшего разработчика.
Я пожелал ему удачи, но он не был нанят в качестве старшего разработчика.
Но один вопрос поразил меня. Как вы определяете старшего или младшего разработчика? Когда младший разработчик становится старшим разработчиком?
Это не значит, что однажды утром разработчик просыпается и просто становится старшим. Но каждый должен знать, где он находится и как он развивается.
Нет тонкой грани между младшим и старшим разработчиком
Я спросил нескольких разработчиков, которые работают в этой отрасли уже более 10 лет. Многие из них дали много ответов. Разве это не нормально? Действительно ли это должен быть единственный ответ? Я так не думаю.
Честно говоря, многие компании используют множество определений старших программистов при приеме на работу. Некоторые компании считают, что через пять лет разработчик становится старшим. Некоторые думают, что на это уходит от восьми до десяти лет.
Я считаю, что для развития от джуна до сеньера требуется время. Тем не менее, мы не можем назвать точный период времени, в течение которого младшие разработчики автоматически становятся старшими разработчиками.
Поговорив с некоторыми разработчиками, имеющими десятилетний или более опыт, и погуглив в течение часа, у меня есть несколько общих ответов. Давайте поговорим о них.
Различия между младшими и старшими разработчиками
У большинства senior-разработчиков есть некоторые общие черты, но не принимайте их слишком серьезно. Это не значит, что если вы пропустите один из этих атрибутов, вы не в лиге. Но важно обладать этими качествами, чтобы стать старшим разработчиком.
Смотрите дальше кодирования
Большинство программистов не могут многое сказать или предсказать о проекте в начале своей карьеры. Но старшие программисты могут многое рассказать о проекте с самого начала. Они смогут сказать, насколько это сложно, или какой технический стек хорошо подойдет для проекта, и так далее.
Старшие программисты могут видеть будущее и принимать меры до возникновения каких-либо проблем.
Принятие важных решений
Принятие важных решений в начале или середине проекта является важным атрибутом старшего программиста.
Старшие программисты могут адаптировать технические решения к потребностям бизнеса. Ни одна компания не платит столько только за кодирование. Старшие программисты знают бизнес и помогают компаниям развивать его.
Опыт, конечно
Когда я был джуном, я выбрал Firebase в качестве серверной системы для нашего стартапа. Но со временем мы поняли, что Firebase не подходит для нашего проекта.
В этом разница между старшим и младшим программистом. Сеньоры знают, какие технологические стеки подходят для каких проектов.
Некоторые качества и атрибуты приходят только с опытом, который есть у старших разработчиков. Я не говорю, что один только опыт делает вас старшим разработчиком, но это необходимо.
Лидерские и коммуникативные навыки
На мой взгляд, когда программист начинает наставлять и направлять младших программистов, он начинает процесс становления одним из них.
Навыки общения также являются здесь важным атрибутом. Разработка программного обеспечения - это совместный процесс. Старшим разработчикам удается объединить всех вокруг одной цели, что также может повлечь за собой компромисс.
Они знают политику офиса и знают, как действовать в соответствии с ней.
Старшие программисты знают то, чего они не знают
Младшие программисты многого не знают. Даже старшие разработчики не знают всего. Это большая разница между младшим и старшим разработчиком.
Старшие программисты знают, чего они не знают, и они знают, как выполнить задачу. Младшие программисты не знают своих слабостей. Именно эта способность делает старшего программиста эффективным программистом-одиночкой.Но младшие программисты не знают того, чего они не знают. Это большая разница между младшим и старшим разработчиком.
Старшие программисты знают, чего они не знают, и они знают, как выполнить задачу. Младшие программисты не знают своих слабостей. Именно эта способность делает старшего программиста эффективным программистом-одиночкой.
Знание vs глубокие знания
Знания - это первое необходимое качество, чтобы стать старшим в любой области, не так ли? Но одни знания не сделают вас старшим. Изучение пяти новых языков программирования - это не качество.
Скорее, глубокое знание технологии является ключевым. Вы можете легко понять это с помощью одной простой техники: попробуйте научить этому кого-нибудь другого. Тогда вы сможете определить разрыв между имеющимися у вас знаниями и тем, что вы должны иметь.
Еще один замечательный совет исходит от Майка Льюиса, одного из многих разработчиков и экспертов по программированию, который внес свой вклад в превосходную книгу Кевлина Хенни "97 вещей, которые должен знать каждый программист":
Не бойтесь ломать вещи
Идея сломать что—то может показаться непрактичной - ни один профессионал не хочет в конечном итоге ухудшать ситуацию, не говоря уже о программисте. Но если вы готовы что-то ломать, в итоге вы получите лучший код в целом и будете учиться глубже.
Итак, если вы хотите стать старшим разработчиком раньше, вы должны использовать знания лучше, чем другие.
#it #web #junior #proweb #top #code #программирование #статья