Position: Java Developer
Category: Java
English level: upper
Years of experience: 1.5


-- Java/Kotlin Backend Developer - CloudWaitress
I've worked on a restaurant reservation system.

My activities:
- Taking part in designing the data model and implementing persistence level using Hibernate/JPA, Spring Data, Flyway and DDD approach.
- Participating in the development/discussions of all product related processes, design, and functionality.
- Taking part in designing and implementing business logic for the admin page (statistics, adding/removing/editing tables, areas, restaurants, groups, users).
- Google Places integration, which allowed users to add restaurants in a few clicks.
- Writing integrational, unit tests using BDD(Cucumber), TDD techniques, which made delivering new features easier and more error-prone.

Used technologies at the project: Kotlin, Spring, Hibernate, JUnit, AWS, Testcontainers, Spring Data/JDBC, ShedLock, Cucumber.


-- Kotlin Backend Developer - DiveSpot
I've worked on the backend side of the mobile app for divers.

My activities:
- Designing and implementing image scaling API.
- Performance tests using Locust.
- Writing command-line tool in Python for working with Locust test results for internal use, which made it easier to compare results between runs, exporting results to CSV, and is used to see performance changes for every new feature, and major change.
- Implemented filtering by activity types using Spring JDBC and SQL.
- Detecting and fixing a few critical bugs and writing tests to prevent that.

Used technologies: Kotlin, Spring, Python, Spring Data, Spring JDBC, PostgreSQL, Flyway, Testcontainers, JUnit, AssertJ

-- Java Developer at Datafaker
I'm one of the maintainers of the project.

The library has over 200.000 downloads per month and counting, 600+ stars on GitHub, and is used by many big companies (Netflix, Alibaba, Bytedance and others).

My activities:
- Adding new features, such as new fake data generators, and fixing bugs.
- Doing code reviews, and writing documentation, unit tests.
- Built a utility using Reflections library and Java, that solves the problem of inaccurate documentation and speeds up the publication of new releases, and is used per every release.
- Improving the accuracy of data. Singlehandedly fixed over 30 phone number formats to almost 0% error rate for each available phone number format.