Наш заказчик - второй по величине банк в стране, услугами которого пользуются миллионы людей. Цель заказчика - создать максимально удобные для клиентов приложения, сервисы, технологии. Мы активно ищем талантливых кандидатов, готовых к решению различного рода задач: вывод новых фичей, поддержка текущей функциональности, написание тестов, участие в общих грумингах и многое другое. Работа ведется в небольших кросс-функциональных командах с полным вовлечением разработчиков и ключевых экспертов.
Обязанности
• реализация функционала (анализ функционала по требованию);
• поддержка и улучшение кодовой базы;
• покрытие функционала модульными тестами;
• оптимизация бизнес логики и повышение стабильности системы (выявление "узких мест" системы);
• выявление тех долга;
• проведение код ревью;
• проработка бэклога;
• планирование и подготовка релизов;
• написание документации.
Обязательные требования
• опыт работы с java от 3 лет;
• уверенные знания основных современных концепций и принципов разработки на платформе Java;
• хорошее знание и умение применять на практике принципы ООП, SOLID, DRY, KISS;
• знание стандартных алгоритмов и структур данных;
• опыт разработки на Java с использованием технологий: Spring Framework (Cloud, Boot, AOP, Security, etc), Hibernate;
• знание и опыт применения: Stream, Optional, Collections, etc. Разработка с использованием Java 8
- 11;
• опыт работы с тестовыми фреймворками: Junit, TestNG, Mokito;
• опыт работы с реляционными базами данных;
• знание теоретических основ проектирования БД и построения эффективных запросов;
• опыт работы с Git, Maven.
Будет плюсом
• опыт проектирования высоконагруженных систем;
• опыт работы с Spring Boot, Spring Cloud;
• опыт работы с Docker, Kubernetes;
• опыт работы с TeamCity, Jira, Confluence;
• умение писать чистый, документированный и тестируемый код и тесты к нему (модульные и интеграционные);
• понимание что такое микросервисная архитектура, её плюсы и минусы;
• как минимум знакомство с функциональной парадигмой разработки.