- Высшее техническое образование (Computer Science или смежное);
Неизвестный работодатель · На сервисе с: 15.07.26 11:59
Java разработчик Senior
Длительность проекта: до ••••••••
Локация: РФ
Ставка: 1950, с НДС
Обязательные требования
- Высшее техническое образование (Computer Science или смежное);
- Английский язык: чтение технической документации (Upper-
Intermediate);
- Коммуникативные навыки: взаимодействие с командой,
заказчиками;
- Аналитическое мышление: умение декомпозировать задачи;
- Способность принимать решения, ответственность за них;
- Java 11+ (Core, Concurrency, Collection, Lambda, Stream API, Optional- знание иерархии основных интерфейсов, реализаций коллекций, основных типов и сущностей);
- Groovy (общее понимание в соответствии с документацией языка, знание методов работы с коллекциями в скриптах);
- Понимание основ работы JVM и её частей. Знание модели памяти, режимов работы сборщиков мусора, профилирования и оптимизации производительности;
- Spring (знание скоупов и подробностей жизненного цикла бинов - как они появляются, как можно кастомизировать их создание и жизненный цикл, знание для решения каких задач используются те или иные части фреймворка, например, MVC, Security, Data, Cloud);
- Знание реализаций и умение применять абстракции
многопоточности Java Concurrency: CompletableFuture,
ExecutorService, Concurrent collections, Atomic variables, Locks
HTTP, REST, SOAP, GraphQL (знание базовых сущностей протоколов и их свойств, определение применимости в тех или иных условиях);
- Wiremock, JUnit, Mockito и в целом теория юнит-тестирования (что такое юнит-тест, для чего он нужен, как работает);
- Паттерны проектирования (знание нескольких паттернов,
способность объяснить реализацию в коде, способность применить тот или иной паттерн в поставленной задаче);
- SOLID, DRY, KISS (знание принципов, способность анализировать ситуацию\задачу, в которой можно применить ограничения, накладываемые этими принципами);
- 10 ООП (чем обусловлена и чем задана данная парадигма, умение видеть в задаче возможности применения основных её принципов- полиморфизм, абстракция, инкапсуляция и т.д.);
- Kafka (знание архитектуры и подробностей процесса прохождения единицы информации через брокер, знание java-библиотек и их абстракций обеспечивающих взаимодействие с брокером);
- MongoDB (как устроена на верхнем уровне абстракции, к какому семейству принадлежит эта БД, чем можно обусловить выбор такой БД);
- Микросервисная архитектура (понимание преимуществ и
недостатков в сравнении с монолитом, основные паттерны
отказоустойчивости, повышение скорости работы, инструменты обеспечения работоспособности распределенной инфраструктуры) + Service discovery, Configuration management, Circuit breakers, Retry patterns;
- GlusterFS/S3 (верхнеуровневая архитектура подобного хранилища);
- Linux (основы работы в терминале, знание синтаксиса bash);
- Kubernetes (архитектура, знание основных сущностей, принципов их взаимодействия);
- Hazelcast/Redis (как устроен, в каких ситуациях применим,
преимущества и недостатки использования).
Задачи на проекте
- Разработка ПО и поэтапная интеграция в экосистему клиента и в бэк-системы;
- Выполнение установки релизной сборки в сервисное окно согласно графику релизов.
Этапы отбора
1. Техническое интервью
2. Интервью с лидом
Описание проекта и команды
Проект крупной телекоммуникационной компании.
Произвести модификацию программы для клиента и достигнуть следующих целей:
- Реализовать доработки в существующем функционале продаж и обслуживания продукта. Доработки сценарных компонентов продукта и интеграций с другими системами, а рамках задач;
- Оптимизировать процессы обслуживания и продаж.
По вопросам партнерского сотрудничества: ••••••••
HireSeeker собирает вакансии со всех площадок и присылает только релевантные. Бесплатно.