Вступление
Дисклеймер: статья отражает личное мнение автора и не претендует на абсолютную истину. Если у вас есть дополнения, замечания или альтернативный взгляд — буду рад обсудить это в комментариях.
По данным Stack Overflow Developer Survey 2024, более 65% разработчиков регулярно изучают новые технологии. Однако есть навыки, которые остаются актуальными независимо от языка программирования, стека или конкретной компании. Именно такие навыки я и хотел собрать в этой статье.
Речь пойдёт о базовом понимании и обучению Linux, Git, SQL и NoSQL, алгоритмов и структур данных, а также английского языка. Это те вещи, которые, на мой взгляд, дают хороший фундамент практически для любого направления в IT.
Дополнительно я постарался собрать как можно больше бесплатных или условно-бесплатных ресурсов, которыми либо пользовался сам, либо которые действительно часто рекомендуют разработчики и специалисты из индустрии.
Администрирование Linux

Изучение Linux — одна из самых полезных вещей для старта в IT. Большая часть серверов, облачных платформ, DevOps-инструментов и контейнерных систем работает именно на Linux.
Кроме того, Linux помогает лучше понимать устройство операционных систем и работу компьютера в целом. На мой взгляд, это особенно полезно тем, кто хочет заниматься backend-разработкой, DevOps, информационной безопасностью или системным администрированием.
Также Linux интересен разнообразием дистрибутивов под разные задачи.
Kali linux

Дистрибутив для специалистов по информационной безопасности. Используется для тестирования на проникновение, аудита безопасности, OSINT и смежных задач.
Tails

Система, ориентированная на приватность и анонимность. Работает через Tor и старается минимизировать следы активности пользователя.
Android

Android также основан на Linux. Производители устройств адаптируют систему под свои продукты и экосистемы.
Ресурсы для обучения
1. LabEx
labex.io

Платформа с практикой прямо в браузере на виртуальных Linux-машинах. Подходит для новичков, так как не требует установки и настройки системы.
Плюсы
-
практика прямо в браузере;
-
не нужно ничего устанавливать;
-
удобный старт для новичков;
-
есть русский перевод интерфейса.
Минусы
-
некоторые темы объясняются поверхностно;
-
бесплатные виртуальные машины ограничены по времени.
2. Linux Journey
linuxjourney.com

Linux Journey — один из самых понятных бесплатных ресурсов для последовательного изучения Linux. Он хорош тем, что не перегружает новичка и даёт ощущение структуры: от простых понятий к более сложным. На мой взгляд, это сильный стартовый ресурс, хотя практики там меньше, чем в тренажёрах
Плюсы
-
полностью бесплатно;
-
понятная структура;
-
не требует регистрации;
-
подходит новичкам.
Минусы
-
не хватает полноценной практики;
-
некоторые темы раскрыты поверхностно.
3. OverTheWire
overthewire.org

Платформа с практическими задачами, ориентированная на работу в терминале. Больше подходит для закрепления навыков, чем для обучения с нуля.
Плюсы
-
отличная практика терминала;
-
полностью бесплатно;
-
хорошо развивает понимание Linux.
Минусы
-
новичкам может быть сложно;
-
мало объяснений теории.
Git
Изучать Git стоит потому, что это стандарт работы с кодом и файлами в IT-индустрии. Он используется практически во всех компаниях и позволяет эффективно работать в команде, отслеживать изменения и избегать конфликтов при совместной разработке. С помощью Git можно легко откатиться к предыдущей версии проекта, что делает работу проще и безопаснее.
Во многих вакансиях Git указан как обязательное требование. Часто на самых базовых ролях в IT ожидается понимание хотя бы базовых команд (commit, push, pull, branch).
Git — это фундаментальный инструмент, который освоив один раз, вы будете использовать его в любой технологической сфере, где есть код или версии файлов.
Ресурсы для обучения
1. Learn Git Branching
learngitbranching.js.org

Интерактивный симулятор, который визуально объясняет работу Git-веток и команд. Отлично подходит для понимания merge, rebase и структуры репозиториев.
Плюсы
-
очень наглядное обучение;
-
идеально для новичков;
-
полностью бесплатно.
Минусы
-
почти нет теории;
-
больше подходит для понимания логики Git.
2. Git Book
https://git-scm.com/book/ru/v2

Официальная книга по Git от разработчиков. Подходит для глубокого изучения всех команд и внутреннего устройства Git.
Плюсы
-
официальная документация;
-
подробное объяснение;
-
бесплатно;
-
есть русский язык.
Минусы
-
может показаться слишком объёмной новичкам.
3. GitHub Skills (skills.github.com)

