Java Developer
Hello!
My name is Ivan Kopylov, and this is my CV.

- tg: https://t.me/ivan_kopylove
- Location: Voronezh. Ready for relocation, ready for business trips
- https://github.com/ivan-kopylove
Strong sides:
- Algorithmic background: graphs, dynamic programming.
- Spoken upper-intermediate English.
- Rich experience covering with unit tests (FIRST, pyramid).
- Gives early notice about potential pitfalls.
- Experience in delivering and receiving the code review.
- Rich experience in doc ops.
- Experience with establishing clear API contracts with cross-service teams, proactively clarifies obscure points, properly delegates tasks for juniors.
- Does research, PoC and sandbox testing prior to implementation.
Projects
| Project | Company | L10n | Started | Ended |
|---|---|---|---|---|
| FinCERT handler | OTP Bank | ru | 2025-10-15 | WIP |
| SVFM adapter | OTP Bank | ru | 2025-10-15 | WIP |
| Voice Order | Maxim technology | ru | 2023-08-18 | 2025-03-11 |
| Underwriting | Revolut | ru | 2021-06-01 | 2022-09-30 |
| REHA.Complete | Deutsche Telekom IT Solutions | ru | 2016-11-15 | 2021-03-04 |
| Techportal | RT Labs | ru | 2016-06-21 | 2016-11-14 |
| ETL module | RT Labs | ru | 2016-03-15 | 2016-06-21 |
| Team Planner | Deutsche Telekom IT Solutions | — | 2015-11-02 | 2016-02-01 |
| skype bot | vk | ru | 2014-02-01 | 2015-09-01 |
| MGT C# | vk | ru | 2013-01-01 | 2015-07-01 |
Education
Saint Petersburg State University for Water Communications
- Saint Petersburg State University for Water Communications
- 2007-01 - 2012-06
- Major: Information Systems
- Qualification: Engineer
Deutsche Telekom IT Solutions Java EE
- Title: Java EE course
- Organization: Deutsche Telekom IT Solutions
- started: 2015-10-01
- ended: 2016-02-01
- Frequency:: lections or practice twice a week
Stack:
- Jave EE: JPA / Hibernate
- JSF2
- Spring

