«Специализация может быть большим искушением для ученого,

Но для философа это смертный грех» — Карл Поппер.

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

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

Что вы должны узнать

  1. Алгоритмы и структуры данных
  2. Основы дизайна - сцепление, сплоченность
  3. Парадигмы программирования — функциональное программирование и т. д.
  4. Математические понятия - закон Литтла, теория массового обслуживания
  5. Коммуникации - кодеки, протоколы и т.д.
  6. Разложения и абстракции

Если вы действительно хотите понять, почему это важно, посмотрите это потрясающее выступление Мартина Томпсона.

Но достаточно ли этого? Конечно, нет!!!

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

Наконец, создайте свою собственную «облачную учетную запись» в любом из доступных облачных сервисов. Облако AWS/Google/Azure — не имеет значения, но оно вам понадобится. В основном они бесплатны или суперчипы для личного использования. Не могу не подчеркнуть важность их понимания для пользы вашей профессиональной и личной жизни. Оставайтесь с нами для специального сообщения об этом в ближайшие несколько дней. :)

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