В программировании существует десятки разных направлений, языков ещё больше, около 9000. Эта статья будет интересна для тех, кто только-только начинает свой путь разработчика или же для тех, кому просто интересно. К языку будут прилагаться библиотеки и фреймворки, которые нужны для обсуждаемых направлений (например, django для python в бэкэнде). В статье будут не только языки программирования, но суть от этого не меняется.
Направления и языки
Web-разработка
В web-разработке есть 2 основных поднаправления: Backend и frontend. Frontend это клиентская часть сайта, её видит пользователь и она отправляется клиенту с сервера в браузер. Backend это логическая часть сайта, она работает на сервере и делает всё, что пользователь не видит, например, обрабатывает платежи и т.д.
Frontend
Frontend это клиентская часть веба. Она отвечает за визуал сайта. Всё то, что видит и слышит пользователь на сайте — дело рук фронтендера. Браузер делает http(s) запрос на сервер, он получает HTML-страницу (и CSS с Javascript) и отрисовывает страницу. Ответ сервера может содержать: HTML-документ; данные, встроенные в HTML; ссылки на статические файлы (CSS, JS, изображения); JSON/XML/другие данные (если это API запрос).
И так, языки для frontend разработки:
-
HTML и CSS: Это не опционально. HTML обязателен, а без CSS сайт может работать, но вряд ли он будет красивым. Их нельзя назвать языком программирования, но пусть будут. Фреймворки и библиотеки для CSS:
-
Tailwind CSS: Utility-first CSS фреймворк, то есть разработчик использует набор предопределённых классов, каждый из которых имеет некоторое количество стилей. Очень гибкий и мощный.
-
Bootstrap: Самый популярный. Предоставляет адаптивную сетку, компоненты (кнопки, навигация, карточки и т.д.), JS-плагины.
-
Sass / SCSS: Препроцессор CSS, который расширяет возможности стандартного CSS, добавляя функциональность, такую как переменные, вложенность, миксины и многое другое.
-
-
JavaScript (JS): Двигатель для визуала сайта. Он добавляет интерактивность и динамическое поведение на веб-страницы. Фреймворки и библиотеки для JS:
-
React: Библиотека от Meta. Позволяет создавать компоненты. Упрощает разработку.
-
Vue.js / Vue 3: Модульная структура. Относительно простой фреймворк.
-
Angular: Полноценный MVC-фреймворк от Google. Работает на TypeScript. Хорошо подходит для крупных корпоративных приложений. Включает в себя маршрутизацию, формы, HTTP-клиент и т.д.
-
Svelte: Очень быстрый и лёгкий. Отлично подходит для микросервисов.
-
TypeScript: Надмножество Javascript. Статическая типизация.
-
Backend
Backend это серверная часть веба. Обработка платежей, регистрация пользователей и всё то, что не видит клиент, делается тут.
-
Node.js: Это среда выполнения JavaScripts, которая позволяет использовать JavaScript для разработки серверной части. Фреймворки и библиотеки для Node.js:
-
Expess.js: Самый популярный и гибкий фреймворк, часто используемый в качестве основы для многих Node.js проектов. Он обеспечивает минимальный базовый набор функций для создания веб-приложений и API.
-
NestJS: Фреймворк, ориентированный на создание масштабируемых серверных приложений. Он использует модульную архитектуру, поддерживает TypeScript и предоставляет встроенные решения для валидации, маршрутизации, аутентификации и авторизации.
-
Fastify: Фреймворк, ориентированный на максимальную производительность и низкое потребление ресурсов, что делает его подходящим для высоконагруженных приложений.
-
-
Python: Этот язык многофункционален и его можно использовать в бэкэнде. Фреймворки и библиотеки для Python:
-
Django: Полноценный фреймворк, предназначенный для создания сложных веб-приложений, включает в себя ORM, систему шаблонов, админ-панель и многое другое.
-
Flask: Микрофреймворк, гибкий и легкий, подходит для небольших и средних проектов, а также для создания API.
-
FastAPI: Современный, быстрый фреймворк, ориентированный на создание API.
-
-
Java: Java доминирует в банках, финансовых платформах и крупных онлайн-сервисах (например, LinkedIn, Netflix, Amazon частично используют Java). В большинстве случаев используется Spring. Фреймворки и библиотеки для Java:
-
Spring: Один из самых популярных фреймворков, предоставляющий множество инструментов для разработки веб-приложений, включая управление зависимостями, аспектно-ориентированное программирование и доступ к данным.
-
-
C#: C# популярен в компаниях, работающих на Windows-инфраструктуре, особенно в Европе и США: от страховых компаний до госпорталов. Фреймворки и библиотеки для C#:
-
ASP.NET: Основной фреймворк C#. ASP.NET Core предоставляет широкий набор инструментов для создания веб-сайтов, API и других веб-сервисов.
-
Entity Framework Core: ORM (Object-Relational Mapping) фреймворк, который упрощает работу с базами данных. Позволяет работать с базами данных, используя объекты C# вместо SQL запросов.
-
Blazor: Фреймворк для создания интерактивных веб-интерфейсов, работающий как на стороне клиента (в браузере), так и на стороне сервера.
-
-
Go: Высокая производительность и простота. Фреймворки и библиотеки для Go:
-
Gin: Известен своей высокой производительностью и легкостью использования. Идеален для создания API и веб-приложений, требующих быстрой обработки запросов.
-
Echo: Легкий и быстрый фреймворк, ориентированный на производительность и простоту использования. Отлично подходит для создания API и веб-сервисов.
-
-
PHP: Классика веба. Фреймворки и библиотеки для PHP:
-
Laravel: Известен своей элегантностью, мощной системой шаблонов Blade, и богатым набором инструментов для разработки. Laravel часто выбирают для создания масштабных и сложных веб-приложений.
-
-
Ruby: Лаконичный и удобный. Фреймворки и библиотеки для Ruby:
-
Ruby on Rails (RoR): Самый популярный фреймворк, известный своей структурой MVC, удобством разработки и возможностями для создания масштабируемых веб-приложений. Он предоставляет готовые решения для работы с базами данных, маршрутизацией, представлением и многим другим, что значительно ускоряет процесс разработки.
-
-
Базы данных: Будучи backend разработчиком вам придётся работать с базами данных.
-
PostgreSQL: Гибкая система управления реляционными базами данных (СУБД). Удобно хранить геопространственные данные.
-
MySQL: Одна из самых популярных. Открытый исходный код. MySQL имеет меньше поддержки стандартов SQL, чем PostgreSQL.
-
SQLite: Лёгкая, встраиваемая система управления базами данных. SQLite не требует отдельного сервера, база данных хранится в одном файле на диске. Не предназначен для многопользовательского доступа с высокой конкуренцией. Для локального хранения.
-
MongoDB: Нереляционная (NoSQL) документо-ориентированная система управления базами данных, которая предназначена для хранения, обработки и масштабирования больших объёмов неструктурированных или полуструктурированных данных. MongoDB хранит данные в формате BSON (Binary JSON).
-
Redis (REmote DIctionary Server): Redis хранит данные в оперативной памяти, что обеспечивает очень быструю обработку запросов. Данные хранятся в парах «ключ-значение», что упрощает доступ к информации.
-
-
Docker / CI/CD / Nginx/Apache: Полезные вещи для бэкенда.
Системное программирование
Системное программирование — Разработка программного обеспечения, которое взаимодействует напрямую с железом. Это низкоуровневое программирование, где важна производительность и эффективность управления ресурсами. Системные программисты разрабатывают ОС, драйверы, компиляторы, виртуальные машины и антивирусы.
-
C: Фундамент всех ОС и системного ПО. Работает напрямую с памятью. Ядро Unix/Linux написано на C. Даёт полный контроль над памятью, но требует ручного управления памятью. Почти нет абстракции.
-
C++: Мощнее C, добавляет ООП, используется в движках и ядрах.
-
Rust: Безопасная альтернатива C / C++ без утечек памяти.
-
Assembly: Пишется для конкретного процессора (x86, ARM, RISC-V). Почти напрямую управляет CPU, регистрами, стеком.
Мобильная разработка
Создание приложений для смартфонов, планшетов и носимых устройств. Тут есть 3 поднаправления: нативные мобильные приложения; гибридные (на web-технологиях); кроссплатформенные.
Нативная разработка
Это создание мобильных приложений под конкретную операционную систему.
-
Kotlin: Разработка под android. Ститачески типизированный язык программирования, разработанный компанией JetBrains. Безопасен от NullPointerException. Выразительный синтаксис. Возможность интеграции с кодом на java.
-
Android studio: IDE специально для создания приложений под android.
-
Jetpack Compose: Упрощает и ускоряет процесс разработки интерфейсов за счёт меньшего объёма кода, мощных инструментов и интуитивно понятного кода. Использует kotlin для создания UI.
-
XML (eXtensible Markup Language): Язык разметки для хранения и передачи данных.
-
-
Swift: Разработка под IOS. Современный и безопасный.
-
Xcode: IDE для разработки под IOS.
-
UIKit: Предоставляет разработчикам набор элементов управления, такие как кнопки, метки, текстовые поля, а также возможности для обработки касаний и жестов, обеспечивая интуитивно понятное взаимодействие с пользователем.
-
SwiftUI: Декларативный UI-фреймворк от Apple.
-
Кроссплатформенная разработка
Один код работает и на android, и на IOS.
-
Flutter: Кроссплатформенный SDK от Google для создания красивых, нативных приложений для мобильных устройств. Быстрый рендеринг. Кастомный UI.
-
Dart: Основной язык для flutter. Простой синтаксис. Высокая производительность. Богатый набор библиотек.
-
-
React Native: Использует один и тот же код JavaScript для iOS и android. Основное преимущество React Native это возможность создавать приложения для iOS и Android, используя общий код на JavaScript.
-
Kotlin Multiplatform Mobile (KMM): Код пишется на kotlin и компилируется на обе ОС. UI пишется отдельно, но бизнес логика общая.
Гибридные и web-приложения
Такие приложения сочетают в себе элементы нативных и веб-приложений. Работают как web-приложения внутри обёртки. По своей сути, это веб-приложения (обычно написанные с использованием HTML, CSS и JavaScript), «упакованные» в специальную нативную оболочку (часто называемую WebView).
-
Ionic: Фреймворк для разработки гибридных кроссплатформенных мобильных приложений.
-
WebView Multiplatform Mobile: Кроссплатформенная библиотека для встраивания веб-контента в приложения для Android и iOS.
-
Xamarin WebView: Фреймворк для разработки кросс-платформенных мобильных приложений, предоставляет доступ к WebView для отображения веб-содержимого.
-
Tauri: Фреймворк для создания десктопных приложений с использованием веб-технологий. Во второй версии можно делать мобильные приложения. Написан на сложном rust.
Data Science / Аналитика данных
Data science — Наука о данных. Использует математику и статистику для обработки данных, извлечения полезной информации, выявления закономерностей и предсказания будущих событий. Они используют для этого статистические методы и машинное обучение.
-
Python: Де-факто стандарт в data science. Прост в изучении. Огромное сообщество. Богатейшая экосистема библиотек. Библиотеки для python, которые нужно знать аналитику данных:
-
NumPy: Для работы с многомерными массивами и матрицами. Линейная алгебра.
-
Pandas: Предоставляет мощные структуры данных.
-
Polars: Современная, очень быстрая альтернатива pandas. Оптимизированная для работы с большими наборами данных.
-
Matplotlib / Seaborn: Визуализация данных.
-
Scikit-learnt + keras: Машинное обучение. Прогноз данных.
-
Jupyter: Интерактивный блокнот для работы с кодом.
-
-
R: Язык специально для статистики. Имеет невероятно богатый набор пакетов для статистического анализа, визуализации.
-
SQL: Необходим любому специалисту по данным. Для хранения данных.
-
Scala: JVM-язык, сочетающий объектно-ориентированную и функциональную парадигмы. Основной язык для Apache Spark.
-
Julia: Создан специально для высокопроизводительных научных вычислений. Синтаксис похож на Python / MATLAB.
Машинное обучение и ML-инженеринг
ML-инженеринг (MLOps) — Инженерная дисциплина, которая фокусируется на машинном обучении. В отличие от Data Science, где основное внимание уделяется исследованию данных и построению моделей, ML-инженеринг охватывает весь жизненный цикл AI-продукта. Построение моделей, нейросетей, прогнозирование. Это инженерная часть Data Science, фокусирующаяся на промышленной эксплуатации. ML-инженеру нужно также знать математику на высоком уровне.
-
Python: Часто этот язык является лишь высокоуровневым интерфейсом, а фреймворки написаны на C++. Если бы модели обучались только на python, это было бы слишком медленно. Фреймворки и библиотеки python:
-
TensorFlow: Открытая библиотека машинного обучения. Предназначена для построения и обучения моделей машинного и глубокого обучения.
-
MLflow: Платформа с открытым исходным кодом для управления жизненным циклом машинного обучения.
-
Kubeflow: Набор инструментов для развертывания ML-воркфлоу на Kubernetes (использует Python для определения пайплайнов).
-
Научные и инженерные расчёты
Математика, физика, симуляции.
-
Python: Отлично подходит для научных вычислений. Простота изучения, огромное сообщество, богатейшая экосистема научных библиотек, отличная интеграция с другими языками и инструментами, поддержка всех этапов работы (прототипирование, анализ, визуализация, развертывание). Фреймворки и библиотеки python:
-
NumPy
-
SciPy: Построен на NumPy. Реализация алгоритмов: оптимизация, интегрирование, интерполяция, специальные функции, обработка сигналов/изображений, статистика, дифференциальные уравнения.
-
SumPy: Компьютерная алгебра.
-
Matplotlib: Гибкая и мощная библиотека для создания статических, анимированных и интерактивных 2D/3D графиков.
-
Mayavi, PyVista: Визуализация 3D данных и научных расчетов.
-
-
MATLAB: Специально для численных вычислений. Широко используется в инженерии (особенно в вузах и промышленности). Платный. Интуитивный ситнаксис.
-
Fortran: Непревзойденная производительность для задач с плотными численными расчетами (физика, механика жидкостей, метеорология, квантовая химия, вычислительная астрофизика). Отличная поддержка многомерных массивов и операций над ними (включая срезы).
-
Julia: Быстро набирает популярность в научных вычислениях.
-
C / C++: Абсолютный контроль над аппаратурой и памятью.
GameDev
Создание игр от мобильных до AAA. 2D и 3D. VR/AR.
-
C++ / Blueprints
-
Unreal Engine: Движок для больших и AAA игр. Красивая графика. Подходит для крупных игр с проработанными механиками и игр с упором на графику. Для мощного железа. На нём даже фильмы снимают. Чтобы делать игры на нём, нужно быть профессионалом.
-
-
C#
-
Unity: Подходит для большинства игр. Часто используется дли инди проектов. Большое сообщество и много ассетов. Много полезных функций. Для VR/AR хорошо подходит.
-
-
Godot: Поддерживает некоторые языки программирования, такие как C# и C++, есть собственный язык GDScripts. Активно развивается. Открытый, лёгкий, отлично подходит для 2D игр. Хороший выбор для новичков.
-
Phaser (JS): HTML5-движок для 2D игр в браузере. Прост и быстр в освоении. Идеален для веб-игр.
-
Lua: Скрипты в играх (Roblox, WoW и тд). Очень простой язык. Тоже вариант.
DevOps
DevOps (Development + Operation) — Подход к разработке ПО, объеденяющий разработчиков и IT-специалистов по эксплуатации с целью: ускорить релизы; повысить стабильность и безопасность; автоматизировать всё, что можно. В основных задачах у девопсера это CI/CD (непрерывная интеграция и доставка), контейнеризация, оркестрация контейнеров, автоматизации инфраструктуры, мониторинг и логирование.
-
Linux: Каждому девопсеру нужно знать linux. Linux это основная платформа для управления серверами, развёртывания приложений и автоматизации процессов в DevOps.
-
Bash: Для автоматизации. Скрипты. CI/CD. Bash-скрипты позволяют автоматизировать повторяющиеся задачи, экономя время и ресурсы.
-
Python: Python подходит для разных задач, включая написание сценариев, определение инфраструктуры в виде кода, создание конвейеров CI и CD, упрощение мониторинга и разработку пользовательских решений. Python работает с API многих облачных сервисов, таких как AWS, Google Cloud и Azure, что делает его незаменимым для облачной инфраструктуры.
-
Go: Создание собственных CLI-инструментов. Go позволяет разрабатывать и поддерживать собственные инструменты для автоматизации CI/CD, мониторинга, оркестрации. Многие популярные DevOps-инструменты написаны на Go, например Kubernetes, Docker, Terraform, Prometheus. Умение читать и писать на Go помогает лучше понимать и изменять их код.
-
YAML: Конфигурации Kubernetes, Ansible, Github Actions.
-
Groovy: Скрипты для Jenkins.
-
Docker: Контейнеризация.
-
Kubernetes: Оркестрация контейнеров. Автоматическое масштабирование. Балансировка нагрузки и управление состоянием контейнеров.
-
Jenkins: Инструмент для автоматизации процессов непрерывной интеграции (CI) и непрерывной доставки (CD) в DevOps. Он помогает разработчикам быстрее и эффективнее интегрировать изменения в код, находить и исправлять ошибки на ранних этапах, а также автоматизировать рутинные задачи.
-
Prometheus и Grafana: Мониторинг облачных приложений и сервисов.
Примерная таблица для цикла DevOps:
|
Планирование |
Jira, Trello, Git |
|
Разработка |
Git, GitHub, GitLab, Bitbucket |
|
CI (Сборка и тестирование) |
GitHub Actions, GitLab, Jenkins |
|
CD (Доставка и деплой) |
ArgoCD, Spinnaker, Helm |
|
Мониторинг и логирование |
Grafana, Loki, Prometheus, ELK |
Cloude
Cloud Developer — Специалист, чья работа сосредоточена на облачных платформах и сервисах. В отличие от традиционных разработчиков, он оперирует ресурсами (вычислительными мощностями, хранилищами, сетями), предоставляемыми по запросу через интернет, а не управляет локальными серверами напрямую. Разработчик облачных решений отвечает за проектирование, разработку, развертывание, масштабирование и поддержку приложений, сервисов и инфраструктуры, непосредственно работающих в облачной среде.
-
Amazon Web Services (AWS): Самая популярная облачная платформа, предоставляющая широкий набор сервисов для вычислений, хранения данных, аналитики, машинного обучения и многого другого.
-
Microsoft Azure: Облачная платформа от Microsoft. Популярная в корпоративном сегменте.
-
Google Cloude Platform (GCP): Облачная платформа от Google.
-
IBM Cloude: Платформа с акцентом на корпоративные решения, блокчейн и AI.
-
Oracle Cloude: Облачные решения от Oracle. Для крупного бизнеса и с фокусом на базы данных.
Для взаимодействия с облачными API, автоматизации задач инфраструктуры (IaC), написания скриптов развертывания и непосредственно разработки облачных приложений и сервисов разработчики облака активно используют языки программирования, такие как:
-
Python: Универсальность, богатые SDK для облаков.
-
Go (Golang): Высокая производительность, популярен для инструментов Cloud Native.
-
JavaScript / TypeScript: Фронтенд и бэкенд, серверные среды типа Node.js.
-
Java: Традиционно силен в корпоративной среде, особенно с Azure/IBM.
-
C#: Ключевой язык для экосистемы Microsoft Azure.
-
Ruby: Менее распространен, но используется, например, в DevOps инструментах.
Кибербезопасность
Кибербезопасность (Cybersecurity) — Комплексная практика защиты информационных систем, сетей, устройств, программ и данных от цифровых атак, несанкционированного доступа, повреждения или кражи. В современном мире, где бизнес, государственное управление и личная жизнь неразрывно связаны с цифровой средой, кибербезопасность становится критической необходимостью, а не просто опцией.
Основные направления кибербезопасности:
-
Сетевая безопасность: Защита инфраструктуры от атак (DDoS, MITM, эксплойты).
-
Информационная безопасность: Шифрование данных, контроль доступа, защита от утечек.
-
AppSec (безопасность приложений): Анализ кода, защита веб- и мобильных приложений.
-
Криптография: Разработка и взлом алгоритмов шифрования.
-
SOC & Мониторинг: Обнаружение и реагирование на инциденты в реальном времени.
-
Пентестинг и Red Teaming: Имитация атак для поиска уязвимостей.
Операционные системы для тестирования:
-
Kali Linux: Основной дистрибутив для пентеста.
-
Parrot OS: Альтернатива Kali с акцентом на анонимность.
-
BlackArch: Расширенный набор инструментов для хакеров.
Инструменты анализа и атаки:
-
Сканирование сетей: Nmap, Wireshark, Masscan
-
Взлом паролей: Hashcat, John the Ripper, Hydra
-
Эксплуатация уязвимостей: Metasploit, Burp Suite, SQLmap
-
Социальная инженерия: SET (Social-Engineer Toolkit), Maltego
Языки программирования:
-
Python: Автоматизация, скрипты для анализа угроз.
-
Bash/PowerShell: Администрирование, анализ логов.
-
C/C++: Разработка эксплойтов, анализ вредоносного ПО.
-
Go: Сетевые инструменты, быстрое создание утилит.
IoT и встаиваемые системы
Встраиваемые системы — Специализированные компьютеры, встроенные прямо в устройство, которым они управляют. Их задача это выполнять конкретные функции (управление двигателем, сбор данных с датчика и т.д.).
IoT (Internet of Things) — Когда такие встраиваемые системы получают возможность связываться друг с другом и с интернетом.
С чем должен уметь работать инженер IoT:
-
Микроконтроллеры (MCU)
-
Микропроцессоры (MPU)
-
Датчики: Температура, влажность, движение (акселерометр/гироскоп), свет, давление, газ, GPS и т.д.
-
Интерфейсы связи
Языки программирования:
-
C: Прямой доступ к железу, минимальные накладки.
-
C++: Набирает силу для сложных задач с ООП, где ресурсы позволяют.
-
Python: Для прототипирования, инструментов, мощных MPU (Raspberry Pi) и обработки данных на сервере / шлюзе.
-
Rust: Новый, но перспективный. Безопасность памяти + производительность как у C/C++. Начинают использовать в ядре Linux.
-
Assembler: Для самых критичных кусков кода или когда ресурсов очень мало.
ОС:
-
Без ОС (Bare Metal): Код работает напрямую на процессоре. Максимум контроля, минимум накладок.
-
RTOS (Real-Time OS): FreeRTOS (самый популярный), Zephyr (набирает ход, современный), ThreadX, VxWorks (для высоконадежных систем). Гарантируют времена реакции.
-
Linux: Для мощных MPU (Raspberry Pi, BeagleBone). Yocto Project/Buildroot — для сборки кастомных образов.
Блокчейн и Web3
Блокчейн — По сути, это распределенная база данных (цифровой реестр), где записи («блоки») связаны в цепочку криптографически. Данные хранятся не на одном сервере у корпорации, а у тысяч участников сети
Web3 — Идея следующего поколения интернета поверх блокчейна. Суть такова, пользователь владеет своими данными, цифровыми активами (NFT, токены) и участвует в управлении сервисами. Вместо обычных платформ децентрализованные приложения (dApps).
ЯП:
-
Solidity: АБСОЛЮТНЫЙ мастхев для Ethereum и EVM-сетей (Polygon, BSC и т.д.). Похож на JavaScript, но со спецификой.
-
Rust: Доминирует в Solana, Near, Polkadot (Substrate), всё чаще пишут смарт-контракты и на нем. Сложнее, но мощнее.
-
Vyper (для Ethereum): Альтернатива Solidity, фокус на безопасность и читаемость (синтаксис ближе к Python).
-
Go: Для разработки нод (клиентов блокчейна), утилит.
Desktop
Десктоп-разработка — Создание приложений, которые работают напрямую на ОС пользователя. В отличие от веба или мобилок, тут есть прямой доступ к железу, файловой системе и нативным API. Мощь, контроль, но и ответственность за стабильность.
Стек:
-
Нативные технологии:
-
Windows (C# / .NET):
-
Языки: C#, C++/CLI
-
Фреймворки: WPF (XAML + C#), Wndows Forms
-
-
macOS:
-
Языки: Swift, Objective-C
-
Фреймворки: SwiftUI (новинка), AppKit (старая школа)
-
-
Linux:
-
Языки: C++, C, Python, Rust
-
Фреймворки: GTK (GNOME), Qt (KDE, кроссплатформенно), wxWidgets
-
-
-
. Кроссплатформенные фреймворки:
-
Electron: JavaScript + Chromium + Node.js. Плюсы: Пишешь как веб-приложение (HTML/CSS/JS). Минусы: Жрет память как не в себя.
-
Qt (C++): Мощь, скорость, зрелость. Используют в AutoCAD, Tesla. Поддержка 3D, сетей, БД.
-
Avalonia (.NET): Кроссплатформенный аналог WPF. Пишешь на C# — работает на Windows/macOS/Linux.
-
Flutter (Dart): Добрался до десктопа. Пока сыроват, но трендовый.
-
Tauri (Rust): Альтернатива Electron. Бекенд на Rust, фронт — любая веб-технология. Размер приложения ~10 МБ вместо 150 МБ у Electron.
-
Разработка корпоративных решений (Enterprise)
Erprise-разработка — Создание софта для крупного бизнеса: банки, страховые, логистика, ритейл, госсектор. Системы обрабатывают миллионы транзакций, хранят терабайты данных и должны работать 24/7.
ЯП:
-
Java (Spring Boot, Jakarta EE, Quarkus): Король корпов.
-
C# (.NET Core ASP.NET): Популярен в банках и госсекторе.
-
Python (Django, FastAPI): Для аналитики, скриптов.
-
ESB: Apache Camel, MuleSoft, IBM Integration Bus.
-
API Gateway: Kong, Apigee, AWS API Gateway.
-
Очереди: Apache Kafka (лидер), RabbitMQ, IBM MQ, Azure Service Bus.
-
Стандарты: REST/JSON (модерн), SOAP/XML (легаси), gRPC (микросервисы).
-
SQL: Oracle DB, Microsoft SQL Server, PostgreSQL, IBM Db2. Транзакции, ACID, отчетность.
-
NoSQL: MongoDB (документы), Cassandra (высокая нагрузка), Redis (кэш/очереди).
-
Аналитика: Snowflake, Amazon Redshift, Apache Druid.
Финтех
FinTech (Financial Technology) — Область, в которой пишут технологии для финансов. Например, финтехи пишут платёжные системы, необанки, аналитику и бюджетирование, кридитные платформы, алготрейдинг, B2B-решения. Финтех разработчик занимается разработкой: бизопасных API и клиентских приложений; обработкой денежных транзакций, комиссий, волют; реализацией сложных бизнес-правил.
Стек:
-
Java: Часто используется.
-
Kotlin: Современная альтернатива Java.
-
Go: Высокая производительность, минимализм.
-
Python: Быстрая разработка, аналитика. Скоринг.
-
C#: Банковский и страховой сектор.
-
Rust: Безопасность и производительность.
Если понравилась статья — рекомендую подписаться на телеграм‑канал NetIntel. Там вы сможете найти множество полезных материалов по IT и разработке!
ссылка на оригинал статьи https://habr.com/ru/articles/925956/
Добавить комментарий