We’ve run 3 full cycles so far and something that we’ve yet to nail is the question of how to integrate designers and design work into these cycles. I’m looking to compare notes with others who might have experienced similar struggles:
In Shape Up, Ryan explains how Basecamp usually staffs two programmers and one designer on a project. The thing is that their designers aren’t what the industry typically refers to as a designer, at least in my understanding.
When a designer at Basecamp gets started on a project, they start stubbing a UI in un-styled HTML to figure out the affordances so that a programmer knows what endpoints will be needed and in which format, for example. As the project progresses, they then start structuring and styling the UI in its final form.
When a designer on our team gets started on a project, they start converting fat marker sketches or wireframes into high-fidelity design files in Figma. These Figma designs are then input to a frontend developer on the team, who takes them and starts building the final UI. It is our intention that the designer creates those designs with technical feasibility in mind, so that we don’t end up in a position where we have fixed time and fixed scope. At the same time, frontend developers are encouraged to give early feedback on designs and work with the designer to iterate over the Figma files.
The goal is for the designer to come up with a design that fits within the scope of the cycle and can be picked up by a frontend developer without the need to change many things. At the same time, we’ve always still made trade-offs and changes on designs in the coding phase, like deciding not to build a new dropdown-button component which would look better but take too much time and instead going for a simpler version of two buttons side-by-side.
So far, we’re very happy with the user interfaces we’ve shipped. But the final product almost never resembled the design files 1:1, to the dismay of the UI designers. And the back-and-forth between designers that own the UI look-and-feel and frontend developers that have to build it all was always stressful. Not to mention product managers who act as copywriters.
My best guess for what’s still broken in this process is that we’re piling on too many integration problems:
- Product managers, who come up with the fat marker sketch or breadboard, have to integrate with
- designers, who come up with the designed UI and have to integrate with
- frontend developers, who finally have to integrate with
- backend developers.
When changes to the shaping document are made as a cycle is ongoing, for example through scope cuts or refinements, there is a ripple effect throughout the chain outlined above. Depending on how far the cycle has progressed, the designer won’t have time to reflect the scope cuts in the design files. Then programmers working on the frontend don’t have a source of truth anymore for where specs are coming from: the pitch document or the design file? This has been an issue in every cycle we’ve done so far.
That said, there are some benefits to the design role as we have it and that I’d be hesitant to give up. Our designers do not just work on the delivery track, but also join PMs in discovery projects (when they are currently not on another project). They can sit in on customer interviews, help facilitate workshops and then be sparring partners to the PMs when it comes to shaping an idea. They can also create interactive hi-fi prototypes to help validate an idea in discovery (something I believe Basecamp does not see any value in). Those hi-fi prototypes are also a great tool for PMs to get stakeholders and other teams inside the company excited about an upcoming development project. For us, they have proven to be a useful tool this way.
I’d love to hear of people who’ve had similar experiences and found ways to improve the situation!