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.
- →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)
// Experience.java
// ========================================