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

Быть разработчиком программного обеспечения в эту эпоху может быть довольно сложно. Со всеми этими онлайн-курсами, видео на YouTube, блогами, обучающими веб-сайтами, почему это сложно? Программирование набирает популярность, и каждый хочет внести свой вклад. Вещи придумываются каждый день, и очень сложно поддерживать это в том же духе, каждый день появляются тысячи новых программистов, и ВАМ нужно выйти из толпы!

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

Вот несколько советов, которые помогут ускорить процесс

1) Будьте верны жене, а не используемому вами языку программирования.

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

Но если вы потратите какое-то время на изучение нового языка, это не обман, наоборот, вам следует начать изучать новый язык СЕГОДНЯ!

Популярность языков программирования и фреймворков меняется так же, как и мода. Если бы вы спросили КТО-НИБУДЬ несколько лет назад о том, какой язык лучше всего использовать на PHP, все бы ответили утвердительно. И если вы спросите сейчас, я сомневаюсь, что кто-то сказал бы, что PHP лучше, чем, например, Node.js ...

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

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

2) Тратьте больше времени на чтение книг, чем на просмотр видео на YouTube

Я знаю, что вы думаете сейчас, это проще, требует минимальных усилий, вы чувствуете себя более комфортно, это визуально, так что это с большей вероятностью поместится в вашем мозгу, и вы можете сделать это, не вставая с постели, не правда ли? Что ж, вы больше не находитесь в детском саду, и рассказывание вам историй не должно быть основным источником ваших знаний. Не поймите меня неправильно, сообщество YouTube - это круто, и мне оно нравится, но оно должно быть источником, из которого вы узнаете новые интересные вещи и уловки.

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

Книги написаны группой профессионалов, которые работают в этой области более 10 лет. Они знают свое дело, знают, как учить людей, и, вероятно, они провели много конференций и бесед, прежде чем написать эту книгу.

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

3) Никогда… Нет, серьезно НИКОГДА не говорите: «Не знаю, просто работает».

Вы сказали, что это не так? Вы, наверное, даже сказали это сегодня, ну хватит прямо сейчас!

Разработка программного обеспечения основана на логике, фактах и ​​строгих правилах, в вашем коде ничего не происходит волшебным образом. Все работает так, как работает, только потому, что это написали вы или другой разработчик.

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

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

Доберитесь до сути каждой строки кода, который вы пишете.

4) Разработка программного обеспечения - это искусство, стремитесь быть Пикассо.

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

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

Каждый может построить дом? Ну, может, и не настоящий, но, наверное, вы сможете построить дом для своей собаки за несколько дней. Требуется колоссальный объем работы, знаний, планирования, хорошей организации и бог знает чего еще, чтобы построить следующую Бурдж-Халифа.

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

Теперь вы, наверное, спрашиваете, как этого добиться?

-Писатели много читают, не так ли? Художники посещают все местные галереи, архитекторы часами рассматривают красивые здания, и вы должны делать то же самое!
Сообщество открытого исходного кода быстро растет, и каждый вносит в него свой вклад. Найдите ссылку на github на свою любимую библиотеку, перейдите в код, посмотрите, как они решают определенные проблемы, и примените их самостоятельно.

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

5) Изучите то, что вряд ли изменится

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

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

Алгоритмы и структуры данных

«- Почему вы спрашиваете меня о структурах данных, я фронтенд-разработчик?».

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

Они вам нужны, и вам нужно знать, как они работают!

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

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

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

Отличное место для начала - GeeksForGeeks.

Шаблоны дизайна

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

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

Научитесь писать CleanCode

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

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

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