Project types Tip icon representing a lightbulb

“Intelcom” portal

November 2012 – December 2013 work

Enterprise portal of SPC “Intelcom”

The logo of SPC Intelcom's enterprise portal containing a stylized image of the letters "i" and "c" in a square frame with rounded corners

Information system with a client-server architecture, written and maintained from scratch by myself alone.
The key functionality of the system includes managing the structure of the organization, the corporate phonebook, conducting tenders and contracts of the organization.
The server part of the system is an ASP.NET application with the service layer implemented with the WCF RIA Services technology.
As a data storage, a database under the control of MS SQL Server DBMS is used, the data access layer is implemented using the ORM Entity Framework. Database development is carried out according to the Model-first principle using the EDMX schema.
The client part of the system is a Silverlight application divided into separate modules that encapsulate the implementation of individual sections of the system. Dynamic loading of modules on demand is carried out using the Prism framework.

Relevant workplaces

What has been accomplished

  • To create a full-featured information system by myself alone in a relatively short period of time
  • Establish a regular release of new versions of the system, accompanied by changelogs and hints for users
  • Develop a customizable user’s desktop using widgets implemented on the side of individual system modules; at the same time, the modules themselves are loaded on the client device only at the moment of transition to the corresponding section of the system

What could have been improved

  • Сross-browser compatibility: Silverlight only worked in Internet Explorer
  • Performance of individual application pages with relatively large amounts of data

Relevant skills

.NET ASP.NET C# Entity Framework HTML LDAP MS SQL RIA Services Silverlight SQL WCF XML BRD DB architecture documentation interview IS architecture icons UI/UX

ACRF's Collegium

January 2013 – August 2018 work

Support system for the meetings of the Collegium of the Accounts Chamber of the Russian Federation

The logo of SPC Intelcom's enterprise portal containing a stylized image of the letters "i" and "c" in a square frame with rounded corners

This information system is intended for planning meetings of the collegium, preparing materials for them, managing the workplaces of meeting members, as well as synchronously displaying meeting materials on the central screen of the meeting room and workplaces of meeting members.
The system is a software package that includes a service, a client web application and a native desktop application.
My work on the system is divided into two stages: as a contractor while working at Intelcom and as a stakeholder at CEAIT SP.
By the time I started working as part of a small development team, the system had been around for some time, so I had to start by looking at the existing source code.
In the course of work, the system was refactored, and then the components were rewritten using a more modern technology stack: replacing Silverlight with ASP. NET MVC, and Windows Forms with WPF.

Relevant workplaces

What has been accomplished

  • Refactor the code to reduce the level of “magic” in it
  • Design a new version of the system while maintaining backward compatibility for the transition period of phased replacement of system components

What could have been improved

  • Transfer the system to a cross-platform technological stack in order to prepare it for import substitution of software and hardware
  • Replace the mechanism for sharing content over the network with a more performant one

Relevant skills

.NET ASP.NET Bootstrap C# CSS DevExpress DevExtreme DI Elasticsearch Entity Framework HTML JavaScript JQuery JSON LDAP MS SQL MVC refactoring REST RIA Services Sass Silverlight SQL WCF Windows Forms WPF XML BRD DB architecture documentation interview IS architecture IS audit icons UI/UX

ACRF's Helpdesk

January 2013 – December 2013 work

Helpdesk system of the Accounts Chamber of the Russian Federation

Helpdesk-system with client-server architecture, written and maintained by myself alone from scratch.
The system is intended for registration and processing of requests to the technical support service of the Accounts Chamber users.
The server part of the system is an ASP. NET-application with implementation of the service layer using WCF RIA Services technology.
Database under the control of MS SQL Server is used as a data storage, data access layer is implemented using the Entity Framework ORM. Development of the database is done according to the Model-first principle by means of EDMX-scheme. The client part of the system is written in Silverlight.

Relevant workplaces

What has been accomplished

  • To create a full-featured information system by myself alone in a relatively short period of time
  • Develop a flexible system for controlling the route of a request depending on its parameters

What could have been improved

  • Сross-browser compatibility: Silverlight only worked in Internet Explorer

Relevant skills

.NET ASP.NET C# Entity Framework HTML LDAP MS SQL RIA Services Silverlight SQL WCF XML BRD DB architecture documentation interview IS architecture icons UI/UX

Legal acts expertise

October 2014 – August 2018 work

The system of expertise of legal and regulatory acts projects by the Accounts Chamber of the Russian Federation

Minimalist image containing a white sheet of paper with black lines of text; on top of the sheet is a magnifying glass, the black frame of the lense of which is three-quarters painted in the corporate red color of the Court of Accounts, forming a stylized letter “c”

