What evidence can you share that demonstrates the impact of the engagement?
We’ve only worked with a couple of other development firms, but, from our perspective, the thing that worked well for this engagement was how dedicated they were. We had both a designer and a developer from thoughtbot that were singularly focused on our project. This brought a level of focus that was critical to making our time with them successful. The designer and developer were also both incredibly talented and diligent in their workflow.
For example, our developer was excellent at documenting every single change that was made. As a result, we now have a codebase that any other developer could step in and quickly understand because it’s so well documented and organized. That level of professionalism was extremely refreshing and distinguishes thoughtbot from other providers.
The other element of the engagement that helped a lot was the level of collaboration between the designer and developer. There was a constant flow of communication, and every time the designer worked on a deliverable, they confirmed the feasibility with the developer. If there was ever a moment when the design was a bit off, they could make adjustments very quickly. It was amazing how in-sync they were.
How did thoughtbot perform from a project management standpoint?
We had an exceptional working relationship with them. thoughtbot follows an iterative design and development process, meaning that they didn’t lay out a schedule for the whole engagement at the very beginning. It’s a week-by-week process.
We used different tools, like Slack and Trello, to stay in constant communication. We were tracking progress with them all day, every day. Because we were always on the same page, we were able to test out features that they had developed in real-time. Having a small team also helped with this.
There was a tight feedback loop that we maintained throughout the engagement. Every morning, we’d have a standup meeting to plan out the day, and, at the end of the week, we’d have what they called a “retro” meeting. This was typically 45 minutes of discussing the successes and challenges of the week with some planning to improve the following week. Those meetings always brought the week together in a thoughtful, organized way, and we always felt prepared going into the next week as a result.
What did you find most impressive about them?
The standups and retro meetings were helpful because they provided an open forum for us to look critically at our performance. They also gave us the chance to make adjustments as needed, relative to our timeline and budget. Whenever we were falling short in an area, we were able to make the best decision to get us back on track.
Working with thoughtbot was, overall, a wonderful experience. I can’t say enough great things about the entire team, their process, their workflow, and the quality of the code. They have an excellent team of developers working there.
Are there any areas they could improve?
There were a lot of unknowns coming into the project that ended up delaying our timeline. I don’t know if these could have been avoided; I think that’s just the nature of working with an existing codebase.
They struggled to make accurate predictions at times, despite their best efforts to review and dissect the code at the beginning. In that regard, the timeline did slip, but it wasn't due to a lack of effort or a lack of programming knowledge.
In general, they had a great sense of what could be accomplished in a given week. They were also very helpful in guiding us through pivots that we had to make because of new content or information that we encountered along the way.
Do you have any advice for potential customers?
Getting the most out of working with thoughtbot will come from having a tight feedback loop between your company and their team. That’s one of the things that we did well, and I’ve been told that it doesn’t always happen with their clients. Usually, clients take more of a hands-off approach, whereas we—my business partner and I—were working alongside them all day long.
That created a strong working relationship and allowed us to maximize the output during the time we had with them. I would highly recommend maintaining that level of engagement when working with thoughtbot.