Итак, тебе предстоит:
- Проектировать архитектуру продукта в целом и его отдельных компонентов с нуля совместно с разработчиками.
- На сегодняшний день параллельно осуществляются работы в двух направлениях:
1. Контейнеризация и вывод целевых технических и бизнес-метрик из стороннего сервиса наблюдаемости в наше перспективное решение с использованием Grafana в качестве визуализатора данных;
2. Разработка "движка" решения и старт работ по интеграциям со сторонними решениями, аккумулирование получаемых данных и пр. Оценочное количество планируемых интеграций: свыше 70
- Исследование и проработка новых технологических фич в продукте
Мы будем рады рассмотреть твою кандидатуру, если у тебя есть:
- Опыт работы системным аналитиком системным архитектором от 2-х лет
- Опыт проектирования систем с нуля.
- Знание архитектурных стилей проектирования и их применение (GoF, EAA, DDD, EIP, )
- Опыт проектирования и разработки систем на микросервисной архитектуре
- Опыт описания требований по реализации функциональности высоконагруженных систем с синхронным и асинхронным взаимодействием
- Опыт работы с различными архитектурными стилями (в частности, построенными на Event Driven архитектуре), разработка, изменение и утверждение архитектуры системы
- Умение читать бизнес-процессы в нотации BPMN2.0. Владение языком моделирования UML (диаграммы классов, диаграммы состояний, диаграммы последовательностей и т.д.), Проектирование потоков данных и компонентная диаграмма.+ Archimate будет преимуществом.
- Умение декомпозировать входящие требования бизнеса на системные требования к продукту
- Определение Стека Технологий
- Опыт проектирования Модели Данных
- Разработка и сопровождение технической документации по ИТ-системе (проектное решение, постановка на разработку, ПМИ)
- Опыт проектирования и документирования API (REST), понимание принципов работы WS
- Отличное знание и опыт применения принципов ООП.
- Хорошее знание информационных технологий и сетей
- Применение ключевых принципов разработки ПО (SOLID, DRY, )
- Опыт и навыки оптимизации производительности системы
- Опыт разработки приложений на одном из языков высокого уровня (Java, C# и т.д.), включая опыт разработки сетевого взаимодействия по различным протоколам (REST, HTTP), опыт создания многопоточных приложений, знание одного или нескольких фреймворков разработки серверных приложений (Spring Boot) - как преимущество
- БД: хорошее знание и опыт использования языка SQL, навыки работы с РСУБД (PostgreSQL), знание одной или нескольких NoSQL БД,
- Знание и опыт работы с брокерами очередей (Kafka, RabbitMQ)
Желательные
- Знания принципов разработки облачных приложений (Cloud-Native)
- Знания инструментов контейнеризации (Docker, Kubernetes)
- Знания в области информационной безопасности и проектирования безопасных приложений
- Знание ОС Linux на уровне опытного пользователя