Software Architecture

Active Directory

A Windows OS service that include a broad range of directory-based identity-related services, provides facilitates working with interconnected, complex network resources.


Connector (bridge) for websites/mobile apps with your software - Facebook API, Google API, Twitter API, etc.

Design Patterns

Formalized best practices that the developer can use to solve common problems when designing an application.

Design Pattern examples

Observer, Iterator, Strategy, Factory, Singleton, Composite, Facade, Proxy, etc.


Stands for Dependency Injection, a technique for achieving loose coupling between objects and their collaborators, or dependencies. DI is a method for writing better code, DI-container is a tool to help injecting dependencies. 


Stands for Enterprise Service Bus and acts as a communication center in SOA. Translates requests into the appropriate message types and routes them to the appropriate provider.


A debugging proxy server application used for data monitoring, allows to see incoming and outgoing HTTP traffic from the computer.

HP Server

A server computer built by Hewlett-Packard, popular in usage HP Servers are: HP 9000, HP BladeSystem, HP Integrity Servers, HP MediaSmart Server, HP Virtual Server Environment, etc. 


A neural networks API. It can run on top of Tensorflow, CNTK or Theano. This library allows you to prototype easy and fast, supports both convolutional networks and recurrent networks and runs seamlessly on CPU and GPU.

Markup (formatting and processing of text)

XML, XSLTXPath, XMPP (for messaging).​


A particular way of designing software apps as suites of independently deployable services. This architectural method is considered ideal when you have to enable support for a range of platforms and devices – spanning web, mobile, IoT & wearables.

MS Exchange Server

A mail server developed by Microsoft that provides email, scheduling, and tools for custom collaboration and messaging service applications, runs exclusively on Windows OS.

Event Sourcing

An approach to data storage when all actions performed over an entity are stored in a sequence of events. It helps to keep a record of "hows and whys," "whats and whens" happened to a system.


A lightweight and highly scalable Java-based ESB and integration framework, which integrates 3 and more applications, provides more than one type of communication protocol.


Short for Model-View-Controller. Software architectural pattern for implementing user interfaces. An easy way to understand MVC: the model is the data, the view is the window on the screen, and the controller is the glue between the two.


Stands for Model–view–presenter, a derivation of the model–view–controller architectural pattern, used mostly for building user interfaces. 


Short for Model-View-ViewModel. A software design pattern, which is widely used in the development of UI-centric programs. Helps developers separate the Model, which is the data, from the View, which is the user interface. 


Object-oriented design patterns typically show relationships and interactions between classes or objects.


A сross-platform application programming interface, it includes a set of compiler directives, library routines, environment variables that influence run-time behavior, used for multi-threaded parallel processing, used on shared-memory multi-processor computers, etc.


Stands for Protocol Buffers, a Google's data interchange method for serializing and encoding structured data in an efficient yet extensible format, it involves an interface description language, is useful in developing programs to communicate with each other over a wire or for storing data.


Stands for Representational State Transfer, a an architectural style and a design for network-based software architectures typically used for web applications. 


An API, which uses HTTP requests to GET, PUT, POST and DELETE data.

RESTful web services

are REST Architecture based Web Services that are light weight, highly scalable and maintainable and are very commonly used to create APIs for web-based applications.


A REST Client for Android and Java that makes it easy to retrieve and upload JSON via a REST based webservice, allows to configure which converter is used for the data serialization. ​


Stands for Routing and Remote Access Service, a suite of Windows network services for managing the flow of data between network segments, for performing the services of a conventional router.

Development by