Mikhail M., Senior Software Engineer
Summary
- Certified Senior Go Engineer ( 12 years with Go, 19 years in Software Engineering: Kotlin, Swift, C/C++, and TypeScript) with experience in software engineer, team lead and software architect roles.
- Master’s Degree in Computer Science
- Designed and implemented a scalable multi-microservice backend for an enterprise AdTech CRM, integrating 10+ third-party services and streamlining client management operations.
- Built and deployed a billing system for a money exchange platform, integrating third-party payment systems and delivering a user-friendly web interface for seamless transactions.
- Optimized data processing pipelines by implementing quantiles on streams, enabling real-time analytics and supporting large-scale data operations for scientists and business stakeholders.
- Extensive background in data processing and reporting. Good abilities in SCM tools like Git, and in multi-threading and networking. Strong skills in Docker, gRPC;
- Certificated knowledge of Blockchain;
- Good abilities in cloud service platforms including AWS, Google Cloud, and MS Azure;
- Experience with DBMS, PostgreSQL, MySQL, MongoDB;
Main Skills
Programming Languages
Scala Libraries and Tools
Java Frameworks
Scala Frameworks
.NET Platform
C++ Libraries and Tools
Go Frameworks
Go Libraries and Tools
C++ Frameworks
UI Frameworks, Libraries, and Browsers
Mobile Frameworks and Libraries
JavaScript Frameworks
Android Libraries and Tools
JavaScript Libraries and Tools
Ruby Libraries and Tools
PHP Frameworks
Data Analysis and Visualization Technologies
Databases & Management Systems / ORM
Cloud Platforms, Services & Computing
Amazon Web Services
Azure Cloud Services
Google Cloud Platform
Web/App Servers, Middleware
Scripting and Command Line Interfaces
Operating Systems
Mail / Network Protocols / Data transfer
Methodologies, Paradigms and Patterns
Virtualization, Containers and Orchestration
Version Control
SDK / API and Integrations
Logging and Monitoring
Platforms
Third Party Tools / IDEs / SDK / Services
Message/Queue/Task Brokers
QA, Test Automation, Security
UI/UX/Wireframing
Other Technical Skills
Work Experience
Senior Software Engineer, Billing for Media Publishing Company
Duration: Jan 2024 – Jun 2025
Summary: Integration of 3rd party payment systems into existing billing for a media publishing company, providing features such as receipt verification, product activation, subscription tracking, notifications, and a dashboard for support and management teams.
Responsibilities: Requirements analysis, documentation, solution design, development, testing, deployment, CI/CD.
Technologies: Go, Postgres, Google Cloud, Docker, REST, Angular, Stripe, Google In-App Purchases, Apple In-App Purchases.
Senior Software Engineer, Taxi Ordering Portal
Duration: Apr 2023 – Dec 2023
Summary: Taxi ordering service with a web portal for the Middle East, including microservices for the backend, and dedicated areas for passengers, drivers, and management team, featuring cost calculation, live tracking, and map services.
Responsibilities: Requirements analysis, documentation, solution design, development, testing, deployment, CI/CD.
Technologies: Go, Postgres, Google Maps, AWS, gRPC, REST, TypeScript/JavaScript, React.
Senior Software Engineer, Advanced CRM for AdTech
Duration: Feb 2022 – Apr 2023
Summary: CRM for an AdTech company with a multi-microservice backend and a multi-client software, including REST and gRPC API to manage customers and their clients, with numerous integrations and data processes.
Responsibilities: Requirements analysis, technical documentation, user reference information, design tasks assignment, development, testing, performance optimizations, data preparation.
Technologies: Go, Kotlin, Python, JavaScript, Scala, Java, Gin, Echo, Chi, Gorilla Mux & Websocket, Gorm, Redis, Spark, Google BigTable & BigQuery, Dataproc, HTML, Docker, K8s, REST & gRPC API.
Senior Software Engineer, Project Portfolio Management Portal
Duration: Feb 2021 – Feb 2022
Summary: Project Portfolio Management Portal for the petroleum industry that manages various project types and programs, providing rich UI for analytical reports, and mobile tools for field data gathering.
Responsibilities: Requirements analysis, technical documentation, user reference information, design tasks assignment, development, automated testing.
Technologies: Go, Gin, Gorm, ReactJS, React Native, Expo.io, TypeScript, Swift, Java, HTML5, CSS3, PostgreSQL, Redis, ElasticSearch, Docker, REST API, RabbitMQ, FoundationDB.
Senior Software Engineer, Trading Visual Marks
Duration: Sep 2020 – Jan 2021
Summary: A web-based financial manager and trading client. The client provides modern Web UI and convenient workflow to manage and visualize trading assets, trends and financial info, supports integrations with 3rd-party service providers.
Responsibilities: Requirements analysis, technical documentation, user reference information, design tasks assignment, development, automated testing.
Technologies: Go, WebSockets, Redis, ReactJS, Expo.io, TypeScript, JavaScript, HTML5, CSS3.
Senior Software Engineer, Trading Risk Management
Duration: Feb 2020 – Sep 2020
Summary: Client-server software for trading risk management with real-time system updates and quick action features through Web UI.
Responsibilities: Requirements analysis, technical documentation, user reference information, design tasks assignment, development, automated testing.
Technologies: Go, WebSockets, TypeScript, JavaScript, Expo.io, ReactJS, HTML5, CSS3, MongoDB, Google Pub/Sub, Cloud Storage, BigTable, ChromeDP.
Senior Software Engineer, Slack FAQ
Duration: Sep 2019 – Feb 2020
Summary: The Slack application manages a database of questions and answers, with a management interface for administration and viewing usage statistics.
Responsibilities: Requirements analysis, technical documentation, user reference information, design tasks assignment, development, automated testing.
Technologies: Go, Nginx, ReactJS, HTML5, CSS3, JavaScript, TypeScript, PostgreSQL, Redis, Google Cloud Storage and mail services, Docker.
Senior Software Engineer, Work Coin
Duration: Mar 2018 – Sep 2019
Summary: Reward system using gamification, blockchain, and customer reviews to improve corporate staff productivity and satisfaction.
Responsibilities: Requirements analysis, technical documentation, user reference information, design tasks assignment, development, automated testing.
Technologies: C, C++, Go, MS REST C++ SDK, ReactJS, Docker.
Senior Software Engineer, Zeep Data Processing
Duration: Jan 2017 – Mar 2018
Summary: Software complex for processing large data volumes, calculating metrics, and preparing data for systems like Kafka, Nifi, and Hive, with a UI for system management and reporting.
Responsibilities: Requirements analysis, technical documentation, user reference information, design tasks assignment, development, automated testing.
Technologies: Go, Docker, Simple Web UI, Vue.js, PostgreSQL, Python, Java, C, Networks, Multiprocessing, Red Hat Enterprise Linux, Windows Server.
Senior Software Engineer, LBC Community website
Duration: Aug 2016 – Jan 2017
Summary: Classic Single Page Application for a private cycling club, allowing members to organize and communicate about trips, routes, and news.
Responsibilities: Analysis of requirements, preparation of technical documentation, microservices design, tasks assignment, development, testing.
Technologies: Go, Docker, Microservices, PostgreSQL, CockroachDB, gRPC, Consul, Ubuntu Server.
Senior Software Engineer, VDControl
Duration: Apr 2013 – Jul 2016
Summary: The tool designed to automate management of virtual infrastructure, virtual machines and networks. User interface features allow to simplify and accelerate the allocation of resources and application of basic settings to predefined templates, and, if necessary, to fine-tune them.
Responsibilities: Analysis of requirements, preparation of technical documentation, design, tasks assignment, development, automated testing of modules and UI.
Technologies: Go, Ruby, Cucumber, vSphere/PowerCLI, HTML/CSS/JS/SVG, Selenium, Networks, CentOS, bash, Windows Server, PowerShell.
Senior Software Engineer, Custom Web Chart Component
Duration: Jan 2013 – Apr 2013
Sammary: A cross-browser web component for displaying 2D diagrams and graphs using SVG.
Responsibilities: Analysis of requirements, preparation of technical documentation, design, task assignment, and development.
Technologies: JavaScript, HTML, CSS, SVG.
Senior Software Engineer, Elcomsoft Cloud Explorer
Duration: May 2012 – Dec 2012
Summary: A powerful and convenient tool for extracting, viewing and analyzing of user information from accounts and services in Google with support of secure authentication, encryption of results, multiplatform.
Responsibilities: Analysis of requirements, preparation of technical documentation, creating error reports, design, tasks assignment, development, software development code inspection and testing.
Technologies: C++, Qt Framework, Qt Creator, QMake, SQL, SQLite, HTML, JavaScript.
Senior Software Engineer, Qt Framework
Duration: Feb 2012 – May 2012
Summary: A cross-platform library designed to develop applications, UI and devices for various purposes, connected by a network and wireless technologies.
Responsibilities: Project contributor, analysis of requirements, preparation of technical documentation, creating error reports, code verification, modules development
Technologies: Visual Studio, Qt Creator, C++, QBS, SQL, JavaScript, Git, Windows, Linux, FreeBSD.
Senior Software Engineer, WebsitePanel (MSPControl)
Duration: Sep 2011 – Feb 2012
Summary: Open software distributed complex of enterprise level to provide and automate hosting services with the support of private cloud systems. Extensive control over web sites, virtual and physical servers, databases, mail servers, virtual and private networks, billing and integration with third-party services.
Responsibilities: Analysis of requirements, preparation of technical documentation, ensuring the implementation of tasks plan, code verification, design, tasks assignment on software development, software development.
Technologies: Visual Studio 2013, С#, ASP.NET, ASP.NET MVC, ASP.NET WebForms, WCF, HTML, MS SQL, Entity Framework, JavaScript, jQuery, XML.
Senior Software Engineer, Prognoz Platform
Duration: Aug 2010 – Sep 2011
Summary: A business intelligence platform for creating information systems that meet modern and key IT and economic requirements for BI products. The platform includes all the necessary analytical tools for solving management tasks, built-in advanced analytics, modeling, forecasting, interactive diagrams, charts, maps, data loading and analysis, reports; desktop, web and mobile applications.
Responsibilities: Analysis of requirements, preparation of technical documentation, ensuring the implementation of tasks plan, code verification, design, tasks assignment on software development, software development.
Technologies: Visual Studio 2013, STL, MFC, ATL, С++, MS SQL, Oracle, PostgreSQL.
Senior Software Engineer, Microsoft Dynamics AX 2012
Duration: Feb 2010 – Jul 2010
Summary: ERP-application, which allows to manage all areas of the modern company, such as financial management, supply, production management, equipment maintenance and personnel management.
Responsibilities: Analysis of requirements, management of the development team, preparation of technical documentation, ensuring the implementation of tasks plan, code verification, design, tasks assignment on software development, software development.
Technologies: Visual Studio 2010, STL, MFC, ATL, Microsoft Dynamics Development Workspace, X++.
Senior Software Engineer, Noma Virtual Drive
Duration: Sep 2009 – Feb 2010
Summary: Software product for Windows desktop virtualization. It allows users to run their "virtual" desktops from a local template or from a template on a network drive using a pre-installed set of programs on any Windows computer. It includes client and server. The server part of the software includes user management, server-side templates and desktops use the web interface, the client provides connection and desktop virtualization.
Responsibilities: Analysis and revision of requirements, code development on C++, advanced system programming in ОС Windows, code analysis of existing projects, unit test development.
Technologies: Visual Studio 2008, STL, MFC, boost, ATL, MadCHook, ASP.NET with C#.
Tech lead/System Architect, MeetUOnline
Duration: Dec. 2008 – Sep. 2009
Summary: A universal software product for business and personal communication of users. It allows to organize on-line meetings, conferences, chats, creation / planning / carrying out presentations with the possibility of providing remote access to the desktop, as well as remote control of the PC. Allows to store data (files, calendars, contacts) on a web server and synchronize them with a local PC, Microsoft Outlook, including plug-ins for IE, Office and Messenger.
Responsibilities: Management of the development team, generation of software requirements , creation of application architecture documents, supervision of developers’ work, development of plans and time estimates, checking and reviewing code, recruitment and training of new developers.
Technologies: Visual Studio 2005, STL, boost, loki, curl, ulxmlrpcpp, libxml++, Qt, ATL, WTL, Redemption, OmniOrb.
Engineer, MeetUOnline
Duration: Aug. 2006 – Dec. 2008
Responsibilities: Participation in development of XMl-RPC commands for interaction with the web server, BI analysis, software development, о time estimates
Technologies: Visual Studio 2005, STL, boost, loki, curl, ulxmlrpcpp, libxml++, Qt, ATL, WTL, Redemption, OmniOrb.
Education
National University, Master’s Degree, «Computer Science» (2001 - 2006)
Certification
- Coursera certificate «Go web-services development – language basis»
- Coursera certificate «Golang web-services development, part 2»
- Coursera certificate «Intro to Blockchain»
- Coursera certificate «IBM Blockchain Foundation for Developers»