Пройдя несколько собеседований, а также участвуя в качестве интервьюера на определенных должностях кандидатов в разработчики и, в конечном итоге, получив должность среднего инженера-программиста, я заметил некоторые вещи, которые действительно выделяют разработчика среди остальных кандидатов.
Теперь давайте посмотрим, что это за вещи, а также некоторые идеи и мое мнение о каждой из них.
И еще кое-что; эти пункты о том, как выделиться как разработчик, представляют собой среднее значение нескольких факторов и опыта, который у меня был, например, то, что сделало меня замеченным некоторыми клиентами, с которыми я работал (они сказали мне, что им нравятся определенные вещи во мне), интервьюеры, с которыми я разговаривал, а также личный опыт и некоторые исследования, проведенные мной в качестве самоанализа.
1. Социальные навыки
Поскольку именно благодаря этому у меня появилось так много клиентов, я должен упомянуть об этом; это ядро процесса получения желаемой работы, проекта, клиента с несколькими проектами и т. д.
Просто подумай об этом; Хотели бы вы, чтобы робот работал на вас? Может быть, в некоторых случаях да, но в большинстве случаев клиенты хотели бы приятно поговорить с вами, и я не могу точно описать процесс и логику, но это делает вас гораздо более привлекательным, качество, которое всем нравится после все (как -> симпатичный), вы получаете аллюзию.
Потому что, в конце концов, хорошие разговорные навыки означают, что вы можете получать более выгодные предложения, поскольку вы в состоянии вести переговоры, когда люди узнают вас, а нам нравится иметь дело с людьми, которых мы знаем.
Есть много способов улучшить их; от выхода в мир и общения с реальными людьми (не обязательно техническими людьми), от попадания в сообщества, как онлайн, так и в реальном мире, до даже просмотра каналов на YouTube с объяснением психологических процессов и функций, а также объяснением социальных ситуаций ; такими каналами, из которых я также почерпнул много полезной информации, были бы Харизма по команде, Шаян Вахеди, и может быть еще много, но это те, за которыми я слежу в основном. Если вы знаете других, которые вам нравятся, дайте мне знать! ;)
2. Пройти лишнюю милю
Что я имею в виду?
Хорошо, позвольте мне привести вам пример;
Не так давно я подал заявку на должность в технологическом городе, это была должность среднего уровня разработки, так как я хотел попасть в большую команду и расширить свои знания, учась у более опытных и лучших разработчиков, чем я сейчас. . И для этой позиции был проект, который будет представлять собой техническое собеседование, поэтому у технического руководителя есть представление о том, как вы справитесь с реальным проектом со всеми доступными ресурсами и небольшими ограничениями на то, что и как вы можете это сделать, за исключением указанной основной функциональности.
Короче говоря, я прошел эту часть процесса найма на пятерку;
Что я сделал? Почему это актуально?
Что ж, причина, по которой они выбрали меня, может быть связана с предоставлением наилучшего решения, а может и не с тем, что я сделал гораздо больше, чем требовалось; дизайн? Я улучшил его настолько, насколько мог, чтобы уложиться в срок. Функциональность? Та же история; Я добавил намного больше функций, чем требовалось, так как я счел нужным для данного приложения.
И угадайте, что? Им это очень понравилось, так как я уверен, что немногие кандидаты думали об улучшении того, что уже выполнено на 100%. Но какой совет я хочу вам дать?
Всегда выкладываться на 110 %!
3. Знайте основы!
Возможно, вы слышали это 1000+ раз, но все же некоторые не понимают их важности. Давайте проверим пример между средним знанием Frontend Development и исключительным;
Итак, давайте посмотрим на макет, которого может достичь средний интерфейс:
Довольно просто с некоторыми элементами, которые могут занять некоторое время, не очень сложно. Это может занять некоторое время, и могут быть некоторые проблемы здесь и там, но не сложный интерфейс для разработки.
Теперь давайте посмотрим на макет, который можно сделать, только обладая некоторыми действительно продвинутыми знаниями основ:
Сейчас все же говорить о реализации дизайна субъективно, так как способов реализации дизайна очень много, но последний я посчитал гораздо более продвинутым, чем первый.
И если я вас не убедил в разнице навыков, то приведу еще один пример того, что можно сделать при продвинутом знании основ:
Это дизайн, который является частью репертуара задач CSSBattle и требует очень глубоких знаний CSS.
В общем, знание основ действительно может позволить вам создавать удивительные вещи; еще один невероятный пример чистого дизайна/анимации CSS:
Запись экрана 2021-07-10 в 10.29.33.mov
Это «Запись экрана 2021-07-10 в 10.29.33.mov Влада Холлоуэя на Vimeo , дом для высококачественных видео и…vimeo.com»
, который вы можете проверить на CodePen здесь.
И да, все это делается с помощью чистого CSS, без единого понимания JavaScript. Это то, что позволяет вам сделать очень глубокое понимание основ.
У нас также есть соответствующий пример, о котором я недавно думал; не так давно я видел статью, в которой доказывалось, что многие общие функции, которые разработчики реализуют с помощью JavaScript, также могут быть реализованы с помощью HTML, который является чрезвычайно мощным, поскольку замена JavaScript на HTML значительно оптимизирует производительность;
Вы можете проверить пару функций, которые можно реализовать просто с помощью HTML, в этой статье, написанной Mehdi Aoussiad:
4. Способность наставлять и направлять других
Это особенно полезно при собеседовании на позиции от среднего до старшего, так как это, скорее всего, даст вам преимущество перед коллегами, поскольку разработчики с меньшим опытом работы на бумаге довольно редко могут направлять других и, будучи в состоянии, создают впечатление о вас. быть более опытным.
Отказ от ответственности: я знаю, что это может показаться странным и неправильным, но для людей, пришедших из фриланса, обычно есть некоторые навыки разработки, поскольку они ранее работали над реальными проектами, и в большинстве случаев им приходилось многому учиться самостоятельно. А наличие времени на то, чтобы пытаться и направлять других, будь то студенты колледжа, сверстники, страстные друзья и т. д., дает вам ценное преимущество.
5. Делитесь своими знаниями с другими
Под этим я подразумеваю обмен своими знаниями через блоги, учебные пособия, комментарии на форумах, решения на StackOverflow и т. д.
Это связано с другим опытом, который у меня был с моими интервьюерами. Это во время интервью, когда один из интервьюеров упомянул некоторые из моих блогов и что они им понравились, а после собеседования рекрутер также сказал мне, что они также упомянули блоги, что интересно для приниматься во внимание.
И вдобавок ко всему, есть также преимущество изучения новых вещей и обзора других, которых вы уже знали, поскольку лично я всегда просматриваю информацию, о которой пишу, чтобы убедиться, что каждая информация, которую я даю, точна. И это мне очень помогло, особенно с некоторыми аспектами, о которых я не знал, в основном в React, так как до сих пор это была моя любимая тема.
Заключение
Это почти все, что я мог придумать, когда дело доходит до того, что выделяет вас как разработчика не только на собеседованиях, но и на работе.
Надеюсь, вам понравилась эта статья, и я надеюсь, что вы узнали что-то новое и примените любой пункт, перечисленный здесь, на практике и выделитесь!
Ваше здоровье!
Полезные ссылки:
Здесь вы можете ознакомиться с серией «Типы разработчиков»:
Типы разработчиков | Веб-разработчик
Типы разработчиков | Разработчик мобильных приложений | Часть I
Если вы хотите узнать больше о моем путешествии в качестве веб-разработчика-фрилансера, который начал работать в 17 лет, обязательно ознакомьтесь с этой историей:
Мой план стать веб-разработчиком в 17 лет
А так же другие статьи на эту тему:
- Что такое RESTful API?
- Что такое архитектура MVC?
- Веб-сайты, которые помогли мне как веб-разработчику
- 5 расширений кода Visual Studio, которые я использую как разработчик интерфейса