Основная задача - разработка бэкенда ПО для автоматического проектирования проектов развития территорий, например жилых районов или промышленных комплексов (сами алгоритмы и их обвязка в виде веб-сервиса с API).
Мы находимся в поиске специалиста, который умеет самостоятельно: придумывать алгоритм, писать код на Java. Код при этом должен быть покрыт тестами и содержать достаточное число комментариев.
Обязанности
- веб-часть: создать веб-сервис на Spring Boot, который прочитает файл с картой большой территории в формате OpenStreetMap XML, и будет иметь API, позволяющее запросить объекты карты в указанной области в формате GeoJSON;
- алгоритмическая часть: разработать алгоритм размещения детских площадок во дворе. На вход дан полигон двора и суммарная площадь площадок. Алгоритм должен вписать несколько прямоугольников-площадок в полигон двора, чтобы их суммарная площадь была не менее заданной и выполнялся ряд дополнительных ограничений (например, на расстояние до ближайшего здания).
Стек и технологии:
- ПО разрабатывается на Java 17. Представляет собой веб-сервис на Spring Boot + Hibernate + MariaDB. В некоторых второстепенных библиотеках используем Kotlin;
- сборка через Gradle, развертывание через Docker;
- код храним на GitHub, там же используем пайплайны для запуска тестов и сборки артефактов;
- для координации разработки мы используем сервисы Яндекса – Tracker, Wiki, Телемост.
Требования
- оконченное высшее техническое образование;
- опыт работы на Java от 3-х лет;
- знание основ CS: алгоритмы, структуры данных, оценка сложности;
- опыт работы со Spring: создание веб-сервисов, реализация API, работа с Hibernate, JPA;
- понимание основ работы с БД MySQL/MariaDB. Умение написать простой SQL скрипт;
- умение самостоятельно работать;
- умение придумывать алгоритмы для решения задачи;
-
плюсом будет понимание того, что такое генетические алгоритмы, опыт работы с ними, как вообще решаются сложные оптимизационные задачи. Знание библиотеки Jenetics будет плюсом.
Условия
-
гибридный график работы (1-2 дня в офисе, остальные дни удаленно);
-
оформление по ТК РФ с первого рабочего дня;
-
премии по итогам успешного выполнения проектов / по итогам года;
-
полис ДМС через 2 года работы;
-
заботливые коллеги, знающие толк в экологичных коммуникациях;
-
система адаптации с индивидуальными наставниками;
-
более 30 внутренних курсов повышения квалификации;
-
возможность проходить профильные курсы за счет работодателя;
-
5 иностранных языков для бесплатного изучения с сертифицированными преподавателями и носителями: английский, итальянский, испанский, французский и китайский;
-
доступ к библиотечному фонду ИТМО, а также бесплатный доступ к платформе “ЛитРес: библиотека” и к библиотеке “Alpina Digital”;
-
бесплатные регулярные и разовые сеансы у корпоративных психологов и коучей;
-
скидки на фирменный мерч в ITMO.Store и скидки от партнеров ИТМО (кафе, рестораны, спортивные залы, медицинские услуги);
-
льготное (периодически бесплатное) посещение театров, музеев и концертных площадок города;
-
развитая культура Well-being: баланс работы и личной жизни, забота о здоровье и благополучии, корпоративный спорт, популяризация экологических инициатив;
-
спортивно-оздоровительная база в Ягодном на берегу озера в сосновом лесу с бюджетным размещением в комфортных домах;
-
мероприятия для сотрудников: лекции с представителями науки, бизнеса и медицины, спортивные мероприятия, дни донора, праздники и корпоративы;
-
научно-образовательные коллаборации с Газпромом, Тинькофф Сбербанком, Яндексом;
-
ИТМО - первый неклассический университет в ТОП-100 рейтинга работодателей.