SOFTWARE MIGRATION 

We transfer on a new technological stack both, whole IT systems and individual components.

This may be a transition to different hardware platforms or to some other programming technologies. Along with a transition, we identify the “bottlenecks” where performance drops down, and then perform the optimization taking into account the possibilities of new platforms and technologies. Further still, we provide technical documentation, conduct training for engineers responsible for software deployment. We can provide continuous technical support of the ported software.

Some of the subject related use cases:

Porting of database of corporate IT system (Moscow, 2018)

Transfer of a database from Oracle to PostgreSQL was done with preservation of all business logic implemented on DBMS level. In this case databases interacts with backend on Java. Plenty of optimizations are realized.

Technologies: Oracle DBMS, PostgreSQL DBMS, Ora2Pg

Porting and optimization of mathematical libraries for the "Elbrus" platform (MCST, since 2015)

Specialized libraries are adapted and optimized for efficient operation of applications on «Elbrus» processors, both original and widely used on other platforms:

  • OpenCV – computer vision library. Our specific optimizations have significantly improved the performance: e.g., when calculating the GEMM function (matrix multiplication), Elbrus processor with 800 MHz overtakes by 20% Intel x86 processor with 3.4 GHz
  • EML - library of mathematical functions
  • LibreSSL – the encryption library
  • Library of digital signal processing functions for specialized DSP coprocessor
Porting and optimization of programming technologies for the "Elbrus" platform (MCST, since 2012)

Our engineers have been porting several very popular software technologies on the basics of open source projects for Russian hardware platform underlying the «Elbrus» processors. With that some components of these technologies were implemented from scratch. Plenty of optimizations have repeatedly improved the performance. These endeavors give the green light to software applications and systems written on Java, JavaScript and C # to to run on "Elbrus"- based computer hardware. Work is continued, the details are here

  • Java virtual machine based on the OpenJDK project,  more than 10 versions has been already launched
  • JavaScript virtual machine based on two “engines” - V8 from the Chrome browser and SpiderMonkey from the FireFox browser
  • Implementation of C # language support based on Mono project
Porting of components of a corporate project management system (EU, since 2007)

As a part of reengineering of large commercial IT system for corporate project management was implemented:

  • Migration of user interface from C and Win32 API to Java and SWT library
  • Reengineering of application written on obsolete (1997) package of Visual Prolog v4.1 to contemporary state via transformation of proprietary language extension to the modern standard with the subsequent generation of Java code. As a result, an expansion of the supported back-end platforms to Win / Linux x32 / x64 has occurred

Technologies: С, Java, Prolog, SWT