Scaling Up a Software Product: The Journey of Pipedrive

Oleksandr Shvechykov
Typical early-stage software product startups have a flat structure, consisting of one or a handful of teams, working closely together to develop a monolithic software system using agile methods. As the startup grows, the complexity of the software system and of the organization eventually reaches a point where a flat organizational structure and a monolithic software architecture become a bottleneck in the development of the product. Post-startup companies that reach this point face the challenge of re-structuring the organization and their software architecture in order to simplify the development, maintenance, and operation of the software system, while breaking down the organization into sub-structures with manageable communication overhead. This thesis analyzes the challenges faced by post-startup companies during this phase via a case study at Pipedrive.
The thesis reflects on the Pipedrive's journey from a monolithic architecture to a microservices architecture, and from a static structure consisting of teams with fixed areas of responsibility to a dynamic structure consisting of dynamic teams with time-bounded missions.
Graduation Thesis language
Graduation Thesis type
Master - Software Engineering
Marlon Dumas
Defence year