Привет всем, я Нима, Front-end разработчик на Trengo.com.
Я хочу поделиться с вами своим опытом с уровнем Seniority, это не значит, что я (не) Senior-разработчик, но я нашел путь несколько хороший. позвольте мне объяснить путь.

Как мы можем оценить наш уровень старшинства?

Правдивая история

Позвольте мне начать с реальной истории о том, как в 2012 году я стал техническим директором, это была моя первая официальная должность в компании. до этого я был фрилансером, без опыта командной работы. Плохой опыт поможет вам лучше понять будущее. Мне был 21 год, и до того дня в компании не было технической команды, у меня была возможность убедить их, что я хороший разработчик, в то время я был разработчиком Java и PHP, и, по моему мнению, именно поэтому они убедился в своих способностях. Не было технического парня, чтобы взять у меня интервью. Могу сказать, что я был первым техническим специалистом в команде, который смог взять интервью у других, которые были лучше меня. Тогда я понял, что мой стаж будет оцениваться уровнем компании. Для меня было не лучшим выбором стать техническим директором, и именно поэтому кандидаты были лучше меня. Несколько лет спустя я пошел на собеседование как кандидат, и это было так смешно, что меня отвергли, потому что мой уровень был выше старшего разработчика, но это не так, у интервьюера было неправильное отношение. Так что нельзя быть уверенным, что ты везде Senior-разработчик, очень много факторов, влияющих на уровень Seniority.

Интервьюер влияет

Это термин, который я придумал. Решения компании очень эффективны, вы должны быть уверены, что есть человек, который лучше вас (даже не такой же, как вы), если вы хотите оценить наш уровень старшинства. На большинстве собеседований вы будете знать имя интервьюера, было бы полезно посмотреть его/ее страницу на Linkedin.

Хорошие навыки

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

Как я могу улучшить свои «Твердые навыки»?

Я настоятельно рекомендую вам пройти курсы Udemy и Frontend masters и определить свой проект на Github по тому, что было изучено. Это было бы началом, владея шаблонами проектирования, алгоритмами, решением проблем (вы можете попробовать https://leetcode.com/), реализовывать идеальные до пикселя проекты, обеспечивать реализацию с меньшим количеством ошибок, подходы к разработке программного обеспечения и письменные тесты — это те факторы, которые будут отличать вас от других. Что я хочу отметить, так это то, что не ищите много языков программирования, языки — это только инструменты, вам нужно знать концепции и знания в области разработки программного обеспечения.
Поскольку существует множество ресурсов для обучения, трудно выбрать лучший, это зависит от уровня старшинства разработчика, вы должны выяснить, в чем именно заключается вопрос?
Давайте начнем с нескольких основных примеров:

Основные проблемы (уровень 1):
Например: Как передать значение из дочернего компонента Vue в родительский?
Такого рода проблемы связаны с основами, вам нужно сначала пройти базовые курсы или прочитать документацию Vuejs.
Примечание: когда вы покупаете пылесос, вы должны прочитать руководство и документацию перед запуском, иначе вы столкнетесь с некоторыми проблемами. так что имейте в виду, что быть инженером-программистом сложнее, чем работать с пылесосом ;)

Проблемы уровня 2:
Например: необходимо создать собственный нижний лист React с помощью Typescript.
Существует несколько плагинов и инструментов для создания красивого React родной нижний лист. все ли они полезны и удовлетворят ли ваши потребности? Конечно, нет, поэтому вам нужно знать, как они работают, а затем вы можете написать свой нижний лист с помощью Typescript. Для начала вы можете прочитать исходный код Github (это известный: https://github.com/gorhom/react-native-bottom-sheet).
Видео и курсы бесполезны для решения таких проблем, поскольку вам нужно настроить свое решение.

Проблемы уровня 3:
Например:
Как реализовать микрофронтенд с Vite и Svelte наилучшей практикой?
Это глубокая задача программирования (проблемы архитектуры), вам нужно прочитать связанные и технические книги или статьи, а также я настоятельно рекомендую вам иметь наставника, который поможет вам с лучшими практиками.
Примечание:Один наставник не может помочь вам во всем, лучше иметь наставника для каждого конкретного раздела.

Мягкие навыки

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

Как его улучшить?
-
Не стесняйтесь задавать вопросы.
- Попросите сил ваших коллег помочь вам с проблемами.
- Уточните задачи и организуйте встречи для этой цели.
- Организуйте сеансы парного программирования с коллегами.

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

Лидерство.
Существует 9 известных шагов, которые помогут вам улучшить свои лидерские качества. Давайте рассмотрим их вместе.
 – Практикуйте дисциплину.
У хорошего лидера хорошая дисциплина. Если у вас естественный беспорядок, вы можете сократить свою рабочую нагрузку.
 – Берите больше проектов. :
наличие большей ответственности поможет вам быть более дисциплинированным.
- Учитесь следовать:
Настоящий лидер без проблем передает контроль другому человека, если необходимо, постарайтесь быть прозрачными со своей командой.
- Развивайте ситуационную осведомленность:
Хороший лидер может видеть большие проблемы до того, как они возникнут, это поможет другим доверять вам больше.
 — Вдохновляйте других:
Вдохновение – одна из самых важных вещей, которая делает вас хорошим лидером. Хороший лидер старается побудить команду учиться больше и быть лучше. энергичный.
- Продолжайте учиться:
Вы должны быть самым современным в команде. Независимо от того, насколько хорошо вы разбираетесь в программировании, старайтесь быть в курсе последних событий и улучшать свой опыт.
- Решайте конфликты:
В каждой команде много конфликтов из-за разных культур. и личности, хороший лидер может разрешать подобные конфликты в команде.
 – Будьте внимательным слушателем.
 – Расширяйте возможности своих товарищей по команде.

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

Заключение:

Если вы хотите стать Senior Front-End разработчиком, вы должны улучшить свои Soft Skills и Hard Skills. Существует известная дорожная карта Front-End, с помощью которой вы можете улучшить свои навыки: https://roadmap.sh/frontend, я настоятельно рекомендую вам составить список дел и попытаться их выполнить. Оцените их на основе их приоритета потребностей вашего офиса. Разделите свои проблемы на категории и попытайтесь найти лучший способ их решения.
Приобретение социальных навыков немного сложно, это зависит от вашей личности и усилий. ИМО Было бы очень полезно попросить лидера помочь вам в достижении ваших целей в качестве наставника.

Надеюсь статья была полезной и понравилась 🚀