Необходимо разработать проект с нуля, взаимодействие пользовательских приложений (мобильные и веб) с сервером будет происходить посредством REST. Приложение ориентировано на обмен текстовой и графической информации между веб и мобильной платформой через сервер. Например, одна из типичных задач это конструктор опросов, который будет доступен в веб-кабинете, а мобильное приложение отвечает за взаимодействие с контентом опроса, сервер собирает, обрабатывает и хранит его результаты.
Java (backend)
Необходимые навыки:
Git
Java
SpringBoot, Security, JPA, Servlet, Web
Gradle
PostgreSQL, Hibernate
SOAP, REST
API documentation
Желательно:
Flyway/Liquidbase
AMQP
Swagger
или PHP
Необходимые навыки:
Git
REST, JSON, CORS
PostgreSQL
Yii2 / laravel 5
RBAC, JWT
API documentation
cron
Плюсом будет:
RabbitMQ
Redis
Покрытие тестами (PHPUnit)
Примерные задачи проекта:
- Веб приложение. Типы задач: CRUD формы разной сложности; списки/таблицы с фильтрами; получение push-уведомлений (через fcm) и взаимодействие; работа с валидацией данных в формах; работа с навигацией по приложению - роутинг и т.п.
- Приложение на сервере. Типы задач: CRUD операции (REST API); скрипты для выполнения различных операций по заданным интервалам времени/дате (например cron, sidekiq); отправка push-уведомлений через fcm; возможно работа с очередями (amqp протокол); логирование ошибок с классификацией; составление разной сложности выборок из БД.