Dzmitry Software Engineer
Summary
Software Engineer boasting a comprehensive education from Vilnius University and BSTU complemented by a robust professional background with a focus on SaaS and IaaS development. Proficient in a wide array of programming paradigms including OOP, functional, reactive, and process programming. Skilled in Haskell, with a passion for embedding AI and extensive experience in cybersecurity and DeFi, thus reflecting a deep technical expertise. With 5+ years coding in JavaScript/TypeScript and Python, and familiarity with numerous back-end technologies and tools ranging from Node.js to AWS and PostgreSQL, this engineer exemplifies a strong command over modern development practices such as TDD and DDD. Additionally, projects reflect practical experience in data processing, AI model implementation, and system architecture design.
Work Experience
Software Developer, Nexploit CLI
Duration: 01-2023 to 11-2023
Summary: A DAST application & API security testing platform with a core written in Crystal and featuring open-source Nexploit CLI.
Responsibilities: Feature development, PostgreSQL migration, service performance improvement, refactoring, redundancy elimination, type checking, RegEx C++ Raw Socket refactoring, documentation updates.
Technologies: Node.js, TypeScript, Ts.ED, MongoDB, PostgreSQL, Redis, RabbitMQ, Jest, Type ORM, Micro-ORM, Semantic Release, Socket Ts-Mockito, Kubernetes
Technical Lead/Sr. Engineer, Jeweler Telegram Bot
Duration: 03-2022 to 01-2023
Summary: A Telegram-based bot, Jeweler, for small jewelry businesses to manage customer orders more efficiently.
Responsibilities: Technology choice, technical solution development, architecture design using DDD, pull-request reviewing, refactoring, translation service integration, Google Auth Client integration, CI/CD integration for seamless deployment on GCP, test implementation, Docker containerization, Redis caching, analytics features implementation.
Technologies: Python, CI/CD, Docker, Telethon, Google Auth Service, Redis, GCP
Software Developer/Architect, Data Processing and Visualization
Duration: 11-2021 to 03-2022
Summary: An open-source project for performing comprehensive loading tests on various data structures and libraries.
Responsibilities: Benchmark development, loading tests, data processing pipeline, data treatment, feature implementation, C++ addons creation, data visualization, documentation and paper authoring.
Technologies: Node.js, Ramda, Lodash, Immutable, Mori.js, C++ Addons, Underscore, Python, NumPy, MatPlotLib, Mayavi
Software Developer, TON-Based System
Duration: 09-2021 to 10-2021
Summary: Creation of an open-source TON-based distributed system with independent client-side and testing environment.
Responsibilities: Deployment scripts development, compilation scripts development, Uniswap bridge testing, TON contracts deployment, code refactoring, bug fixes.
Technologies: Node.js, Ramda, Solidity, Monet, TON Environment, Uniswap, Web3
Software Developer/Architect, Parser with AI for Subtitles
Duration: 04-2021 to 09-2021
Summary: A parser system with satellites and embedded proxy servers for recognition of subtitles in video using AI.
Responsibilities: Architecture development, feature implementation, AI model embedding, loading tests, AWS deployment, using MySQL for proxy paths and S3 storage, multi-core architecture, API development with Socket.
Technologies: Node.js, Ramda, Python, Redis, MySQL, AWS S3, AWS EC2, Bash
Software Developer/Architect, Secure Password Manager
Duration: 11-2020 to 04-2021
Summary: A user-friendly password manager offering secure centralized storage and management of passwords.
Responsibilities: Architecture development using Nest.js modules, new feature implementation, MySQL database design, API development, Bcrypt for password encryption.
Technologies: Nest.js, MySQL, Babel, TypeORM
Software Developer/Architect, DB Benchmarking
Duration: 11-2019 to 11-2020
Summary:
- Node
- js interaction with MySQL for database benchmarks and loading testing
Responsibilities: Architecture development, new feature development, lazy approach refactoring, results representation, loading tests, AWS deployment.
Technologies: Node.js, Ramda, Lazy.js, Monet.js, MySQL, AWS EC2
Software Developer, TMS Ticket Management
Duration: 03-2019 to 01-2020
Summary: Ticket management application (TMS) to manage various types of tickets across roles providing a centralized platform.
Responsibilities: New feature development, testing, SQL database error fixing, SQL Server maintenance.
Technologies: .NET Framework, ADO.NET, SQL Server, JavaScript