The information system is designed to register the results of expertise of legal acts projects submitted to the Accounts Chamber of the Russian Federation.
The system is a program complex with client-server architecture. The client is a web application developed using ASP. NET MVC, which interacts with REST-service, that provides operation with the data stored in the database under the control of MS SQL Server DBMS.
The system includes several modules: a module for recording the results of expert review of draft laws and regulations, a module for integration with the interagency electronic document interchange system, a module for integration with the state financial control portal, and an analytical module for reporting.
My work on the system is divided into two stages: as a contractor during my work at Intelcom and as a customer at the FSI CEAIT SP.
I developed and implemented the first version of the system by myself, during the further evolution of the system I was in charge of a small team of two to three developers.

Relevant workplaces

What has been accomplished

  • Create and implement the first version of the information system all by myself
  • Develop a simple, responsive client application with an intuitive user interface
  • Implement mechanisms for creating and modifying the database structure using migrations, as well as procedures for initializing and controlling the integrity of reference catalogs using custom logic

What could have been improved

  • Transfer the system to a cross-platform technological stack in order to prepare it for import substitution of software and hardware

Relevant skills

.NET ASP.NET async Bootstrap C# CSS DevExpress DevExtreme DI Entity Framework git HTML integration JavaScript JQuery JSON JWT LDAP Less MS SQL multithreading MVC refactoring REST Sass SQL TypeScript XML BRD DB architecture documentation interview IS architecture icons UI/UX

ACRF's CAC

March 2015 – August 2018 work

Information system " Control Activities Complex" of the Accounts Chamber of the Russian Federation

It is the key information system for automating the activities of the Accounts Chamber. The main features include the formation of an annual plan of activities (inspections) and control of its execution, preparation of materials for inspections, recording the results of their implementation, and report generation.
In this project I participated in the formulation of technical specifications for the system, was a member of the acceptance committee, participated in system tests, dealt with operational issues, developed solutions for problems faced by system users, reverse engineered the system because even its developer could not always say how it operates, made data extracts for analytical purposes.
The version of the system that was functioning at the time I joined the Accounts Chamber was developed using C++ Builder with an Oracle database and had a very high bus factor. After some time it was decided to modernize the system by transferring it to a more modern and import-independent technology stack: Java backend, client web application and PostgreSQL database.
In the process of modernizing the system, I participated in the formulation of requirements, engineering, system design, and testing of functional prototypes.

Relevant workplaces

What has been accomplished

  • Played a key role in the modernization of the system: engineering, design, testing and roll-out of the new version of the system
  • Addressed the analytical needs of the Accounts Chamber’s management in the absence of the necessary system functionality

What could have been improved

  • Improve performance of some system sections through asynchronous and multithreaded processing of large amounts of data

Relevant skills

Oracle RDBMS PostgreSQL reverse engineering BRD data analysis interview IS architecture IS audit tech spec IS adoption testing UI/UX

State Financial Control Portal External link icon

May 2015 – August 2018 work

State information system “Official Internet website of the Russian Federation for publishing information on the implementation of state (municipal) financial audit (control) in the sphere of budgetary legal relations”

Minimalistic image of the ruble sign, the lower part of which is looped, forming an infinity symbol

This information system is meant for publishing information on financial audit and control carried out by various levels of authorities.
In this project, I played the role of a stakeholder: I participated in compiling the technical specifications for the system, approved the project documentation, took part in designing the system user interface, and was also a member of the acceptance committee and participated in system testing.
In addition, I was involved in the roll-out process of the information system and participated in the legislative support of the system operation processes, ensured technical procedures of data exchange with other systems of the Accounts Chamber.

Relevant workplaces

What has been accomplished

  • Played a significant role in launching a system that increases the transparency of budget expenditures
  • Ensured the implementation of integrations necessary for the system’s functioning

What could have been improved

  • Simplify the process of publishing information in the system
  • Increase the regularity of information entry and the quality of data submitted by control bodies at the regional and municipal levels (e. g., introduce real responsibility for non-posting of information, conduct ratings of control bodies based on the system data, introduce KPIs for their management)

Relevant skills

BRD IS architecture tech spec IS adoption legal acts testing UI/UX

ACRF's Reporting

January 2017 – August 2018 work

Information and analytical system “Reporting of the Accounts Chamber of the Russian Federation”

The information system was developed by myself in a very short period of time (less than three weeks). Further development and support of the system was carried out by a team of two people.
The purpose of the system is to generate analytical data on the key characteristics of the Accounts Chamber’s activities. The data of this system is also used to assess the efficiency of the Accounts Chamber inspectors.
Most of the data necessary for functioning is obtained through integration with other information systems (the system " Control Activities Complex", the system of expertise of legal acts projects), as well as with the aggregator of the Accounts Chamber staff information (combines, deduplicates and checks the integrity of data from the HR system, telephone book and LDAP-directory), also written by me.
Technically, the system is an ASP. NET Core MVC with a PostgreSQL database.

