How our QBO integration demonstrated the need to include "maintainable"
One of the most exciting integrations we've released recently is an integration to QuickBooks Online. From any payroll platform, detamoov can automate the creation of checks and journal entries in QBO as a result of payroll general ledger data.
Like all projects, we followed a detailed design process. A process that took weeks.
We studied the QuickBooks Online API reference.
We met and worked with various subject matter experts (accountants in this case) to understand how things should look in QBO when generated from payroll general ledger data.
We created artifacts to give our development team the roadmap on what to build. This included:
A number of high level design documents
A number of user stories
We thought we nailed it...we identified every use case and edge condition. We were confident. Proud as can be, we rolled out the QBO integration on February 10th, 2023. Pretty awesome feeling!
It's now been three months since our initial release and guess what, a number of updates and new features have been identified and deployed.
Would you guess one or two?
How about ten?
Yes, ten. In the last three months after our initial QBO integration release, we've made ten updates to it.
This is why we fully believe you need to include maintainable in your project framework. Because you can get a good project complete fast and you know it won't be cheap. But inevitably, you're going to need updates. So that's why I implore you to put the word maintainable in the Cheap/Fast/Good framework.
Despite our best efforts in our initial design, we missed scenarios. We didn't know some features would be needed. And this resulted in us maintaining the integration so that it's valuable for our customers to use.
So the next time you use the Cheap/Fast/Good framework, include maintainable and remember this example.