3/8/2022 - #development #ecommerce #extensions #magento #management
by: Ceyhun Kaplan

The story begins like a fairy tale: once upon a time, there was a customer need for which we, an agency specialized in e-commerce development, thought of an answer. This need is regularly expressed by many of our clients: how can I quickly and efficiently organize my product categories on my e-commerce site?

Some answers have been brought by market players, but they are either very expensive or with little added value.
So we figured "why not develop our own extension with the Blackbird stamp"? This is how the fabulous adventure of our latest Front-End Visual Merchandiser module started!



Blackbird's genesis is an interesting parallel to introduce the premises of this beautiful story. It all starts with a problem that every expert has encountered on Magento 1.x: how to structure, organize and evolve content without having to do specific development each time?
Anthony and Jérémie started from this problem to draw the outlines of a module that has become essential for many Magento agencies and advertisers: Advanced Content Manager. It was the butterfly effect! A few months later, Blackbird was born around ACM with the idea of developing solutions to help the Magento community worldwide.

The similarity with the development phase of Visual Merchandiser seems obvious. Through his interventions on dozens of merchant sites, Anthony has the same click. Why not develop this Magento VM extension that would make administrators' lives easier? The idea is first discussed around the coffee machine, then we reserve a time to brainstorm, then we talk to our customers, then we organize a kick-off, then we validate the scope of the MVP, etc. The machine is launched!


Internal projects in companies are generally very complex to prioritize because our efforts are naturally directed towards our clients' priorities. But here, nothing can be done about it; we are determined to launch and maintain a constant energy on this project because the stakes seem to be high!
The VM project is taking shape in parallel with a reorganization of our Extension division. Recruitment process, training of new developers, technical design, module mock-up, etc. All these phases are based around a dedicated team:

  • Lisa (product manager)
  • Anthony (technical director)
  • Thibaud (developer)
  • Bruno (developer)
  • Robin (artistic director)

The first few weeks are promising: the design is done in parallel with the first developments, the initial choices are refined, adjusted, technical stack changes are made, mistakes are made, corrections are made. The PDCA turns at full speed.

Rather than recounting a project that was carried out brilliantly and where, as if by a miracle, the golden triangle was respected, I will focus on 5 points that revolve around one main mistake: underestimating the complexity of the project.
We thought we had defined a set of precise tools and methodologies to avoid falling into the trap of underestimation:

  • Break down the tasks as much as possible
  • Estimate the workloads according to the Fibonacci sequence
  • Capitalize on previous estimates
  • Set up Risk and Imprecision factors
  • Define users-stories

The project started on a good basis: a well-tried methodology for each phase of the project with an Agile approach to guarantee adaptability to the evolving needs. And yet, we still made a mistake. Damn!

After several weeks of taking a step back, a Project Review meeting and long nightly reflections, the evil seems multifactorial.

Here are the main mistakes we made:

1. Forgetting the project management paradox

The further along you get in a project, the more mature you become. However, the further along we are, the less we have the ability to change the project. Choices were made too early in the project, when our maturity was not sufficient to take the best decision. We must therefore always keep in mind that the decision that seems obvious at the beginning can naturally be questioned along the way.

The project management's paradox

2. Neglecting the analysis and design phase

The main mistake of this stage? Thinking that the analysis and design of a project "ends" at a given moment. A project is dynamic, it lives in time, it evolves, it mutates. It is sometimes necessary to take a step backwards to take three steps forward. This phase of analysis and design of a functionality is not necessarily compressible. It must sometimes mature over time, adjusting with the experience we build up while working. Limiting this step in time is an old reflex: "we design then we develop". This so-called V-Model approach is generally doomed to failure in R&D projects.

3. Reduce the safeguards of a project

In project management, safeguards are there to protect against errors. The implementation of these means of control requires a significant effort: definition of KPIs, management processes, regular deliveries, seniority of the teams, dedicated project manager, test and learn, monitoring dashboard, etc. All of these safeguards are useful, but they are sometimes dispensed with in internal projects. The result is clear: task tracking, respecting estimates and deadlines, and adapting the functional scope are compromised without these safeguards. Good practices are well known, but striving to apply them and having them applied is sometimes seen as an option. This is not the case: apply your best practices to all your projects, you will win!

4. Not taking enough distance

A lack of perspective, inaccuracy in analysis and bias in decision making are all consequences triggered by this situation. In this project, we were so eager to get things moving that we forgot the most important thing: testing the module in a realistic context.
"If it works on my computer, it will work in production" is the sword of Damocles for any developer. As soon as deadlines get shorter and we want to go fast, we unconsciously take shortcuts to reduce the duration of the tests. We lacked foresight at this stage of the project. We should have anticipated our tests on several different contexts: many products in the catalog, complex server environments, specific product types, specific developments, etc. This lack of lucidity had a very simple cause: keeping our head right in the handlebars without taking a step back. Our advice? Multiply the safeguards in the project management methodology, again and again!

5. Forgetting to test and have someone test it

The best way to develop the wrong product is to lose sight of the need. Blackbird started from a very specific need to imagine the features of this module: to make the administration of categories on Magento easy.
This need was refined with the production of the first lines of code. The approach of the product we wanted to create stumbled between the technical and the functional. But who are we forgetting in all this? The end user! He is the one who will allow us to make the optimal decision when we are faced with a dilemma. Involving the end-user during the creation of a product or service is energetic (see the user-centered approach), but the benefits are multiple:

  • collect feedback;
  • adjusting one's choices;
  • remove the superficial;
  • add the essential.

The first feedbacks at the release of the module allowed us to adapt the features, but we should have done it earlier in the project.

Each project is a unique story that doesn't resemble the last, let alone the next. Whether it's a redesign project, a platform migration or an e-commerce site launch, it's always a new adventure of unknowns and discoveries!
The history of our Visual Merchandiser module is littered with unforeseen events and difficulties, but the main thing is there: a tool that is useful to all, intelligent and that meets the expectations of our customers!

Write your comment

for take-off?

Blackbird is a web agency specialized in the development of eCommerce websites. We are Magento Experts and we offer our services and advice for e-marketing, strategy, branding, deployment and methodology.

+339 50 66 21 38

Legal terms
Agency 30, Avenue du Rhin
67100 Strasbourg