Position: Java/Spring Developer
Company: Unicsoft
Experience required: 3y
Category: Java
English level: upper
Published: 2023-08-01T00:00:00+03:00

Currently, we are looking for a Java/Spring + Kotlin Developer

Project duration - 2-3 months with a possibility for long term, workload - 40 hours/week.

We pay by hourly rate.

The client offers a mobile app for iOS and Android. Both apps offer the same functionality and use a shared backend to load information and store user specific data.

The backend works as a middleware between the apps and our other products, and offers a variety of services for the apps:

· Loads and holds copies of content from some of our services, like “Events” from Global Monitoring, or Country Information from our CDB
· Returns information about the current user via the user database Figgrove (Permissions, paid services, settings)
· Tracks the geolocation of the user via the apps and sends the user push notifications and/or e-mails if the user is in an active event/risk.
This app backend now needs fine-tuning and additional work. The following headlines will describe our current situation and requirements.

Key requirements (must have):
- 4+ years of development experience
- Java, Spring, Kotlin, PostgreSQL
- ability to work on the tasks independently with high dependability (aka being responsible and responsive) 
- Upper-Intermediate Level of English

 Technical specifications
·       Lanuage: Kotlin
·       Framework: Spring Boot 2.7
·       Lines of code:
o   Kotlin: 10’000
·       Database: PostgreSQL 12 with PostGIS
o   Used to match the location of the device that holds the app with events
·       Authorization: oAuth2 tokens
·       Logging: Logback
·       Build tool: gradle
·       Dependencies (selection):
o   Flyway 9
o   Jakarta Mail 2
o   Simple Jaba Mail 8
o   Pushy 0.15 (com.eatthepath) Apple Push Notifications
o   Artemis JMS
o   Proj4j 1.3
o   Retrofit 2.9
o   Thymeleaf 3
o   ModelMapper 3.1
·       Development environment: docker