Computer-Assisted Information Processing 2002..2004
Voronezh children’s supplementary education centre.
Computer-Assisted Information Processing 2002..2004.
Companies
| company | Started | Ended |
|---|---|---|
| OTP Bank | 2025-10-15 | still here |
| Maxim technology | 2023-08-18 | 2025-03-11 |
| Revolut | 2021-06-01 | 2022-09-30 |
| Deutsche Telekom IT Solutions | 2016-11-15 | 2021-03-04 |
| RT Labs | 2016-03-15 | 2016-11-14 |
| vk | 2010-04-26 | 2015-08-01 |
| Nival Online | 2008-07-01 | 2009-09-28 |
Stack
| Technology | Project | Started | Ended |
|---|---|---|---|
| SonarQube | Voice Order | 2025-10-15 | — |
| Spring boot 3 | FinCERT handler | 2025-10-15 | — |
| linux | FinCERT handler | 2025-10-15 | — |
| Spring IoC | FinCERT handler | 2025-10-15 | — |
| jobrunnr | FinCERT handler | 2025-10-15 | — |
| SQL | FinCERT handler | 2025-10-15 | — |
| Grafana | FinCERT handler | 2025-10-15 | — |
| Hibernate + JPA | FinCERT handler | 2025-10-15 | — |
| Spring AOP | FinCERT handler | 2025-10-15 | — |
| gradle | FinCERT handler | 2025-10-15 | — |
| resilience4j | FinCERT handler | 2025-10-15 | — |
| Mockito | FinCERT handler | 2025-10-15 | — |
| Java 21 | FinCERT handler | 2025-10-15 | — |
| Spring REST | FinCERT handler | 2025-10-15 | — |
| JUnit | FinCERT handler | 2025-10-15 | — |
| Jackson | FinCERT handler | 2025-10-15 | — |
| Liquibase | FinCERT handler | 2025-10-15 | — |
| Wiremock | FinCERT handler | 2025-10-15 | — |
| git | SVFM adapter | 2025-10-15 | — |
| slf4j + log4j2 | SVFM adapter | 2025-10-15 | — |
| SonarQube | SVFM adapter | 2025-10-15 | — |
| micrometer | SVFM adapter | 2025-10-15 | — |
| JUnit | SVFM adapter | 2025-10-15 | — |
| Java 21 (w/ concurrency API) | SVFM adapter | 2025-10-15 | — |
| linux | SVFM adapter | 2025-10-15 | — |
| gradle | SVFM adapter | 2025-10-15 | — |
| Wiremock | SVFM adapter | 2025-10-15 | — |
| resilience4j | SVFM adapter | 2025-10-15 | — |
| Spring AOP | SVFM adapter | 2025-10-15 | — |
| Grafana | SVFM adapter | 2025-10-15 | — |
| Docker compose | SVFM adapter | 2025-10-15 | — |
| Liquibase | SVFM adapter | 2025-10-15 | — |
| Spring boot 3 | SVFM adapter | 2025-10-15 | — |
| Jackson | SVFM adapter | 2025-10-15 | — |
| SQL | SVFM adapter | 2025-10-15 | — |
| Spring IoC | SVFM adapter | 2025-10-15 | — |
| java 21 | SVFM adapter | 2025-10-15 | — |
| Mockito | SVFM adapter | 2025-10-15 | — |
| SonarQube | REHA.Complete | 2025-10-15 | — |
| SQL | Voice Order | 2023-08-18 | 2025-03-11 |
| JUnit | Voice Order | 2023-08-18 | 2025-03-11 |
| resilience4j | Voice Order | 2023-08-18 | 2025-03-11 |
| Asterisk | Voice Order | 2023-08-18 | 2025-03-11 |
| Spring IoC | Voice Order | 2023-08-18 | 2025-03-11 |
| Wiremock | Voice Order | 2023-08-18 | 2025-03-11 |
| Log4j + SLF4J | Voice Order | 2023-08-18 | 2025-03-11 |
| linux | Voice Order | 2023-08-18 | 2025-03-11 |
| Mockito | Voice Order | 2023-08-18 | 2025-03-11 |
| Docker | Voice Order | 2023-08-18 | 2025-03-11 |
| Jackson | Voice Order | 2023-08-18 | 2025-03-11 |
| Grafana | Voice Order | 2023-08-18 | 2025-03-11 |
| micrometer | Voice Order | 2023-08-18 | 2025-03-11 |
| gradle | Voice Order | 2023-08-18 | 2025-03-11 |
| Spring AOP | Voice Order | 2023-08-18 | 2025-03-11 |
| silero | Voice Order | 2023-08-18 | 2025-03-11 |
| Kotlin 1.9 | Voice Order | 2023-08-18 | 2025-03-11 |
| asterisk-java (AGI) | Voice Order | 2023-08-18 | 2025-03-11 |
| Spring REST | Voice Order | 2023-08-18 | 2025-03-11 |
| Flyway | Underwriting | 2022-09-30 | 2022-09-30 |
| Mockito | Underwriting | 2022-09-30 | 2022-09-30 |
| macOS | Underwriting | 2022-09-30 | 2022-09-30 |
| sparx | Underwriting | 2021-06-01 | 2022-09-30 |
| JOOQ | Underwriting | 2021-06-01 | 2022-09-30 |
| Jackson | Underwriting | 2021-06-01 | 2022-09-30 |
| Wiremock | Underwriting | 2021-06-01 | 2022-09-30 |
| Java 8 | REHA.Complete | 2019-02-01 | 2021-02-01 |
| git | REHA.Complete | 2018-06-06 | 2021-01-01 |
| Jasper Reports (Embedded + Standalone) | REHA.Complete | 2018-04-01 | 2021-01-01 |
| pdfbox + fillable PDF | REHA.Complete | 2018-04-01 | 2021-01-01 |
| MapStruct | REHA.Complete | 2018-01-01 | 2020-12-01 |
| Wicket | REHA.Complete | 2017-11-15 | 2021-01-01 |
| Jackson | REHA.Complete | 2016-11-15 | 2021-01-01 |
| SQL | REHA.Complete | 2016-11-15 | 2021-01-01 |
| JProfiler | REHA.Complete | 2016-11-15 | 2021-01-01 |
| Oracle Database | REHA.Complete | 2016-11-15 | 2020-01-01 |
| Apache Tomcat and Servlets | REHA.Complete | 2016-11-15 | 2021-02-01 |
| Java 6 | REHA.Complete | 2016-11-15 | 2019-02-01 |
| Apache Camel | REHA.Complete | 2016-11-15 | 2021-01-01 |
| Orbeon | REHA.Complete | 2016-11-15 | 2021-01-01 |
| Wiremock | REHA.Complete | 2016-11-15 | 2021-01-01 |
| svn | REHA.Complete | 2016-11-15 | 2018-06-06 |
| Hibernate + JPA | REHA.Complete | 2016-11-15 | 2021-01-01 |
| Maven | REHA.Complete | 2016-11-15 | 2021-01-01 |
| Mockito | REHA.Complete | 2016-11-15 | 2021-01-01 |
| JUnit | REHA.Complete | 2016-11-15 | 2021-01-01 |
| Liquibase | REHA.Complete | 2016-11-15 | 2021-01-01 |
| Dozer Mapper | REHA.Complete | 2016-11-01 | 2020-12-01 |
| SQL | Techportal | 2016-06-21 | 2016-11-14 |
| Spring IoC | Techportal | 2016-06-21 | 2016-11-14 |
| Maven | Techportal | 2016-06-21 | 2016-11-14 |
| Apache Tomcat and Servlets | Techportal | 2016-06-21 | 2016-11-14 |
| Hibernate + JPA | Techportal | 2016-06-21 | 2016-11-14 |
| Spring boot | ETL module | 2016-03-15 | 2016-06-21 |
| Spring Rest | ETL module | 2016-03-15 | 2016-06-21 |
| Maven | ETL module | 2016-03-15 | 2016-06-21 |
| Java 8 | ETL module | 2016-03-15 | 2016-06-21 |
| linux | ETL module | 2016-03-15 | 2016-06-21 |
| Spring IoC | ETL module | 2016-03-15 | 2016-06-21 |
| Tomcat | Team Planner | 2015-11-02 | 2016-02-01 |
| Spring security | Team Planner | 2015-11-02 | 2016-02-01 |
| Java 7 | Team Planner | 2015-11-02 | 2016-02-01 |
| git | MGT C# | 2012-01-01 | 2014-01-01 |
| SQLite | MGT C# | 2012-01-01 | 2014-01-01 |
| C# | MGT C# | 2012-01-01 | 2014-01-01 |
| Quova Geo IP API | MGT C# | 2012-01-01 | 2014-01-01 |
| AutoIT | MGT AutoIT | 2012-01-01 | 2014-01-01 |
Courses
English courses, mostly
Сильные стороны:
- Алгоритмическая подготовка: графы и динамическое программирование.
- Владеет разговорным upper-intermediate английским.
- Имеет богатый опыт документирования.
- Имеет богатый опыт покрытия юнит-тестами (FIRST, pyramid).
- Имеет богатый опыт код-ревью (доставки и получения обратной связи).
- Имеет опыт получения договоренностей API контрактов в кросс-функциональных командах.
- На ранних этапах предупреждает о блокирующих проблемах.
- Перед внедрением выполняет исследование, прототипизацию, тестирование в песочнице.