Back to case studies list
Back to case studies list

Placker

Placker is a project management SaaS from the Netherlands. A comprehensive tool for managing work across teams and projects. Used globally by 130k users including companies like Accenture and Expedia.

Key improvements
Scalability Maintainability Time to market
Case study

Challenge

Placker was already a mature SaaS product used by thousands of teams in over 40 countries around the world. Users love it because of the large feature set and tremendous flexibility. When we first saw it, we were impressed as well. Almost any option you imagine for a project/task management software - Placker has it!

An impressive number of features, introduced in the first few years, increased code complexity and added undesirable dependencies. This made the development of further features difficult and time-consuming. It also increased the effort required for maintenance and raised the entry threshold for new developers. Placker's architecture enabled a quick integration with Trello but at the same time closed it for further integrations.

Our challenge was to introduce an agile process of architecture refactoring to restore the product growth and make it extremely open to extending the feature and further integrations.

Project goals

Make SaaS open for multiple integrations
Reduce time-to-market for new features
Make the platform easier to maintain
Case study

Solution

  1. Maintaining a high speed of introducing new features and integrations required to implement a flexible, and easily extendible architecture. We also did not want to rewrite the application from scratch as the existing codebase was relatively new and complex.

    We have started with the introduction of an event-based architecture, that allowed us to decouple different parts of the codebase one by one.
  2. After having the initial message-driven architecture in place, we started to extend it by introducing a concept we called extensions. Extensions react to changes that happened in the system and can add reactions to that changes. Example: Trello extension listens for card changes and if it knows the card is also on Trello - it updates Trello with the new state.
  3. Thanks to the message-driven architecture we were able to introduce more improvements: queues and processing computing heavy changes asynchronously, monitoring of the changes (metrics with change types, customers involved etc) and adding new integrations (Google Calendar, Zapier, Slack).
  4. We have introduced an approach that is based on releasing features soon, gathering feedback from ourselves and initial users (features available as a beta version), and then, based on the feedback, we released a second, upgraded version to all users.

"Placker would not be in the good shape it is in today without Accesto. They have been critical to the client's continuous growth and success. In addition to technical expertise, their communication and reliability are both top-notch. Their team takes a pragmatic approach to problem-solving."

Reinder Visser
Placker, CEO
Case study

Outcomes

Our agile process of architecture refactoring resulted in a steady, 24% yearly decrease in software complexity. New architecture was introduced step by step, making Placker easier to maintain, develop and integrate with every iteration. After 18 months we managed to reduce the maintenance effort and development time for new features by 40%.

Time to market reduced by 40 %
Yearly decrease in complexity 24 %
Case study

Showcase

01_Gantt view
02_Card overview
03_Project board
04_Planner view
05_Track view
Case study

Technologies

Backend
  • PHP/Symfony
  • MySQL
  • RabbitMQ
  • Redis
Frontend
  • JavaScript
  • AngularJS
  • RxJS
OPS
  • Docker
  • DigitalOcean
  • DataDog
  • GitLab CI/CD
Quality
  • PHPUnit
  • Cypress
  • PHPStan
  • Sentry