Разработка сервисов в рамках технического стека и микросервисной архитектуры;
Покрытие кода тестами;
Участие в code-review;
Детальное проектирование разрабатываемых сервисов, принятие технологических решений;
Оценка сложности разработки и участие в планировании;
Проектирование и реализация интерфейсов взаимодействия с другими системами;
Написание тестов (unit и e2e).
Наши ожидания:
Высшее образование;
Опыт коммерческой разработки на java от 3-х лет;
Уверенное владение Java, понимание принципов работы JVM;
Знание основных библиотек, шаблонов проектирования, алгоритмические основы и структуры данных;
Опыт использования Spring Framework (boot, mvc, data, secutity, JPA / Hibernate);
Опыт работы с многопоточностью и асинхронностью;
Опыт проектирования баз данных, составления сложных SQL запросов (PostgreSQL) и миграция баз данных (например liquibase);
Знание основ программирования: ООП, REST, SOLID;
Опыт проектирования микросервисной архитектуры;
Опыт работы с фреймворками и инструментами автоматического тестирования (junit, postman, jmeter);
Знание технологий контейнеризации (Kubernetes/OpenShift), особенностей их использования и ограничений;
Понимание принципа работы Webocket;
Опыт реализации комплексных интеграционных решений c использованием REST/SOAP-сервисов, очередей, брокеров сообщений (MQ/Kafka), XML/JSON, XSD/JSON Schema;