Найти тему

Что нужно чтобы стать разработчиком и смогу ли я сделать это с нуля?

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

Но, как показывает практика, не все доходят до конца.

Давайте разберёмся, кто же такой разработчик, что следует знать/изучить и какими качествами нужно обзавестись, чтобы начать свой путь:

  1. Математический бэкграунд: современного школьного курса математики для начала вполне достаточно (не касается machine learning и data science).
  2. Информатика: системы счисления, алгебра логики, умение создавать и использовать простые алгоритмы, знание базовых алгоритмов, в общем, достаточно современного школьного курса.
  3. Собственно сам язык программирования, про популярность которых и какие профессии с ними связаны мы расскажем в одном из следующих постов.
  4. Образ мышления: Разработчику недостаточно просто знать язык программирования, он должен уметь создавать алгоритмы, рассуждать таким образом, чтобы его мысли могли быть изложены понятным для машины средством выражения - языками программирования. В этом изучение естественного языка и языков программирования схожи. Вы можете отлично знать грамматику, выучить пару-тройку словарей, но когда к Вам подойдёт иностранец - просто не суметь ничего спросить или ответить. А если Вы не умеете по-человечески думать, то и вовсе не сумеете формировать связную речь. Также и с программированием. Можно сказать , что надо научиться рассуждать «как машина». Подготовить свой мозг помогут задачи на построение алгоритмов, изучение существующих и другие специальные задачи.
  5. Способность к самообучению: технологии стремительно развиваются, поэтому чтобы по-настоящему достичь успеха в выбранной профессии, Вам предстоит идти в ногу со временем, а значит усваивать большое количество информации в сжатые сроки. Поначалу «старшие» коллеги сами будут определять стек технологий и архитектуру, но вы тоже не захотите всегда оставаться «младшим».
  6. Английский язык: большая часть документации написана именно на нем, причём в первую очередь. Поэтому, пока остальные ждут господина переводчика, Вы сможете узнавать о нововведениях из первых рук, а значит развиваться быстрее. Также это даёт возможность устроиться в крупную международную компанию.

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

Какими качествами и умениями должен обладать начинающий разработчик с Вашей точки зрения?