Работа профессиональным программистом - это сложная и полезная карьера. Это не карьера для тех, кто противится переменам. Наша отрасль находится в постоянном движении, и почти ежедневно появляются новые инструменты и библиотеки. Оставаться в курсе не для слабонервных, но, если вам это нравится так же, как и мне, это очень весело!
Я уже давно участвую в этой игре, поэтому я ищу определенные черты, которые говорят мне, что кандидат или коллега серьезно относится к своей работе. Вот 5 лучших.
1. Принимайте постоянные изменения и приспосабливайтесь к ним.
Изменения в этой отрасли гарантируются независимо от языка или фреймворков, которые вы используете. Инструменты, которые вы используете, изменятся - очень сильно. Вам не обязательно это нравиться, но вы должны уметь управлять этим. Вам нужно кататься с ударами. Циклы выпуска программного обеспечения становятся короче и короче. Как только вы почувствуете, что у вас есть обновления из последней версии, выпускается новая версия. В качестве примера взгляните на этот график выпуска .NET Framework и обратите внимание на более короткие периоды времени между версиями.
В нескольких нижних строках этого списка указано лет между датами выпуска. Годы! Эти времена давно прошли. Примите изменения и научитесь приспосабливаться.
2. Возьмите на себя ответственность за свое непрерывное образование.
Это очень важно. Есть только один человек, который будет так же привержен вашему успеху, как и вы, - это ВЫ!
Другими словами, никто не заботится о вас так сильно, как вы.
Личный интерес не эгоистичен - это хорошо.
Было бы здорово, если бы мы могли заставить кого-то другого заплатить за все учебные материалы и инструменты, которые нам нужны, чтобы оставаться актуальными. К сожалению, во многих случаях это не так.
Когда другая сторона не желает залезать в свой карман, чтобы финансировать наш рост, нам нужно активизировать усилия, выбрать конференции, инструменты и учебные занятия, которые, как мы думаем, нам понадобятся, и приобрести их.
Мы инвестируем в себя и в свой будущий потенциал заработка.
Также подумайте, как вам лучше всего учиться. Книги? скринкасты? видео-лекции? Вам нужно выбрать то, что вам подходит.
К счастью, существует масса обучающих компаний, которые проводят обучение практически по любой технологии, о которой вы только можете подумать. Ознакомьтесь с разделом ресурсов в конце этого сообщения, чтобы ознакомиться с частичным списком.
3. Оттачивайте свои технические навыки
Этот вид идет рука об руку с предыдущим. Посещать тренировки и читать книги - это хорошо, но в какой-то момент вам нужно положить пальцы на клавиатуру и творить.
Проверьте эти недавно приобретенные навыки, создав простое приложение. Чтение и понимание текста в книге - это совсем не то, чтобы сесть и что-то создать.
Помните те времена в школе, когда вы думали, что понимаете математическую концепцию, только чтобы получить задачу, где вам нужно было применить эту концепцию, и вы просто смотрели на проблему, не понимая? (может быть, это был только я)
Как лучше всего подготовиться к экзамену? Пройдите практические тесты.
Как лучше всего узнать, что вы приобрели новые знания, которые можно использовать? Примените эти знания и создайте что-нибудь с их помощью!
Это напоминает мне поговорку, которую мы использовали во время моей службы в морской пехоте США - вы тренируете, как вы собираетесь сражаться, за исключением, конечно, настоящих пуль.
Практическое применение недавно усвоенной концепции бесценно.
Выполняйте кодовые катас, присоединяйтесь к проекту с открытым исходным кодом и просто создавайте простые приложения на своем локальном компьютере. Каждый раз, когда вы тратите свои навыки на что-то реальное, это время потрачено не зря.
4. Развивайте свои способности обучать других
Коучинг других может быть действительно полезным. Будь то другие разработчики, с которыми вы работаете, или люди из вашей жизни, иногда всем нам нужна небольшая помощь.
Многие книги по коучингу слишком сильно полагаются на советы. Хотя иногда это может быть уместным, я считаю, что часто лучше постоянно задавать зондирующие вопросы при работе над проблемой с кем-то. Вы действительно хотите, чтобы они пришли к ответу самостоятельно, а вопросы - отличный способ привлечь людей к этому.
Существует масса ресурсов для изучения и развития навыков коучинга, но вот книга, которая мне очень нравится.
5. Работайте над своими навыками межличностного общения
Когда все сказано и сделано, вы можете стать лучшим, самым талантливым, наиболее технически опытным программистом, поглощающим алгоритмы, но если никто не захочет работать с вами, потому что вы всех бесите, вы далеко не уйдете.
Люди хорошо работают с людьми, которые относятся к ним так, как они хотят, чтобы относились к ним. Не знаю почему, но иногда этот факт теряется.
То, что вы можете быть более технически опытным, не дает вам права смотреть на кого-то свысока или плохо с ним обращаться.
Относитесь ко всем с уважением. Это совсем не требует усилий.
Спасибо за прочтение!
Ресурсы - я использую все это
Laracasts.com - отличный ресурс, которым управляет Джеффри Уэй. Парень отличный инструктор. Этот сайт ориентирован в первую очередь на Laravel, Vue, JavaScript и PHP.
Lynda.com - Линда существует всегда. Думаю, это была моя первая подписка на обучение много лет назад, еще до того, как она была куплена LinkedIn. Линда имеет обширный каталог, начиная от программирования и фотографии и заканчивая бизнесом и дизайном. Хорошая вещь. Вы могли бы быть здесь заняты годами.
Egghead.io - этот был запущен Джоном Линдквистом, который был техническим евангелистом JetBrains и начал делать видео на YouTube. Он превратил это в бизнес. Контент в основном связан с JavaScript, и он действительно хорош.
Pluralsight.com - это еще один сайт, участником которого я являюсь много лет. Первоначально он был в основном ориентирован на технологии Microsoft, но с годами расширился. Теперь они отключены от оценки навыков и обучения многим технологиям.
Docs.microsoft.com - Иногда нет замены чтению самой документации. Есть также масса очень полезных технических walkthrus. Бесплатно!
Веб-документы MDN - Веб-документация mozilla. Это отличный ресурс для всего, что связано с веб-разработкой или JavaScript. Я все время нахожусь на этом сайте.