Junior/Middle Java Software Engineer - 593

Posted more than 30 days ago
Specialization: Java
Open to offers now
2 000 $
2 years
Considering options
Full-time office work
Part-time work
Remote work (full-time)
Freelance (one-time projects)
I would like my product to be called innovative. It's really cool to do something almost perfect.

Two years of commercial experience. Now i'm middle Java Developer in a small company more than year. I'm working on security with tokens including LDAP(OpenLDAP, Active Directory). In the microservice architecture, I set up communication between services through the RabbitMQ, Minio file storage, a bit Docker and Docker Compose. I work simultaneously on 2 projects - an auction management system and a fraud detection system for a large European bank. Creating functionality, if required for the task, I go through the whole cycle: creating a database using Liquibase; creation of entity structures; spring rest crud with a full description in swagger, also protected by spring security, which can be extended with JPA Specification; full validation of input data, both regex and java for table filling data, also validation includes incorrect queries with detailed exception handling and formation of an array of user mistakes to prevent 500 errors and tell the user what needs to be corrected in the requests. 

Wrote several modules that helped the customer track changes in important data: Status Logger - displays the status of the data download in percent and a list of errors after download; Report - generates a report on changes in the monitored data in html format in tabular form (subscription is implemented through Rest API); Notification - sends a report generated by the Report module using the SMTP protocol to the email.

Trainee Java Developer
Software Engineer, volunteer team.
February 2021 - May 2021

> Writing automated tests with Mockito


Junior Java Developer
June 2021 - September 2021

> Implemented authentication

> Integrated JWT technology

> Introduced custom implementation of JWT validation with filters, providers, and result


> Added a Liquibase migration based on SQL scripts to create a database structure

> Business logic was described in services with Rest access by roles

> Divided the project into microservices with rest communication between them

Junior/Middle Java Developer
October 2021

> Implemented authentication

> Integrated JWT technology

> Custom JWT validation with filters, providers, and handlers of result

> Configured LDAP(Active Directory)

> Customized/Universalized exception hendling

> Support for Liquidbase migrations using the XML standard with a description of rollbacks and

static filling of tables when they are created

> Covered the project with swagger with a detailed description of the work of endpoints and

each parameter, reflecting server security access to each controller, including roles to each


> Introduced Minio file storage into the project

> Set up a flexible search with filtering, including nested objects using JPA Specification

> Configured friendly exception handling with exact list of request errors for response to


> Database enriching with validation and deduplication

> Microservice for logging the status of the enrichin process

> XLSX file parsing

> Subscribing to object updates for further email notification of its changes

> Refactoring individual parts of services to a Stream API. Set up service communication using RabbitMQ

Java - 2 years
Spring - 2 years
spring boot - 2 years
Spring Data - 2 years
Hibernate - 1 year
Postgresql - 2 years
MySQL - 1 year
Rest API - 2 years
SOLID - 1 year
Spring REST - 2 years
Mockito - 1 year
Spring Security - 2 years
SQL - 2 years
Java Stream API - 2 years
Design Patterns - 1 year
Microservice Architecture - 2 years
JSOn - 2 years
XML - 2 years
Git - 2 years
Maven - 2 years
docker - 1 year
Rabbitmq - 2 years
Swagger - 2 years
Similar candidates
Open to offers now
2 000 $
2 years
Considering options
Full-time office work
Part-time work
Remote work (full-time)
Freelance (one-time projects)
We use cookies