Решён
Что нужно знать, чтобы стать программистом?

Мне 28, работаю менеджером по продажам. Хочу сменить профессию и уйти в программирование. Понимаю что это не быстро, готов учиться год-полтора.

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

Будет полезно услышать тех кто сам менял профессию, а не тех кто программирует с 12 лет.

UPDATE: Всем спасибо за развернутые ответы. Решил начать с Python + бэкенд (Django). Записался на CS50 как тут советовали, прошел первые 3 лекции, пока все понятно. Параллельно начал решать задачи на Codewars. Через полгода отпишусь как дела.
Решение
110
Участник • 3 ответа

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

Фундамент (без этого никуда):

  • Алгоритмы и структуры данных на базовом уровне. Массивы, хеш-таблицы, деревья, сортировки, поиск. Не олимпиадный уровень, а понимание зачем что нужно и когда применять.
  • Git. Ветки, мерджи, конфликты, пул-реквесты. Без гита тебя не возьмут никуда.
  • SQL. Джойны, группировки, подзапросы. Любой бэкендер работает с базами каждый день.
  • Базовое понимание сетей: HTTP, REST API, что такое запрос/ответ, статус-коды.
  • Командная строка Linux (хотя бы cd, ls, grep, chmod, ssh).

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

Что отличает тех кто устроился от тех кто нет:

  • Портфолио. 2-3 завершенных проекта на GitHub. Не калькулятор и TODO-лист, а что то с API, базой данных и деплоем. Клон какого нибудь сервиса (урл-шортенер, агрегатор новостей, телеграм-бот с БД).
  • Умение гуглить и читать документацию на английском. Серьезно, это 50% работы джуна.
  • Способность разобраться в чужом коде. На работе 80% времени ты читаешь, а не пишешь.

Чего НЕ надо:

  • Покупать курсы за 150-300 тыс. Все есть бесплатно: CS50 (Гарвард), freeCodeCamp, документация, YouTube.
  • Учить 5 языков параллельно.
  • Тратить полгода на теорию без практики. Пиши код с первого дня.

Реальные сроки:
При занятиях 2-3 часа в день можно выйти на уровень джуна за 8-12 месяцев. Первая работа скорее всего будет с зарплатой 50-80 тыс (регионы) или 80-120 тыс (Москва/удаленка). Первые полгода на работе будет тяжело, ощущение что ничего не знаешь. Это нормально.

Аватар Игорь Сидоров

Лучший ответ который я видел на эту тему. Особенно про то что 80% времени читаешь чужой код. Нигде об этом не пишут в рекламе курсов

66
Участник • 3 ответа

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

Правильный подход: "Пытаюсь сделать X, ожидаю Y, получаю Z. Пробовал A и B, не помогло. Вот лог ошибки. Подскажите в каком направлении копать?"

Этот навык важнее знания любого фреймворка.

85
Эксперт • 6 ответов

А я буду тем неудобным человеком который скажет неприятное.

Рынок джунов сейчас перенасыщен. На одну вакансию junior Python приходит 200-400 откликов. Курсы за последние 3 года выпустили десятки тысяч "программистов" с одинаковыми проектами-калькуляторами в портфолио. HR даже не открывает резюме без коммерческого опыта.

Это не значит что не надо пробовать. Но будь готов к тому что поиск первой работы займет 3-6 месяцев активных откликов и собесов. Многие сдаются на этом этапе.

Совет: используй свой текущий опыт. Ты менеджер по продажам? Ищи вакансии на стыке: автоматизация CRM, скрипты для обработки лидов, интеграции с API. Ниша уже, конкурентов меньше, и ты понимаешь предметную область.

Аватар Игорь Сидоров

Про использование текущего опыта в продажах это золото. Реально не думал в эту сторону. Спасибо

42
Участник • 3 ответа

Английский. Без него в программировании делать нечего. Документация на английском, Stack Overflow на английском, лучшие курсы на английском, коммиты и код-ревью на английском.

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

54
Участник • 2 ответа

Не слушай тех кто говорит "просто учи язык". Язык это 10% работы программиста. Остальные 90%:

  • Понимание задачи. Заказчик говорит одно, имеет в виду другое, а нужно третье.
  • Декомпозиция. Разбить большую задачу на маленькие.
  • Отладка. Найти почему не работает, когда вчера работало.
  • Работа с легаси. Дописать фичу в код который писали 5 разных людей за 3 года без документации.
  • Коммуникация с командой. Стендапы, ретро, код-ревью.

Синтаксис Python выучишь за месяц. А вот мыслить как инженер учишься годами. CS50 от Гарварда (бесплатный на ютубе) дает именно этот фундамент мышления. Начни с него.

37
Эксперт • 2 ответа

перешел из продаж в прогу в 30, сейчас 33, работаю фуллстеком на реакте и ноде

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

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

19
Эксперт • 1 ответ

Зарегистрируйся на LeetCode или Codewars и решай по 1-2 задачи в день. Каждый день. Без пропусков.

Через 3 месяца ты будешь решать easy за 10 минут и medium за 30-40. Этого достаточно для 90% собеседований на джуна.

Не трать время на чтение книг по алгоритмам на 500 страниц. Практика бьет теорию.

Аватар Тимофей

Литкод на собесах джунов в РФ почти никто не спрашивает, это больше для FAANG. Для российских компаний важнее показать проект и объяснить что и зачем ты в нем сделал

15
Участник • 2 ответа

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

мой путь: ютуб канал Хирьянова (МФТИ лекции по питону) -> автоматизация своих рабочих задач в экселе через openpyxl -> первый заказ на фрилансе за 500 руб -> постепенный рост

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

Написать ответ

Премодерация гостей

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

Будьте вежливы и соблюдайте правила платформы.