← Назад к вопросам
С какими технологиями хочешь работать
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 архитектуры
Что мне особенно интересно
- High-Performance Computing — оптимизация, SIMD, lock-free структуры
- Распределенные системы — консистентность, отказоустойчивость
- Микросервисная архитектура — слабая связанность, масштабируемость
- Real-time системы — low latency, предсказуемость
- DevOps и Infrastructure — автоматизация, мониторинг, reliability
В целом
Я открыт для работы с современными технологиями и готов быстро учиться новым стекам. Основной критерий — решение должно соответствовать задаче: не нужно выбирать Kubernetes для tiny сервиса, но микросервисная архитектура правильна для сложных систем. Принципы превыше конкретных инструментов.