Обязанности и достижения:
1. Разработка, развитие и поддержка микросервисов для фронтенд-платформы (коробочное решение) включающей сервисы для:
– кастомизации фронтендов (брендинг)
– локализаций
– хранения пользовательских настроек
– кэширования запросов за frontend-ресурсами
– обработки пользовательских/системных нотификаций
Инструменты/технологии: Go, PostgreSQL, RabbitMQ, Kafka, Nginx, Kubernetes, Docker, Helm, WebSocket, REST API, GRPC
Go-библиотеки: gorm, goose, gorilla/mux, fiber, gomock, testify, olric, dig
2. Разработка в кросс-функциональной команде (бэкенд + фронтенд) внутреннего микросервиса для измерения, предоставления репортов с предложениями по улучшению перформанса фронтенд приложений.
Инструменты/технологии: Go, PostgreSQL, Kubernetes, Docker, Helm, Node.js, REST API
Go-библиотеки: gorm, goose, gorilla/mux, fiber, gomock, testify, olric, dig
3. Оптимизация в микросервисах, включая:
– оптимизацию Docker-образов (multi-stage, сокращение слоёв)
– оптимизацию SQL-запросов
– оптимизацию серверной обработки логических фильтров (AND, OR) для фильтрации сущностей в UI
– добавление возможности профилирования во все микросервисы
– анализ и устранение проблем с высоким потреблением памяти и CPU
Инструменты: pproof, apache ab (server benchmarking tool), Prometheus, Explane analyze
4. Декомпозиция и оценка задач, дизайн фич (как бэкенд так и фронтенд части)
5. Улучшение Swagger/OpenAPI-документации в микросервисах
6. Покрытие кода юнит- и интеграционными тестами
7. Настройка статического анализа кода (golangci-lint)
8. Проведение дизайн- и код-ревью
9. Наставничество и обучение новых членов команды