How Learning More Pays Off
I volunteered to learn one of the more unpleasant areas: the process of a plan's "transfer out" from our system to a different 401(k) provider. We had never understood all the steps involved in this process, and the person who managed these transfers (Peggy) often had to ask us for help when the application would get stuck and she couldn't proceed.
Over a period of about two days, we identified two unnecessary and time-consuming steps that Peggy executed for each transfer. When Peggy performed these steps, it didn't do any harm, but it was time-consuming, duplicate work because these steps were done automatically by other areas of the system. Eliminating these two steps saved about 30 minutes for each plan processed.
Next, we identified the most common causes of the process getting stuck, and we showed Peggy how to identify and fix such problems herself. At the same time, we developed a user story to produce the reports needed for this process. With our new understanding of everything Peggy needed to do to transfer a plan, we could code reports with precisely the right information. If I hadn't learned so much about Peggy's job, we would probably have needed at least a couple of back-and-forth iterations to get those reports right.
Here's another example of how learning more about the business can save time and trouble for everyone. Our company's accounting is separate from the application that manages most aspects of the 401(k) plans, such as Peggy's transfer-out process. The main web-based application is connected to the QuickBooks accounting system mainly by some .CSV files and reports. Almost every time we did an accounting-related user story, the report or file we produced wasn't what they really needed. In addition, cash accounts were constantly getting out of balance, and the accountant spent hours researching how to reconcile them.
Finally, one of the accountants showed us a diagram illustrating how money moves around between the different bank accounts. We had no idea that so many accounts even existed! Since much of the money was moved offline, via email messages, we were unaware that it even took place. We asked the accountant to educate us further, and slowly we got better at delivering what the accounting folks needed, with less miscommunication and wasted effort. Best of all, the cash accounts stayed in balance more of the time!
Sitting with business experts as they performed their daily tasks was a great way to identify inexpensive ways in which we could help them with software. A plan administrator mentioned to one of my coworkers that adding a particular piece of information to a user interface page would save him a lot of time in looking up that info on a different report. It turned out to be a trivial task to add the information.
Another coworker, Mike, observed an administrator spending lots of time calculating how to prorate amounts among a plan participant's mutual funds in order to remove an erroneous deferral or match contribution. With the existing process, it was easy to make a mistake, which had to be corrected later with a manual database update. Mike quickly created an Excel macro to help the administrator do the calculations more quickly. The business people wrote a user story to have the application do the calculations for them, and we implemented it. Not only did the new process save time for the administrator, but it cut way down on production-support requests to fix mistakes.