Why CEE?
Central Eastern Europe (CEE) is an extremely fast-developing part of the world. Many companies have already seen the potential of the region and incorporated it into their development strategies. Both global corporations and start-up companies are bringing their assets to the region; over 2,000 Shared Service Centers (SSCs) are open in the region. These SSCs employ 640,000 people, many of whom are highly qualified engineers who bring innovative product development strategies to the region.
There are over one million developers in CEE. That’s 1.3 developers for every 100 people in the labor force in the region. Due to a mostly free and widely available regional higher education system, the region has many quality engineers who are highly valued in the job market across the world. There are 11 countries in the CEE region, with Poland producing the most engineers of all. Poland has over 250,000 IT developers, which is a quarter of the total number of developers in the region. Combining widely available higher education with a natural problem-solving culture makes CEE widely known for producing engineers that solve the most complex problems.
The high number of qualified developers in the region makes CEE a valuable destination for offshoring IT projects, and many companies have already recognized this. Another incentive for companies in the competitive pricing in the region due to fairly low living costs. While it does not have the lowest pricing, the region offers the perfect balance between the cost and overall quality of services; companies will get the best service for the least cost. In less expensive locations like South-East and Eastern Asia, the quality of services is more likely to suffer due to language barriers or significant time-zone differences. CEE has overlapping time-zones with the US, a similar cultural background, and a population that mostly speaks fluent English.
How The American Red Cross took its microservices to CEE – and succeeded
The American Red Cross (ARC) is a charity organization that provides services such as emergency assistance, disaster relief, and disaster preparedness education in 22 countries. It is staffed with over 12 million volunteers around the world and generates nearly $3 billion in revenue a year. An organization of that size has a large and complex structure. Communication between different subsidiaries is crucial to function, and different processes need their own separate solutions while simultaneously intersecting other solutions. Processes including but not limited to volunteer intake, disaster alerts, and promotion and assignment management need to be designed separately and merged into the Red Cross’ overall structure.
This is where microservice-based architecture comes in. This type of architecture allows complex applications to be broken into autonomous units that can be arranged as a set of loosely connected services. This modular approach enables easy and seamless incorporation of new functionalities and services into pre-existing systems, and it is scalable. These types of benefits brought The American Red Cross to use microservices as a base for some of their most critical processes.
One of the processes implemented with microservices was volunteer intake, a crucial process since Red Cross relies heavily on volunteers to pursue its mission. Redesigning the entire intake process for new volunteers was a major challenge, as over 150K new applicants needed to be processed. The process needed to be extremely user-friendly while also secure and in line with ARC internal policies, government laws, and local regulations. Using microservices ensured that each application was properly processed by the system and that all volunteers had the opportunity to contribute to the charity incentives of The American Red Cross. More information can be found in the full case study here.
The Red Cross cares deeply about its volunteers and their development, and their training and promotion systems are key elements of their HR management workflow. Redesigning and implementing the training and promotion system as a part of a microservice architecture was crucial to ensure the effectiveness and flexibility needed to process the 12 million volunteers.
Offshoring the entire process of developing the microservice-based architecture to CEE allowed The Red Cross to optimize their budget and significantly cut costs. The development was managed and conducted by an entirely Polish team, who produced a complex architecture on a reasonable budget. The Red Cross had access to a large pool of professional IT engineers capable of producing high-quality code, meeting deadlines, and finalizing the entire project seamlessly.
From monolith to microservices – that’s how start-ups scale up their products
Start-ups often begin with a monolith architecture to develop their minimum viable product (MVP) in the first version of their product. This approach ensures quick and easy development of a solution, reducing the time-to-market needed. While this is critical in the early stages of company development, the monolith architecture might not be as optimal long-term. Moving from monolith to microservice-based architecture is a natural path for many start-ups because the latter is more scalable. Microservice-based architecture allows more flexibility in processes, which makes it easier and faster to scale up products and companies.
Finding a suitable development team in a local or even regional talent pool can be tricky, and many start-ups decide to offshore the development process partially or completely. This approach is more cost-efficient and makes it easier to source teams from a larger pool. Since finding the right offshore team can be time-consuming, it is a good idea to cooperate with a US-based partner that has access to offshore developers. Many start-ups have adopted this approach and succeeded with their product and overall organizational development.
One of the companies that adopted this model with great success is Raise, a Chicago based start-up. Now it is the #1 gift card buyback and sell platform that enables third-party sellers to sell new or used gift cards. Raise’s entire system was originally based on Ruby, but the company wanted to adopt a Golang-based microservice architecture. Raise offshored the project to CEE, and offshore developers successfully transferred knowledge to the local team during implementation of critical new functionalities like the “Instant Order”.
As companies grow along with their products, they need an easy way to add new functionalities into their solutions. Microservices are one of the most efficient ways to achieve this. Raise’s decision to incorporate a microservice-based architecture in their development strategy achieved smooth product scalability. Onboarding an offshored team from Poland also enabled Raise to manage their budget more efficiently and gave them access to a large pool of highly experienced developers, eliminating the time-consuming task of sourcing local talent.
Offshoring microservice-based development to CEE turned out to be a strategically significant move that contributed to Raise’s rapid development and valuation of over $1 billion. The full case study can be found here.
There are countless other examples of start-up companies that have successfully adopted this strategy, but there is one that stands out from the crowd. SingleCare is a start-up from Boston, established in 2014, that developed a solution that makes prescriptions more affordable – a free prescription discount card. They’ve also achieved tremendous success by moving from a monolith architecture to microservices with the help of offshore developers from CEE. However, this company is unique because its entire system was re-designed and developed from the ground up with a new microservices-based architecture around the Golang ecosystem and migrated to a single page React.js application on the frontend. This approach created an architecture that enables easy and rapid scale-up of applications and business development. The full case study can be found here.
Autodesk: how an international corporation is offshoring microservices as a part of its global strategy
Autodesk is a multibillion-dollar corporation with multiple business lines and over 100 professional software products available globally. Its sales rose 25% year-over-year and reached a record of $2.57 billion in 2019. An organization of this size often relies heavily on a highly complex and bulky system to manage its processes; this makes it hard to augment the system with new functionalities over time using a traditional architecture approach. Transitioning to a microservice-based architecture makes it easier to integrate new units and functionalities into the existing core system. These new units and functionalities are able to fully interface with the global database and other services.
Adding new functionalities on top of an existing system was a core strategy for Autodesk to scale up their business and one of the factors that led to its rapid development in recent years, despite it already being a mature company. License management was one of the key processes added to the pre-existing architecture. License management deals with license numbers and customer and product databases, and its frontend is directed towards the end customer. This makes the user experience extremely important. The full case study can be found here.
Since Autodesk is a global company with a global core business strategy, they are constantly optimizing their processes in terms of budget, workflow, scalability, etc. Autodesk decided that outsourcing their microservice development to CEE was the best way to incorporate these new processes into their pre-existing system. Building a microservice-based architecture is a challenge that calls for highly experienced specialists, and CEE was able to deliver. Some of the best IT engineers with many years of experience in their respective fields worked to bring microservices on board. More information on the subject can be found here.
What’s common for all these companies – and what’s in it for you
While different companies have different approaches to this subject, the overall trend is clear. Companies seem to benefit from adopting microservices into their systems, regardless of company size, maturity, and existing business model. By gradually moving the architecture from a monolith approach to a microservice-based approach, companies are able to make their systems more flexible. Adopting an architecture that is designed for constant change and augmentation is obligatory for any company that wants to rapidly scale their business.
When planning to move to microservices, a good strategy is crucial for success. The first step to get a system microservice-ready is always a professional architecture review. The review establishes the current status of the software design and suggests next steps that need to be taken. When done correctly, such a review can provide a bullet-proof action plan to transition a system. Therefore, finding a reliable partner who can help migrate to microservices is critical in any development strategy. More information about how to take that first step and get a professional architecture review can be found here.