Технологический стек
Backend
| Технология | Назначение | Версия |
|---|---|---|
| Go | Основной язык backend | ≥ 1.22 |
| PostgreSQL | Основная БД | ≥ 15 |
| Redis | Кэш, сессии, очереди | ≥ 7 |
| Kafka / RabbitMQ | Message Broker | — |
| Docker | Контейнеризация | — |
| Kubernetes | Оркестрация | — |
Mobile
iOS
| Технология | Назначение |
|---|---|
| Swift | Основной язык |
| SwiftUI / UIKit | UI-фреймворк |
| Combine / async-await | Асинхронность |
| SPM | Управление зависимостями |
Android
| Технология | Назначение |
|---|---|
| Kotlin | Основной язык |
| Jetpack Compose | UI-фреймворк |
| Coroutines / Flow | Асинхронность |
| Gradle | Сборка |
Frontend (Web)
| Технология | Назначение |
|---|---|
| TypeScript | Основной язык |
| React / Next.js | UI-фреймворк |
| — | State Management |
| — | Стилизация |
Инфраструктура
| Технология | Назначение |
|---|---|
| AWS / GCP / Yandex Cloud | Облачный провайдер |
| Terraform | IaC |
| GitHub Actions | CI/CD |
| ArgoCD | GitOps / CD |
| Helm | Kubernetes пакетирование |
Мониторинг и Observability
| Технология | Назначение |
|---|---|
| Grafana | Дашборды |
| Prometheus | Метрики |
| OpenTelemetry | Трассировка |
| ELK / Loki | Логирование |
| PagerDuty / OpsGenie | Алертинг |
Принципы выбора технологий
- Boring technology — предпочитаем проверенные решения экзотическим
- Один инструмент на задачу — не дублируем технологии без причины
- Новые технологии — через RFC и пилот на некритичном сервисе
- Vendor lock-in — минимизируем, используем абстракции