When creating application based on architecture of micro services, a team needs to face up many challenges. -building easily extensible architecture of micro services. When we creating new service, we always need data from other service. To be able to receive that data, we only need to import light client, which is the interface of another service. -How to use HTTP protocol properly, to change it to our biggest assets, and do not attempt to hide it unnecessarily. -Which functionalities of monolithic application pull out first. How to use domain driven design, to model the business domain specific for each micro service ? -How to manage configuration and deployment of various services ? -implementing Circuit Breaker patter, using Netfix Hystrix library -real time monitoring of micro services -aggregating logs from many servers in one central point, and analysing them -creating documentation, which could be use as a client of each service