dmitriy-harin.ru — IntelliJ IDEA
// ========================================
// Experience.java
// ========================================
/**
* Development experience: 21 years, commercial: 16 years
*/
@Position("Senior Java Developer")
@Period("Aug 2020present")
class {

Development of the bank's internal ERP system for mortgage and non-mortgage real estate transactions. Experience collaborating with numerous teams (both internal and external) within a single company. Experience working in a system with extensive bureaucratic processes and approvals.

// Key achievements
  • Optimized and improved the file management service (a shared model used by other company services). Before my involvement, the service suffered from OOM crashes and disk space issues. Implemented input stream re-streaming to various target storages (replacing Spring's standard multipart/form resolver), optimized all byte[] to stream conversions, refactored the architecture — extracted everything unrelated to the core file model into separate services
  • Developed a file conversion and merging service for various formats (Word, Excel, images of any format, PDF) into PDF. The service handles high load without crashes, has calculated worker count for VM configuration, and supports horizontal scaling
  • Developed an electronic document signing service with various signing strategies (single, co-signing) for different signing methods (CryptoPro in browser, cloud CAs: Goskey, IT Monitoring, DigitalDeal, simple electronic signature via external gateway integration), cryptographic signature verification through an external service
  • Developed a non-mortgage transactions service (optimized for specific SLA requirements) with integrations to other services
  • Microsoft Office document templating engine — Word document generation using constructs (loops, conditions, functions and operators). The internal language is easily customizable. Built on ANTLR4 (lexical analyzer) and docx4j (DOCX document library)
// Tech stack
Java 8/17/21Spring Boot 1/2/3PostgreSQLRedisRabbitMQArtemisKafkaKubernetesKibanaGrafanaGraylog
}
@Position("Team Lead / Senior Java Developer")
@Period("May 2017Aug 2020")
class {

Accepting code from external contractors. Designing system architecture (online store core) and microservices. Full-stack development (backend + frontend). Team management: 2 backend devs, 1 frontend dev, 1 QA, 1 DevOps engineer. Task breakdown, execution control, mentoring. Developing code style and architectural principles. Writing tests (JUnit + Mockito). CI/CD setup (Jenkins + Docker). Agile process setup in Jira. Conducting interviews.

// Key achievements
  • Data Exchange Microservice v3.0 — asynchronous HTTP-based data exchange between services (including 1C ERP) with admin UI for monitoring, Zabbix API integration for SMS/email notifications
  • Reservation Microservice v1.0 — goods reservation with deferred confirmation in master system, instant client reservation with parallel 1C ERP sync
  • File Microservice v2.0 — public file management (upload/download) and private files with special access restrictions
  • Background Tasks Microservice v1.0 — task scheduling for microservices with UI for configuration and execution
// Tech stack
Java 8Spring Boot 1.5Angular 5TypeScriptPostgreSQLRedisRabbitMQElasticsearchDockerJenkins
}
@Position("Senior Web Developer")
@Period("Dec 2014Feb 2016")
class {

Development of a large wholesale online store for truck spare parts. Web server administration on Debian 8/9.

// Key achievements
  • Data Exchange Microservice — built on Symfony, RabbitMQ, Elasticsearch with Angular UI. Replaced all legacy Excel-based data exchanges across the company (reduced exchange time from 3-10 min to seconds, added search through exchange data via UI)
  • Pricing Microservice — system with arbitrary price modifiers (20+ in production)
  • File Microservice — file management with public and private access
// Tech stack
PHP 5/7Symfony 2/3MySQL 5.6MongoDB 3Redis 2RabbitMQElasticsearch
}
@Position("Senior 1C Developer")
@Period("Apr 2012Jun 2014")
class {

Development and maintenance of internal ERP system based on 1C Enterprise Management 1.2. Primary developer of 'Goal Management' product. Company website support on Bitrix. Obtained '1C Professional' and '1C Specialist' certifications for platform 8.2.

// Tech stack
1C Enterprise 8.21C Bitrix
}
@Position("1C Developer")
@Period("Dec 2010Mar 2012")
class {

Professional ERP system development based on 1C Comprehensive Automation. Integration modules with 1C Bitrix online shop (stock, orders, items, contractors exchange). Integration with external services (dadata.ru, order loading from partner systems). Custom accounting subsystems: reservation, mutual settlements, task subsystem for manager process control.

// Tech stack
1C Enterprise 8.21C Bitrix
}
@Position("Student")
@Period("Sep 2005Aug 2010")
class {

Department of Electronics and Computing Machinery. Active programming from first year: Delphi 7, QtCreator (graphics, physical process visualization). Diploma project: C++ Linux Ubuntu 10.04 application for EEG signal pattern recognition using SVM (Support Vector Machine) method — trainable algorithm to identify specific EEG sections in patient databases.

// Tech stack
Delphi 7C++QtCreatorLinux Ubuntu
}