{ Simple Frontend }

The Power of Iterations

Learn about the many advantages of integration first approaches in the software development lifecycle.

Jeremy Colin Jeremy Colin
Aug 20, 2024 - 2 min read
#power of series

The power of iteration: I think many of us can relate to an ambitious and ambiguous project where interfaces and integration points are loosely defined at the start. There is a simple yet very effective solution you can put in place to navigate these.

I would call this the “integration-first” approach: even before building the complex systems, build the integration points first and connect them! Yes, this is already the recommended way for API integrations where you agree on a schema first and I would argue that you should go even further and in the first days of development of a new API, you should already put it in production behind a feature flag and return mock data. Not only will your frontend team love it, but it will also dramatically reduce integration problems down the road.

At Zalando, together with David Jones and Paweł Zaleski, we were designing an improved way to render content on our dynamic pages using a server-driven UI. This involved many systems and teams and after writing a long and abstract technical design document, I suggested we do a first quick and dirty integration to validate our assumptions.

To our pleasant surprise, when we put the first demo version live, it had the following positive side effects:

  • Team motivation boost: Seeing your design and code come to life helps overcome some of the “analysis paralysis” and shows that it can be done.
  • Management buy-in and trust: Being able to show what the final solution would look like gave them the confidence to continue investing in it.
  • Faster time to market: Our product counterpart was able to play with the solution and seeing it come to life so quickly actually helped them better slice the problem into smaller chunks that we could get to our end customers faster.

This is what the Minimum Viable Product (MVP) is all about and you can apply this pattern to many parts of the software development cycle!

Next time, whether you are designing a small utility or leading the technical design of a large and complex solution, try to integrate end-to-end super fast and iterate from there!

iterative feedback loop