В этой статье мы рассмотрим 6 советов о том, как стать разработчиком программного обеспечения среднего уровня. Эти приемы и советы являются личными для меня и являются методами, которые я использовал, чтобы стать разработчиком среднего уровня. Это означает, что вы можете не соглашаться с некоторыми пунктами и иметь альтернативное мнение. Это абсолютно нормально, так как мои советы и рекомендации ни в коем случае не являются универсальным решением. Тем не менее, я надеюсь, что вы сможете извлечь что-то из этого в своем путешествии, чтобы стать разработчиком среднего уровня.

1. Планируйте заранее

Разработка программного обеспечения — это обширная тема со многими направлениями развития. Это область, заполненная кроличьими норами, и легко попасть в ловушку непрерывного обучения без четкой и конкретной цели. Одна из первых вещей, которую вы должны сделать, это планировать заранее.

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

Я рекомендую проверить roadmap.sh. У них есть отличные дорожные карты по различным направлениям разработки программного обеспечения, и они могут стать отличным местом для начала работы. Я бы использовал этот сайт и перекрестные ссылки на сообщения о реальных вакансиях. Используйте несколько источников, чтобы решить, какие навыки вы хотите приобрести.

Как только у вас появится представление о том, какие навыки нужно освоить, пришло время начать планировать свое время. Я рекомендую планировать на год вперед. Ваш план должен включать:

  • Навыки, которые вы хотите освоить
  • Даты, к которым вы бы выучили определенный навык
  • Время, необходимое для закрепления знаний (например, побочные проекты, требующие нового навыка)

Наличие плана поможет вам держать себя в руках и побудит вас регулярно работать над развитием своих навыков. Во время обучения важно периодически пересматривать свой план и при необходимости корректировать его.

2. ТВЕРДЫЕ принципы

Принципы SOLID — это практика, которая поможет вам писать понятное, поддерживаемое и расширяемое программное обеспечение. Разработчик среднего уровня должен следовать принципам SOLID при написании кода.

Аббревиатура SOLID означает:

  • S:принцип единоличной ответственности
  • O: Принцип открытия-закрытия
  • L: принцип подстановки Лисков
  • I: принцип сегрегации интеграции
  • D:принцип инверсии зависимостей

У DigitalOcean есть отличное руководство по принципам SOLID, которое я рекомендую посетить для получения более подробных объяснений по каждому принципу. Я не буду объяснять здесь какие-либо пункты просто потому, что DigitalOcean отлично справляется с объяснением каждого пункта.

3. Изучите структуры данных и Big O

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

Чтобы помочь себе попасть в средний набор разработчиков программного обеспечения среднего уровня, вместо того, чтобы думать о том, как заставить что-то работать, я призываю вас думать о производительности. После того, как вы написали код, задайте себе следующие вопросы:

  • Какова временная и пространственная сложность того, что я только что написал?
  • Это масштабируемо?
  • Можно ли как-то сделать код более производительным?

Будучи младшим разработчиком, вы, возможно, привыкли беспокоиться о том, как заставить что-то работать. Будучи разработчиком среднего уровня, вы также должны начать спрашивать себя, хорошо ли работает код и можно ли его масштабировать.

4. Учитесь у других

Следующий совет применим на всех уровнях разработки программного обеспечения, а также в жизни в целом.

Благодаря обзору кода и общим обсуждениям у вас есть возможность усваивать знания. Используйте любую возможность, чтобы учиться у других, исследуя их решения и мыслительные процессы. Этого можно достичь, просто читая код, написанный другими разработчиками, или спрашивая других об их коде.

Читая код, вы можете заметить использование определенных шаблонов проектирования или типов данных, которые вы, возможно, не использовали, если бы писали код. В ходе дальнейших исследований вы можете обнаружить, почему их метод может быть предпочтительнее. Это понимание добавит еще один инструмент в ваш набор инструментов для решения проблем.

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

Иногда может быть неприятно, когда какой-то код, который мы отправили, отклоняется. Важно сохранять непредвзятость и позволять себе исследовать, почему ваш код был отклонен. Как правило, есть две причины, по которым код может быть отклонен: либо ваш код нуждается в доработке, либо рецензенту не было ясно, что делает ваш код.

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

В любом случае важно сохранять позитивный настрой и быть готовым узнать что-то новое.

5. Ознакомьтесь с документацией

Как младшему разработчику, вам, возможно, было проще освоить новый навык, просматривая видео на YouTube или какой-либо другой курс. Это отличная техника для изучения, однако важно начать знакомиться с документацией.

Документация любого пакета, который вы используете, «должна» содержать все ответы, необходимые для решения любой проблемы. Просмотр документации при возникновении определенной проблемы также может быть быстрее, чем поиск видео на YouTube, в котором рассматривается аналогичная проблема.

Тем не менее, не вся документация хороша, и не во всех документах есть ответы на все вопросы. В таких случаях я бы посоветовал попытаться прочитать исходный код. Это может быть сложным процессом, но он поможет вам ознакомиться с более сложным кодом. Это также может помочь понять пакет на более глубоком уровне и решить другие проблемы в будущем.

Это, конечно, не отменяет ценности инструментов Google и Stack Overflow. Оба являются отличными инструментами, и вы должны быть в состоянии использовать оба эффективно. Тем не менее, чтение документации и исходного кода по-прежнему является бесценным навыком.

6. Работайте над собственными проектами

Я понимаю, что не у всех есть время для следующего совета. У некоторых людей есть другие обязательства, и они просто не могут найти время для работы над сторонними проектами. Однако, если вы можете это сделать, я настоятельно рекомендую работать над сторонними проектами.

Когда вы работаете над сторонними проектами, вы, как правило, сталкиваетесь с проблемами, которые требуют решения. Решая эти задачи, вы развиваете свои навыки решения проблем, а также общие навыки разработки программного обеспечения.

Лично я работал над проектами, требующими навыков, которых у меня еще не было. Это заставило меня освоить новые навыки, чтобы завершить свои проекты. Таким образом, этот метод послужил способом закрепления любых новых навыков, которые я изучил, а также стал еще одним проектом, который можно добавить в мое портфолио.

Вы согласны с моими 6 пунктами? Есть ли у вас какие-либо другие подсказки, которые могут помочь разработчикам, стремящимся перейти на роль среднего уровня? Если это так, пожалуйста, прокомментируйте и дайте мне знать! Давайте поможем друг другу стать лучшими разработчиками!

Если у вас есть какие-либо вопросы о моем путешествии или о каких-либо замечаниях, не стесняйтесь оставлять комментарии, и я свяжусь с вами!

Желаем удачи в вашем путешествии по разработке программного обеспечения!