Официальные курсы от GitHub с практикой репозиториях. Обучение построено в формате выполнения задач в GitHub.
Плюсы
-
практика на реальных репозиториях;
-
современный формат обучения;
-
официальная платформа GitHub.
Минусы
-
новичкам местами может быть тяжело.
Базы данных
Практически любое современное приложение работает с данными, поэтому понимание баз данных — один из самых универсальных навыков в IT.
SQL используется в реляционных базах данных, где важны структура, связи и точность данных.
NoSQL чаще применяется там, где важны гибкость и масштабируемость: например, в real-time системах, социальных сетях и сервисах с большим количеством данных.
Даже базовое понимание SQL уже сильно помогает при работе с backend, аналитикой, DevOps и многими другими направлениями.
Ресурсы для обучения SQL
1. SQLBolt
sqlbolt.com

Интерактивный сайт для изучения SQL с нуля через практические задания прямо в браузере. Отлично подходит для новичков, так как сразу даёт практику без установки базы данных.
Плюсы
-
простой старт;
-
интерактивное обучение;
-
подходит новичкам.
Минусы
-
мало сложных задач;
-
ограниченная глубина материала.
2. W3Schools SQL (w3schools.com/sql)

Один из самых известных учебных сайтов с понятными объяснениями и примерами. Можно сразу тестировать запросы в встроенном редакторе.
Плюсы
-
простые объяснения;
-
много примеров;
-
встроенный редактор запросов.
Минусы
-
материал довольно поверхностный;
-
мало реальных задач.
3. Mode SQL Tutorial (mode.com/sql-tutorial)

Более продвинутый курс с упором на аналитику данных и реальные бизнес-задачи. Хорошо подходит тем, кто хочет работать с аналитикой или BI.
Плюсы
-
реальные кейсы;
-
хорошая структура;
Минусы
-
новичкам может быть сложновато;
-
часть тем требует понимания аналитики.
Ресурсы для обучения NoSQL
1. freeCodeCamp
freecodecamp.org

Бесплатные курсы и видео по NoSQL и MongoDB с практическими примерами.
Мне нравится freeCodeCamp за количество практики и большое сообщество.
Плюсы
-
полностью бесплатно;
-
много практики;
-
хорошие вводные курсы по MongoDB и NoSQL.
Минусы
-
основной упор всё же на веб-разработку;
-
теория иногда объясняется поверхностно.
2. MongoDB University
learn.mongodb.com

Официальная образовательная платформа MongoDB с бесплатными курсами и практическими лабораториями. Это один из лучших способов изучить NoSQL на реальных примерах.
На мой взгляд, один из лучших вариантов для изучения MongoDB с нуля.
Плюсы
-
официальные курсы;
-
много практики;
-
реальные примеры.
Минусы
-
часть курсов рассчитана уже на базовые знания.
3. W3Schools MongoDB (w3schools.com/mongodb)
w3schools.com/mongodb

Простой вводный курс по MongoDB и NoSQL. Хорошо подходит для первого знакомства с базами данных этого типа.
Плюсы
-
простые объяснения;
-
короткие уроки;
-
подходит новичкам.
Минусы
-
мало глубины;
-
почти нет сложной практики.
Алгоритмы и структуры данных
Алгоритмы и структуры данных — это фундамент программирования и мышления разработчика.
Их изучение помогает:
-
писать более эффективный код;
-
понимать производительность;
-
проходить технические собеседования;
-
лучше решать задачи.
Даже если человек не работает в Big Tech, понимание базовых алгоритмов всё равно делает разработку более осознанной.
Ресурсы для обучения
1. CS50
cs50.harvard.edu

Один из самых известных курсов по программированию от Гарварда, где алгоритмы и структуры данных объясняются с нуля. Подойдет для новичков и даёт сильную базу мышления.
Плюсы
-
сильная база;
-
качественная подача;
-
бесплатно.
Минусы
-
местами высокий темп;
-
новичкам может быть тяжело.
2. VisuAlgo
visualgo.net

Интерактивная платформа, которая показывает работу алгоритмов и структур данных с помощью графиков и изображений. Помогает понять, как именно всё работает «внутри».
Плюсы
-
отличная визуализация;
-
помогает понять логику;
-
удобно для повторения.
Минусы
-
мало полноценной теории;
-
скорее дополнение к обучению
3. LeetCode
leetcode.com

