← Назад к вопросам

С какими технологиями хочешь работать

1.0 Junior🔥 191 комментариев
#Опыт работы и проекты

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI29 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

С какими технологиями я хочу работать как C/C++ Backend Developer

Основной стек

Языки программирования:

  • C++17/C++20/C++23 — основной язык для высокопроизводительных систем
  • Python — для скриптов автоматизации, тестирования и DevOps
  • SQL — для работы с базами данных

Базы данных

Реляционные:

  • PostgreSQL — мощная, надежная, с JSON support
  • MySQL/MariaDB — популярные альтернативы

NoSQL:

  • Redis — in-memory кеш, очереди, streams
  • MongoDB — документориентированная база для гибких схем
  • Cassandra — распределенная база для высоконагруженных систем

TimeSeries:

  • InfluxDB — для метрик и временных рядов
  • Prometheus — мониторинг и алертинг

Message Queues & Streaming

Очереди сообщений:

  • RabbitMQ — надежная, с гарантией доставки
  • Apache Kafka — streaming, high-throughput
  • AWS SQS/SNS — облачные решения
  • Redis Streams — легковесная альтернатива

Сетевые технологии

// HTTP/REST
- REST APIs
- HTTP/2, gRPC
- WebSockets для real-time коммуникации
- Protocol Buffers (protobuf) для сериализации

// Низкоуровневые сокеты
- TCP/UDP сокеты
- Асинхронные I/O (epoll, kqueue)
- Boost.Asio для cross-platform networking

Фреймворки и библиотеки

C++ фреймворки:

  • Boost — набор полезных утилит
  • Asio — асинхронный I/O
  • Beast — HTTP/WebSocket на базе Asio
  • gRPC — RPC framework от Google
  • nlohmann/json — для JSON парсинга
  • spdlog — логирование
  • libuv — event loop (как в Node.js)

Web фреймворки:

  • Crow — легкий REST API framework
  • Pistache — современный HTTP фреймворк
  • cprestapi (Casablanca) — от Microsoft

Паттерны и архитектура

Паттерны проектирования:

  • Event-driven архитектура
  • Microservices
  • CQRS (Command Query Responsibility Segregation)
  • Распределенные транзакции (Saga pattern)

Масштабирование:

  • Load balancing (Nginx, HAProxy)
  • Kubernetes для оркестрации
  • Docker контейнеризация

DevOps и инструменты

Контейнеризация:

  • Docker — стандарт de facto
  • Docker Compose — для локального development
  • Kubernetes — production оркестрация

CI/CD:

  • GitHub Actions — встроена в GitHub
  • GitLab CI — полноценное решение
  • Jenkins — классический выбор
  • CircleCI — облачное решение

Мониторинг:

  • Prometheus — метрики
  • Grafana — визуализация
  • ELK Stack (Elasticsearch-Logstash-Kibana) — логирование
  • Jaeger — распределенный трейсинг

IaC (Infrastructure as Code):

  • Terraform — провизионирование облачной инфраструктуры
  • Ansible — конфигурирование серверов

Облачные платформы

  • AWS — EC2, RDS, Lambda, SQS, DynamoDB
  • Google Cloud — Cloud Run, Firestore, Pub/Sub
  • Azure — функции, базы данных

Параллелизм и асинхронность

// Многопоточность
- std::thread
- Thread pools
- Boost.Thread

// Асинхронность
- Coroutines (C++20)
- Event loops
- libuv, Asio

// Распределенные системы
- Consensus алгоритмы (Raft, Paxos)
- Distributed locks (Redis, etcd)

Тестирование

Unit тестирование:

  • Google Test (gtest) — стандарт для C++
  • Catch2 — современная альтернатива
  • Doctest — легкий фреймворк

Load тестирование:

  • Apache JMeter — нагрузочное тестирование
  • Locust — для Python скриптов
  • wrk/ab — HTTP бенчмарки

Интеграционные тесты:

  • Docker Compose для локального тестирования сервисов
  • testcontainers — управление тестовыми контейнерами

Специализированные технологии

Для высоконагруженных систем:

  • libevent — event notification
  • Boost.Lockfree — lock-free структуры данных
  • nanomsg/ZeroMQ — messaging
  • DPDK — пакетная обработка

Game Development / Real-time:

  • UDP для низколатентного трафика
  • WebRTC для peer-to-peer
  • Multiplayer архитектуры

Что мне особенно интересно

  1. High-Performance Computing — оптимизация, SIMD, lock-free структуры
  2. Распределенные системы — консистентность, отказоустойчивость
  3. Микросервисная архитектура — слабая связанность, масштабируемость
  4. Real-time системы — low latency, предсказуемость
  5. DevOps и Infrastructure — автоматизация, мониторинг, reliability

В целом

Я открыт для работы с современными технологиями и готов быстро учиться новым стекам. Основной критерий — решение должно соответствовать задаче: не нужно выбирать Kubernetes для tiny сервиса, но микросервисная архитектура правильна для сложных систем. Принципы превыше конкретных инструментов.

С какими технологиями хочешь работать | PrepBro