My name is Mikhail Emelchenkov. I am computer scientist and economist by education, and by vocation I am an universal enthusiast who seeks and finds elegant solutions to non-standard problems. All my life I have been engaged in computer research, software development (applied, system, network, mobile, web), administration of network environments, project management, usability, design.
In the Portfolio and Resume sections you can appreciate my extensive experience and the scope of the technologies used.
My offer—a solution to your complex, non-standard, research problems with the help of information technology and engineering ingenuity. Personalized approach. Privacy Guaranteed.
Research and development in the field of mobile platforms and software. Android internals, adaptation for hardware, reverse engineering of applied and system software. Development of new applications.
Selection and development of software for the execution of business processes. CRM systems, computer telephony, VPN networks, virtualization. Integration modules for CRM and billing systems, e-commerce solutions. Telegram bots. Work on server infrastructure.
Projects that work directly in the browser. Development and support of HTML5 websites, e-commerce systems. Optimization for high loads. Development of modules for CMS. Domain registration, web hosting.
Project management combining the principles of a systematic approach and Agile philosophy. Full production cycle, from design to commissioning.
Challenges connected with legacy systems. Refine existing software by immersing in an outdated technology stack. Data conversion. Migration to new hardware, moving to virtual environments.
Solving the problem of a customer is a process relies on combining the principles of a systematic approach and Agile philosophy, the key stages of which include:
- Application domain research, clarification of the problem.
- Elaborating user stories, formation of product requirements.
- Conducting research to select appropriate engineering solutions.
- Continuous Integration process (development – deployment – feedback).
The process of Continuous Integration—a replacement for the traditional production, which has a beginning and an end. In today's world some previous business processes, legacy systems usually already exists. They should be organized into something new, meet the changing needs, to ensure the integrity of self-developing systems.
This is a complex work that requires extensive practical experience and knowledge of related disciplines, a synergistic component. The simpler and clearer the result looks, the more complex the process underlying it. God is in the details.
The need for technology is not only a business need, but also an act of contemporary art. In contemporary art the artist tries to express himself, to make innovations. Business is not much different from art with its needs for novelty and relevance. These needs have led the world to Digital Transformation, a method for optimizing business processes using digital technology.
Previously, the traditional approach was used—building an IT landscape around existing business processes. Now this is not enough. Digital transformation involves the restructuring of the enterprise to the needs of the “digital” world.
( Details… )
Imagine a sales department whose management is dissatisfied with the number of transactions made. In a company with a traditional approach it was decided to hire several more employees so that they have time to call more customers. And the company that embarked on the path of Digital Transformation decided to develop a Telegram bot that automatically accepts orders and invoicing bills based on stock balances. A traditional company increased its monthly maintenance costs. “Digital” not only did not incur additional costs, but also doubled its supply volumes due to the clear interface of the trading bot. Employees of the digital company ceased to be overloaded with calls and were able to come up with a new sales strategy and introduce new products. Profit has increased many times.
In-house is a term signifying close cooperation of external experts with customer’s staff while working on customer's internal projects on its territory. For many projects that do not have detailed technical specification this is the only appropriate way of development. For example, the development of one of our projects required more than 10 iterations (see “1C: Enterprise 8.3 and Billing Systems Integration Module” in Portfolio). In-house helped us successfully complete the project. With a fully remote work this would definitely not work.
Of course, many projects can and should be conducted from a remote location, by distributed team. However, for tasks that are closely integrated into the infrastructure of the company and its business processes an in-house is the only effective approach. Here are a few examples of such projects in which I was directly involved.
( Details… )
- Migration of the company from the 1C:Enterprise 7.7 ERP system to 1C:Enterprise 8.3.
In short, the specialist conducting the migration should not only be well-versed in the technical side of things, but also must understand accounting and be oriented in current legislation. This is necessary in order to find a common language with the accounting staff for whom the task is being solved. On the technical side migration is a complex and multifaceted process involving both updating vendor software as well as rewriting existing modules and configuration changes for the new platform. On the organizational side migration means understanding of all internal business processes of a company to avoid the occurrence of logical errors in the transition process.
- Implementation of instant mobile e-mail system, based on BlackBerry infrastructure.
The infrastructure is built on top of Windows Server, BlackBerry Enterprise Server (BES), Microsoft Exchange and BlackBerry smartphones. BES is a physical server that comes with a hardware key. Smartphones are devices that require manual binding to a BES server. But it is not enough to just give activated smartphones to employees. It is necessary to couch employees. Thus, an in-house is the only correct approach to solve this problem.
- Meeting the challenges of management and configuring of network routers Cisco, D-Link DES/DGS.
The specificity of such tasks is that local networks are often not fully linked to the Internet and you can access to them only from the LAN. In addition, when configuring switches and routers remotely, any mistake may become critical, and sometimes the only way to resolve misconfiguration is to connect an interface cable directly to the hardware. Therefore, perform network re-configuration, writing scripts for backing up switches configuration, monitoring systems, configuring VPN access and updating firmwares should be considered from the standpoint of in-house.
- Crisis management of the technical department.
There are situations when things go wrong and the customer needs to “restore order” of business processes, software, hardware, and in personnel policy.
The goal of coaching—train customer’s staff to work with the new software and, more importantly, explain methods of its effective use and bring understanding employees roles in the company.
- Hot-fixing abnormal situations (software and hardware failures) in emergency mode.
A typical example—the failure of server hard drives which entails a shutdown of the database server or the billing system. Such problems can be quickly eliminated only with knowledge of the customer’s internal infrastructure and with physical access to the equipment.