Одна из главных платформ для практики алгоритмов. Часто используется в крупных IT-компаниях при отборе кандидатов. Часто используется для подготовки к техническим интервью.
Плюсы
-
огромная база задач;
-
разные уровни сложности;
-
хорошая практика мышления.
Минусы
-
может демотивировать новичков;
-
часть задач далека от повседневной разработки.
О английском языке
Английский в IT — это такой же фундаментальный навык, как Git или SQL. Без него обучение становится медленнее и более ограниченным, а с ним вы получаете доступ практически ко всей мировой IT-экосистеме.
Я не могу порекомендовать какие-то конкретные ресурсы для изучения языка, кроме bbc.co.uk/learningenglish для изучения грамматики. Я начал изучать английский для того, чтобы читать, поэтому с открытым Google Переводчиком пытался переводить отдельные слова и фразы. Начинал я с обычных комиксов или статей на общие темы.
В разговорной речи я не силён и говорю с заметным акцентом, поэтому порекомендовать что-то конкретное не могу. Но если у вас не получается говорить, несмотря на знание слов и фраз, советую начать писать ответы на вопросы из интернета или интервью.
BBC Learning English
Плюсы
-
бесплатно;
-
качественные материалы;
-
хороший английский.
Минусы
-
мало специализированного IT-контента.
Доп. Раздел
Этот раздел для платформ, где бесплатно можно освоить навык, не перечисленный ранее.

1)Labex.io
Платформа с практикой прямо в браузере на виртуальных Linux-машинах. Лично мне LabEx понравился тем, что позволяет быстро начать что-то изучать без установки Linux, Docker и дополнительной настройки окружения.
Сейчас прохожу там материалы по DevOps, и платформа оставила положительное впечатление. Обучение больше ориентировано именно на практику: запускается готовая виртуальная машина, где можно сразу выполнять задания.
На мой взгляд, LabEx особенно хорошо подойдёт новичкам и людям, которые хотят «потрогать» новую технологию без долгой подготовки. При этом для очень глубокого изучения платформы может не хватить — некоторые темы объясняются достаточно поверхностно.
Плюсы:
-
практика прямо в браузере;
-
не нужно ничего устанавливать;
-
удобный старт для новичков;
-
есть русский перевод интерфейса;
-
работает даже на слабом ПК.
Минусы:
-
русский перевод местами выглядит машинным;
-
часть материалов объясняется поверхностно;
-
бесплатные виртуальные машины имеют ограничения по времени.
2) Metanit

Сайт для изучения языков программирования. Известен многим, больше походит на книгу и энциклопедию, чем на курс. Metanit — это сайт по программированию на русском, на котором используется техническая лексика, поэтому новичкам или энтузиастам следует быть готовыми к этому. Подходит для более серьезного и углубленного изучения языков программирования. На самом сайте мало заданий для практики, так что дополнительно надо будет найти где практиковаться
Плюсы:
-
Полностью бесплатен
-
Большее разнобразия материалов
-
Охватывает почти все основы, для каждого языка
-
Полностью на русском
Минусы:
-
Мало заданий для практики
-
Необходимость настройки и установки ПО
3)FreeCodeCamp

Это бесплатная образовательная платформа для изучения программирования и IT-навыков через практику. Обучение построено в формате интерактивных заданий и проектов, где пользователь сразу применяет полученные знания на практике.
Плюсы
-
Полностью бесплатная платформа
-
Большой выбор направлений (веб-разработка, Python, JavaScript, SQL и др.)
-
Много практики и реальных проектов
-
Хорошо структурированное обучение от базового уровня до продвинутого
-
Активное сообщество и поддержка
Минусы
-
Основной фокус на веб-разработке, меньше материалов по другим направлениям IT
-
Иногда недостаточно глубокое объяснение теории
-
Интерфейс и часть материалов только на английском языке
4)Roadmap

Это платформа с дорожными картами (roadmaps) для изучения различных IT-направлений. Она показывает, какие технологии и навыки нужно изучать шаг за шагом, например для frontend, backend, DevOps, DevOps, data science и других сфер.
Плюсы
-
Чёткие и структурированные дорожные карты по профессиям
-
Помогает понять, что учить и в каком порядке
-
Подходит для планирования обучения и карьерного пути
-
Постоянно обновляется под актуальные технологии
-
Есть бесплатный доступ ко всем roadmap
Минусы
-
Нет полноценного обучения — только план и структура
-
Нужно самостоятельно искать ресурсы для изучения каждого пункта
-
Требует самодисциплины и самостоятельной организации обучения
Вывод
Все перечисленные ресурсы и рекомендации являются личным мнением автора и основаны на личном опыте, наблюдениях и субъективной оценке платформ.
Если бы я начинал изучение IT заново, то в первую очередь уделил бы внимание Linux, Git и английскому языку, потому что именно они чаще всего встречаются независимо от конкретной специальности или технологии.
Также важно понимать, что идеального ресурса для обучения не существует. Одни платформы дают хорошую теорию, другие — практику, а третьи помогают понять, что именно изучать дальше. Поэтому лучший подход — комбинировать разные источники и регулярно применять знания на практике.
Буду рад любой обратной связи, советам и дополнениям — возможно, вы знаете ресурсы или подходы, которые окажутся полезнее перечисленных в статье.
ссылка на оригинал статьи https://habr.com/ru/articles/1045808/