Position: Junior Java Developer
Category: Java
English level: upper
Years of experience: 0


Job:
As developer I have started learning project for apartment`s reservations. Main task was create tests for it. I have created tests for 24 different classes that had worked with dates, lists, streams, calculations, validations etc.
Intership:
Preparation part (tutorials) consists of tasks with Stream API, collections, dates etc. It contains documantation that was used to create methods.  
This project was based on real ASD project for apartment`s reservations. My part consists of API for product that can can be reserved, its prices and fees (addittional prices that let company and owner get profit). The main stack is Spring Boot, MyBatis, MySQL, Redis. Each API consists of controller, service, repository (data access object class) and mapper that provide cooperation with MySQL through MyBatis. They let get data about each itemseparately and total report about their connection. Also Redis API is that use RedisClient instead of repository and mapper. It emulates data migration process. Entites is created with Lombok. Swagger is used to create API documantation. Project also contains tests for services. They were created using Junit 5 and Mockito.
Pet-projects:
Mobile application for cost control. Android, Java 8, local DBMS SQLite 3. The app lets user store and manage expenditure data (amount, category, account, date, name of the place of expenditure, geolocation), corresponding pie chart. It forms statistics. Accounts and user profile is managed separately. A map is also being built on which expenses are displayed, you can view how many expenses were made for what amount, as well as a list of relevant expenses. It is localized for Ukrainian and English.
Mobile app for learning words by cards. Android, Java 8, local DBMS SQLite 3. It consists of views, models, interfaces, dialogs and controllers including connector to DB. The app lets user create folders with groups of words, manage them, learn words with card method and practice knowledge by several types of trainings. It also has the generator of random words and several types of statistics.
Desktop program for storing passwords. Windows 10, Java 8, local DBMS MySQL v.8.0.2. The app lets user store and manage data, search it and generate random passwords and pin codes.