Network analyzer to the rescue
First, the business users showed us a specific form in the application in which they were having issues with slowness. On this form, there is a button that, when pressed, showed a loading icon (what a great user experience). The processing behind this button was calling multiple other web services to gather data and perform some logic. After processing, records were added to a related Quickbase table with the results and the page reloaded. This is where the network tab in Chrome’s Developer Tools comes in.
In this type of scenario, using the network monitor is extremely valuable. With all the calls to different services, it is important to see how long each one takes to respond. We learned that, in this case, some of the services operated quickly and others took more than a few seconds. These were adding up to a long processing time for the user. After all of the external calls though, the final processing where the custom code was writing the data back to Quickbase was processing quickly. In the end, the client’s software engineer had enough information to begin evaluating the other systems to see if there were ways to optimize the performance. The users also appreciated being part of that experience, learning how much more goes into a single button press than meets the eye.