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

Итак, вот список:

Общие вещи

Знайте, что вы не все знаете (и не корите себя за это). Просто будьте готовы учиться.

Область технологий, насколько я знаю, сейчас самая динамичная из всех областей, особенно если рассматривать ее как профессию. Отрасль продолжает двигаться вперед очень высокими темпами. Думать, что вы все это знаете, может серьезно помешать вашему прогрессу. Не менее важно, чтобы вы не проклинали себя за то, что не знаете следующую горячую технологию. Просто будьте непредвзятыми, наблюдайте, есть ли что-то, что вас действительно волнует, а затем начинайте изучать это. Кроме того, нет никакой проблемы в том, чтобы делать маленькие шаги. Я усердно работал, чтобы изучить стек LAMP, получить сертификат PHP, а затем пришел к стеку MEAN и MERN, и мне пришлось начинать все сначала 🙂 .

Сосредоточенность действительно помогает.

Будучи разработчиком, вы всегда разрываетесь между тем, какой язык выбрать для своей работы и какой изучать дальше. Вы хотите быть Frontend Hero, ниндзя мобильного приложения одновременно (и нет причин, по которым вы не можете быть, особенно с кросс-платформенными стеками). Но хорошее правило, которое я нашел полезным, заключается в том, чтобы не гнаться за слишком многими технологиями одновременно. Хотя это зависит от того, сколько времени вы можете посвятить обучению, двух технологий одновременно будет достаточно, чтобы ваш мозг работал. Ваше мастерство над одной технологией. также могут ускорить и облегчить изучение других, поскольку они могут иметь общие понятия. Это также поможет вам в постановке лучших целей. Из личного опыта: Пытаясь быть всем, иногда можешь оказаться никем 🙁

Сильная база очень важна.

Будь то тренировка в тренажерном зале или перед компьютером, сильное «ядро» действительно помогает. Я понял это однажды, когда боролся с проблемой на каком-то онлайн-соревновании по программированию в течение 4–5 часов. Решив ее, я виртуально похлопал себя по плечу, но увидел, как кто-то другой сделал это менее чем за час! Я спросил его, как он это сделал, его ответ — это была простая задача динамического программирования. Только если бы я сосредоточился на большем количестве алгоритмов, я бы легко определил проблему. Это всего лишь пример, возможно, вы не решаете вопросы динамического программирования в своей повседневной работе в качестве разработчика, но смысл, который нужно взять с собой, — «уделите некоторое внимание изучению основ вашей профессии». Базовый список для приложения. разработчик может быть:

  1. Принципы SOLID — возможно, они не применимы напрямую ко всем языкам, но они дают представление о том, что следует учитывать при создании приложения.
  2. Знание наиболее распространенных структур данных и алгоритмов.
  3. Знание ваших инструментов, таких как IDE, инструментов сборки, вашей ОС. При правильном использовании может повысить производительность и качество вашей работы.
  4. Базы данных. Обычно с приложениями вам нужна какая-то форма постоянства, и хорошей идеей будет хорошо изучить систему баз данных.
  5. Отладка — действительно полезно, если вы профессионал, найдите инструменты, которые помогут вам в отладке, это не только поможет вам найти ошибки, но и поможет глубже изучить язык.

Изучайте и применяйте

Это произошло конкретно со мной, я прочитал очень много технических книг, посмотрел множество курсов. Они давали мне информацию, но я не мог преобразовать все это в знания.
Причиной этого было отсутствие применения того, что я узнал. Я продолжал переходить от одного учебного ресурса к другому. Это то, что называется «Иллюзией компетентности». Когда проходишь материал, чувствуешь, что все отлично и все понимаешь. Но что мы упускаем из виду во время этого спринта по материалу, так это маленькие важные детали. Без практики мы не сможем установить связи, которые позволят нам действительно думать и создавать решения в этой технологии. Поэтому убедитесь, что все, что вы изучаете, также применяйте. Где его применить? Создайте образец приложения (слишком много приложений для списка? Проявите творческий подход, возможно, сделайте уменьшенную версию более крупного приложения, такого как CRM), может показаться, что это займет слишком много времени, но опыт будет обогащать, и вы также можете получить удовольствие это также.

У меня есть еще что сказать по этому поводу, но продолжу в другом посте.

Первоначально опубликовано на сайте codisfy.com 23 июля 2018 г.