Relevant workplaces

What has been accomplished

  • Develop and launch the information system on my own in a very short period of time
  • Develop a simple, customizable and performant application using an import-independent technology stack
  • Assure the relevance of the information system by tying the Accounts Chamber employees’ KPIs to the indicators calculated by the system

What could have been improved

  • In pursuit of the canons of clean and SOLID code, I overcomplicated the system architecture, which increased the effort to expand the list of analytical indicators calculated by the system

Relevant skills

.NET ASP.NET async Bootstrap C# DevExtreme DI Entity Framework HTML integration JavaScript JQuery JSON LDAP MVC PostgreSQL REST Sass SQL XML DB architecture IS architecture icons UI/UX

FSIS FRDP External link icon

September 2018 – March 2021 work

Federal State Information System “Federal Register of Disabled Persons”

An image containing a stylized capital cyrillic letter "f" with the letter "r" inscribed in the left part of it and the letter "e" in the right part of it

This information system is used to register information about people with disabilities, publish information about the social support system for such people, and automate processes related to the realization of the disabled people’s rights.
My role in this project was to define the directions of the system development, participate in the formulation of technical specifications, testing, implementation and relevant regulatory support.
A major step was the creation of a service for registering and checking information about vehicles transporting people with disabilities, which made it possible to eliminate the need for disabled people and their relatives to receive paper “disabled person” signs for vehicles.

Relevant workplaces

What has been accomplished

  • Played an important role in development and increasing the relevance of the system
  • Ensured the development and launch of an electronic registration service for vehicles transporting disabled persons

What could have been improved

  • Eliminate the need to place duplicate information in different information systems of the social sector

Relevant skills

IS audit tech spec assignments decision-making IS adoption legal acts planning supervision testing

EGISSO External link icon

September 2018 – August 2022 work

Unified State Information System of Social Support

An image containing a stylized capital letter "e", each horizontal line of which is painted in the corresponding color of the flag of the Russian Federation: white, blue, red

An information system designed to automate the processes of assigning social support measures, registering information about recipients of social support measures, and publishing information about the social security system of the Russian Federation.
My role in this project was to determine the directions of the system development, participate in the formulation of technical specifications, designing, testing, implementation and relevant regulatory support.
The key stage of the system development was the creation of a subsystem for the establishment and payment of social protection (support) measures. This subsystem makes it possible to automate the processes of processing citizens’ applications for support measures, obtaining information, verifying it and making decisions on the assignment of support measures. In addition, this subsystem is responsible for informing citizens about their rights to social support measures arising in the event of certain life events, such as the birth of a child or the onset of a certain age.

Relevant workplaces

What has been accomplished

  • Played a key role in the development and increasing the relevance of the system
  • Ensured the development and launch of a service for proactive informing of citizens about their rights on social protection measures

What could have been improved

  • Simplify the process of posting information to the system
  • Establish a self-regulating control mechanism for the placement of information on social support measures at the regional and municipal levels: currently it is “pedal-driven”, meaning that it only works if there are motivated people at the federal level who tirelessly monitor the quality of the information being placed.

Relevant skills

BRD IS architecture IS audit tech spec assignments decision-making IS adoption legal acts planning supervision testing

Social Analytics

August 2020 – March 2021 work

System of building analytical reporting in the social domain

Minimalistic image of the ruble sign, the lower part of which is looped, forming an infinity symbol

A simple BI-system for calculating and displaying analytical indicators based on the data loaded into it.
The key task of the system was to meet the needs of the management of the Ministry of Labour of the Russian Federation to regularly receive up-to-date information on the key performance indicators of social sector organizations.
I managed to develop the system in two weeks, and within another week I was able to prepare and approve the regulation for the system’s operation to ensure that it was filled with data.
Technically, the system is an application on ASP. NET Core MVC with a PostgreSQL database.

Relevant workplaces

What has been accomplished

  • Create and launch an information system all by myself in a very short period of time
  • Develop a simple and productive application using an import-independent technology stack
  • Ensure that the data in the information system is up to date by passing the regulations for system operation and creating a channel for operative communications with all participants of information exchange

What could have been improved

  • Due to severe time constraints on the system development, it was not possible to pay sufficient attention to the graphic design of the system; the interface of the system would have been desirable to be improved, but there was no opportunity to do so later on
  • Replace manual data loading mechanisms with integration with relevant information systems

Relevant skills

.NET ASP.NET async Bootstrap C# DevExtreme DI Entity Framework HTML JavaScript JQuery JSON MVC PostgreSQL REST Sass SQL XML data analysis DB architecture IS architecture icons Material Design UI/UX

