Solutions Builder
Management of libraries of features, to combine together to create project proposals
I led a small team that was tasked with creating a new internal tool.
The purpose for Solutions Builder was to centralise features and tools used to create proposals for Shopify website builds.
Previously the details of features where all contained within separate Google Docs, and where manually copied from each into a proposal.
Part of the process also required the creation of a Quote spreadsheet to quote for the project.
This was all managed by a single person, and they where becoming a bottleneck, so we were asked to put together a solution that would allow them to centralise all the details of the features, and have it be able to generate the quote for them, and having a single place to copy feature details from (in one go) to be added to a proposal document, allowing for a team to be responsible for quote generation, rather than a single person.
Feature Management
One of the key requirements was having a central place for the features to be stored, so that they could be easily be added to projects, but we went a bit further with this section.
We added the ability to create feature types, which could have functionality added to it, that would be common for a feature of the same type (eg Email, SMS, etc), and then against each feature within that type mark whether it had that functionality or not, allow them to see a feature comparison list, to make it easier for them to see which feature best suits the merchants needs.
Against each feature they can also add teams against them, and set the hours requirement from each team for any feature, making the cost sheet auto populate for each feature.
Project Management
A project has the standard thing, of being able to attach features to it, which was the core part of the Project management, but the functionality added went above that.
When a feature is added to a project, its hours are automatically added to the cost sheet, but we gave them the ability to override the hours of any team on any feature on a per project basis, to account for anything out of the ordinary.
On top of that, they can create bespoke features, which allows for non standard features to be added to any proposal.
Once everything is put together, the user can then see the full cost sheet for the project, with senior staff being allowed to set discounts and such.
It also gives them the full details of all features in a single copyable place, for them to place into the proposal document.
Technical Details
Laravel Filament was chosen as the tool to build this internal tool, as it gave us the ability to quickly scaffold the simple CRUD parts of the app, and focus our time on creating the additional bespoke pages, like the cost sheet.
We were able to use the custom pages / tables / form / etc that Filament gives you to create the more complex things, like the cost sheet and comparison table.