Реклама

Technologies

Programming Languages

Different tasks require the use of different programming languages. Here are the programming languages that we actively use in software development:

  • C++ (stl, qt)
  • C
  • Java (hibernate, spring, hivemind, jetty, tomcat)
  • Assembler
  • Python
  • PHP
  • Perl

Operating Systems

Operating system (OS) is the platform on which a software application is based. Thus, it is very important to choose an appropriate operating system for the future project.

Windows OS is the most popular and comfortable system for end users, so it is often chosen for client software.

At the same time, Unix OS is known for its unrivalled reliability, efficiency, scalability, flexibility, security and remote control features. So generally Unix is the best choice for the server part of the software.

Special attention should be paid to Linux OS, a free and open-source version of Unix. The latest Linux distributives often prove to be more functional and powerful than traditional Unix systems (for instance, Solaris).

In most cases, we use one of the following Linux distributives:

  • Debian Linux
  • Ubunta Linux
  • Redhat Enterprise
  • CentOS
  • Gentoo Linux

When developing embedded systems, we use uC OS-2 real-time operating system (RTOS).

Database Management Systems (DBMS)

We have used the following database management systems:

  • PostgreSql Server
  • Microsoft Sql Server
  • Oracle Sql Server
  • MySQL server
  • Versant OODB

In regular cases the optimal system to use is PostgreSQL. This is an open-source system, quite efficient, reliable, scalable and fast-evolving. It consumes an unbelievably small amount of resources in systems with low loads and at the same time is able to handle high loads. PostgreSQL works under Linux, FreeBSD, Solaris and Windows.

Microsoft SQL Server (MS SQL) is very widely used. In some projects, we use it as well. However, according to our experience, in most cases this solution is not very efficient and too expensive, and it only works under Windows. We believe that the use of MS SQL is justified only in cases where the project is already dependent on this system.

Oracle is a commercial database management system and practically sets a standard for relational databases. It works both under Unix/Linux and under Windows. We believe that Oracle should be used in large-scale projects with high loads. This is an expensive and resource-intensive solution.

MySQL is a widely used open-source database management system. It is highly efficient and not very resource-intensive. We find this system not reliable enough and difficult to operate, which is due to its wrong architecture. PostgreSQL is a preferable choice in all cases. MySQL should be used only if the project is already dependable on this system.

Our experience with different DBMS types and our knowledge of their specifics allows us to choose the best solution for every individual project.