At SuiteFiles, our commitment to enhancing user experience, especially in how our services integrate with other platforms, stands strong. This year, a major focus has been on updating and enhancing our Karbon integration. Nainesh Patel, SuiteFiles Software Developer and one of the key engineers working on the latest updates to our Karbon extension, provides a glimpse into our journey with this project, exploring the challenges faced, the solutions developed, and the impact on our users.
The Problem
Many of our customers use Karbon for their practice management, and we provide an integration that lets users utilize Karbon clients and contact data in SuiteFiles for creating file templates, sharing Connect folders, and sending documents out for signing.
This integration has proven very popular, prompting us to brainstorm ways to enhance it and provide greater value to our customers. We devised a solution to provide an interface within the Karbon website that lets users view their files and folders in SuiteFiles and perform basic user actions such as uploading, renaming, and opening files.
We believe this approach will enhance efficiency and provide a more seamless integration without users having to switch between different contexts, keeping the files for their clients and work items right at their fingertips.
Constraints and Considerations
Several constraints shaped this project. Technical constraints included ensuring compatibility between SuiteFiles and Karbon’s APIs, while also considering data security, user permissions, and scalability. Time constraints forced us to prioritize features that would deliver the most immediate value to users. Additionally, ensuring a user-friendly integration that felt intuitive and didn’t disrupt existing workflows was a key consideration.
Our Solution Strategy
We decided to use a Chrome extension to link directly with Karbon’s website and our own APIs, giving us flexibility to interact with the Karbon site and add our own designs and components related to SuiteFiles. For instance, the main feature of the Chrome extension will be to place a documents tab on the Karbon website that shows the SuiteFiles documents linked to the work items the current user is in.
Although SuiteFiles already has a Chrome extension, we saw an opportunity to build a new one from scratch that would allow us to bring the extension up to more modern standards in terms of both user experience and development time. Tools such as hot reload, Bedframe.dev, and CRXJS, which don’t exist in the current extension, let us develop much faster and bring updates to customers as we work on features. As we build upon this, we can also improve our current extension and align everything to meet our standards, keeping workflows consistent regardless of where customers access their SuiteFiles documents.
As a team, we are adopting a more iterative approach to our development, and we believe this new extension will be a great showcase of how it can be done. This means that instead of waiting for all our features to be ready before releasing them to customers, we can release much quicker and respond more promptly to feedback. Once we have a minimum viable product (MVP) and every time after that when we have a stable build, we will engage a set of beta customers (plus our internal wider team, Sales, Customer Success, etc.) to get their hands on the product shortly before we release it to the public. We’ll ask for specific feedback and monitor the actions performed on the extension to see which features users find the most beneficial (or not so beneficial, in which case we can regroup and look at what improvements need to be made).
Behind-the-Scenes Glimpse
As a user of any product, we want things to work quickly and a large focus area while developing this new extension is how to achieve that for our users. Instead of waiting for our system to respond to an action, we’re updating the view for the user straight away. For example, when deleting a file, the user can see it’s deleted immediately while in the background we may still be processing it. We use a test-driven approach, both in code and internal user testing, to ensure that the actions will still complete as expected so the user can move on to their next task immediately. We still make sure to let the user know what actions are being performed, because more information is better than little or none, but it doesn’t block them from moving on. This makes the product ‘snappier’ and more performant.
Looking Ahead
This project exemplifies SuiteFiles’ commitment to solving complex engineering problems in ways that enhance user experience. The integration with Karbon not only adds value for our users but also sets the stage for future developments. As we continue to evolve, we look forward to bringing even more innovative solutions to the table.