My Export portal External link icon

February 2023 – … work

Information system " Single Window" in the sphere of foreign trade operations

Image containing a symbol consisting of triangular segments in gray, blue and red; to the right of the symbol there is the inscription "My Export"

The “My Export” platform acts as a single entry point for exporters to receive state and commercial services.
The system’s portal provides access to an extensive catalog of services that can be applied for through a system’s unified account.
My role in this project is to build efficient processes of developing new features and refining existing ones.

Relevant workplaces

Relevant skills

IS architecture IS audit assignments decision-making legal acts planning supervision

WoW Bots

October 2015 – May 2016 personal

Bots for World of Warcraft

Image of the capital letter "m" against a square with rounded corners and amber-yellow gradient filling

A set of bots for World of Warcraft to automate various tedious game activities. All bots worked inside the HonorBuddy shell, which took care of most of the concerns related to the injection into the World of Warcraft game process.
Creating these bots was a non-trivial task: HonorBuddy supported a narrow subset of the .NET framework, there was almost no documentation, so I constantly had to reverse-engineer and write auxiliary addons for WoW in Lua for some tasks, and all this had to be done in a way that wouldn’t trigger WoW’s bot detection system.

Bot for managing inventory, character bank and guild bank

This bot would log on to each character from the configurable list and perform a number of actions: put extra ingredients and money into the guild bank or character bank depending on the settings, craft valuable items from the list with customizable limits, auction items, collect money from the post office for items sold and items returned from the auction, and a bunch of other little things.

Bot for training and catching battle pets

This bot could form a roster of battle pets from the general collection according to the settings, form effective teams of pets, conduct pet battles with the capability of specifying battle tactics for each family of pets using a self-written scripting language, catch pets that are not yet in the collection or of better quality than the existing ones.

Resource gathering bot

This bot was dedicated to farming resources according to a list set up in its settings. It received the location of resources from a self-written service that parsed data from the Wowhead game database. Having received the spawn points of the necessary objects, the bot built an optimal route and went to collect them. The collection continued until the timer expired or until reaching the limit on the number of resources collected.

Bot for simultaneous launching of multiple bots

HonorBuddy could only run one bot at a time (one mode of operation), so I had to write a bot that could switch from one mode to another depending on the game situation and set of conditions, effectively allowing multiple bots to run simultaneously.

A set of combat bots for different character classes

These bots were dedicated to efficient combat management. For each class, I programmed optimal skill rotation for different combat situations (one target, multiple targets, lots of targets, etc.), as well as special routines to handle complex combat situations ( battling other players, using skills to get out of different types of control, etc.).

What has been accomplished

  • Created a number of effective bots that accomplish their tasks and have never once triggered the game’s anti-bot defense system
  • Developed combat routines that consistently ranked number one in damage dealt or healed damage rankings
  • Earn a lot of in-game gold
  • ????
  • PROFIT!!!

What could have been improved

  • Not to use HonorBuddy

Relevant skills

.NET ASP.NET async C# HTML integration JSON Lua multithreading MVC REST reverse engineering Windows Forms UI/UX english B2 English<->Russian

RimWorld Mods External link icon

October 2020 – … personal

A collection of modifications for the RimWorld video game

Stylized image of the word "RimWorld"

Mods for Rimworld — colony simulation game by Ludeon Studios.
My mods are aimed at reducing micromanagement in the game, i. e. automating some game mechanics: automatic distribution of colony members to work shifts, assigning types of work depending on the abilities of each colonist, automatic selection of equipment depending on the characteristics of the colonists and external conditions, etc.
The creation of these mods required mastering the Unity game engine and the executable code injection mechanism.
Also, often there is no possibility to see the source code of a particular modification, compatibility with which must be ensured, so I have to reverse-engineer and decompile.

What has been accomplished

  • Create game modifications that make gameplay more enjoyable for me and popular with tens of thousands of other players

What could have been improved

  • Add compatibility with a larger number of popular mods

Relevant skills

.NET C# DI Harmony Unity raster UI/UX english B2 English<->Russian

My personal website External link icon

November 2022 – … personal

Mikhail Aronov's personal website

Image of the capital letter "m" against a square with rounded corners and amber-yellow gradient filling

A personal website where I talk about myself, my career path and the most important projects for me. Technically it is an ASP. NET MVC application running in a Docker container.

What has been accomplished

  • Created and deployed a website that meets my current needs
  • Organized information about my life’s journey in a single resource

What could have been improved

  • Be more humble ;)

Relevant skills

.NET ASP.NET C# DI Docker HTML JavaScript JSON MVC Tailwind raster UI/UX vector english B2 English<->Russian