Ответ на пост «Войти в айти после 30»
Добавлю от себя кой-чего, как человека, находящемся на среднем звене "пищевой цепочки", но с этим имеющего богатый опыт работы с новичками, как совсем юными, так и уже в виде состоявшихся на прошлых местах дядек (даже бывшие военные были).
Самое главное, но не самое первое, что должен сделать для себя падаван, - это изучить академисческую теорию. Да, сука, без нее ника и никуда, если вы, конечно же, хотите что-то там зарабатывать:
Если вы идете менеджеры, то тут общая литература - менеджмент проектов (но и разработку бы хорошо изучить хотя бы на уровне "чайника", дабы не возникало вопросов в стиле "Хули 4 дня на изменгение цвета кнопки?!".
Если идете в аналитики, то тут хорошо автор предыдущего поста описал, но аналитика бывает двух вариантов:
Аналитика данных - тут, да, БД учить, OLAP/OLTP, СУБД и тд. Хорошо бы еще теорию данных в целом подучить.
Аналитика проектов - это следующий этап развития PO/PM:
Бизнес-аналитка - вы думаете, как сделать систему лучше.
Системный анализ - вы думаете, как заставить системы лучше взаимодействовать.
Если идете в QA, то:
Есть ручное тестирование - с этого нужно начинать, т.к. это позволит въехать в область впринципе: кейзы, сценарии, уровни тестирования и тд.
Автотестирование - это уже разработка, ибо нужно писать код для автотестов разного уровня: функциональные, интеграционные, приемочные, и тд.
Есть еще целая сфера DevOps:
DBA - это специализация на конкретных БД, причем, не только на ее администрировании, но и на использовании, поэтому нужно не только знать саму СУБД, но и теории данных, SQL/noSQL нотации конкретной СУБД, механизмы отказоустойчивости и масштабирования.
Просто DevOps, которые раньше назывались "админами": тут нужно знать теории сетей и операционных систем, знать современные технологии базирования проектов: контейнеры, оркестраторы, CI/CD системы (для них, кстати, тоже нужен хотя бы один язык, часто: Питон или Ruby).
Т.н. "сетевики": персонал, специализирующийся на работе с сетями передачи данных. Тут, имхо, вряд ли можно попасть "после 30-ти".
Разработка. Тут нужно начинать с изучения компилируемых и интерпретируемых языков, их разницы. Почему-то сейчас считается, что "войти в Питон" или "войти во фронт" за полгода реально. Реально, на позицию стажера. А где вы видели позиции стажера? Я видел один раз в жизни. Поэтому нужно выбирать специализацию в ней развиваться, затарившись тонной литературы, начиная с теории данных, заканчивая, например, в случае C/C++ теорией компиляторов.
Бекенд. Это "прослойка" между системами хранения данных и фронтами (мобильным приложение, сайтом или другим бекендом). Тут - оболие всего и вся: РНР, Питон, Go, Rust, Ruby и тд. В обоих видах языков свои плюсы и минусы. Суть бека состоит в том, что нужно знать часто минимум два языка. Например: PHP + Go, Python + Rust и тд. Т.е. связка интерпретируемого и компилируемого языка.
Прикладная разработка. Тут выбор меньше: C/C++, .Net, может, что-то еще. Хотя современные приложения могут быть написаны и на Питоне.
ERP-разработка: 1С, SAP, Axapta и тд. Обычно в такие сферы приходят случайно. Никто в здравом уме "после 30-ти" не сунется в ту же SAP или 1С.
Game Dev. Тут все понятно: берете навыки, полученные ранее, в C++, например, и изучаете какой-нибудь Unreal Engine 4/5. Сложно, долго, но можно приятно устроиться. К сожалению, в Game Dev не зайти просто на знании языка, ибо нужны специализированные знания.
Embeded-разработка. Тут выбор еще меньше: в основном, только C/C++. Очень узкая, но очень хорошо оплачиваемая сфера. Более не скажу ничего.
AI-системы. Тут просто. Есть Питон с Keras/PyTorch, построенные на TensorFlow, и есть всякие интерпретации в других языках для использования. Тут - кроме разработки нужна еще, как минимум, линейная алгебра. НО! Это очень перспективная сфера, куда можно и "после 40" зайти.
SRE. Отдельная каста супер высокооплачиваемых инженеров. Попасть "после 30" и тд - невозможно, ибо нужен огромный опыт и знания во всех областях сразу.
Так вот, самое главное - нужно учить теорию. Параллельно ли, изначально ли - неважно. Без теории 3/4 перечисленного выше - просто закрыто будет. Остальная четверть ограничится уровнем стажера. Теория написания кода, теория данных, теория информации, теория сетей, комплияторов, тестирования, анализа данных, теория баз данных - огромная сфера знаний.
Готовы ли вы тратить тонную времени? Вам решать. Причем, нужно сразу понимать, что, даже изучите вы, например, пытясь "войти в разработку" книги "банды четырех", не гарантирует вам ни-че-го просто потому, что тем же "'эйчарам" нужны конкретные навыки использования конкретных инструментов, а все остальное - это остальное (это отдельная огромная тема противостояния "эйчаров" и специалистов).
Идеальный способ "вхождения в айти" - это найти ментора. Не курсы, не школы и тд, а конкретного человека, который будет помогать и направлять вас на этом ебучем дремучем пути к льготной ипотеке.
P.S. На моем личном опыте есть печальная статистика: чем страше человек есть, пытаясь "войти", тем хуже из него спец при прочих равных. К сожалению, это так.