Did you, like me, grow up in a time when you needed to know DOS commands to make your computer run? (Or perhaps earlier?)
Growing up, I thought computers were interesting, but I definitely didn’t understand how they worked and never thought I would use them for a career, beyond basic word processing. Entering college, I didn’t give computer science a thought. I was going to be a chemist — until it became clear that chemistry and I were not meant to be. Still, I had always liked the sciences, and math came easy, so I tried several courses and found Computer Science 101 to be an unexpected and pleasant adventure. Quickly seeing how my logic-based method of working through problems was a skill worth honing, I was hooked.
Now, 15 years later — with a computer science degree, a master’s in information technology systems, and work experience — I have a different perspective on computers. Today I’m responsible for management and development of The Ligado Platform. Ligado is KCIC’s proprietary technology, which we use to capture, organize and make sense of our clients’ complex insurance-related assets and liabilities.
In my nine years at KCIC, I’ve seen technology change dramatically. In turn, our company has transformed how we apply technology to meet our clients’ needs.
A few key lessons have been learned from these experiences:
We’re creatures of habit, even with computers
We — organizations and people — often perform various computer functions simply because we have always performed them. We’re creatures of habit. Known experience allows us to predict a likely outcome (since we’ve “been there” before, we know how to perform a function and, therefore, will stick with it). This is the case even when the process is inefficient or unproductive. Sometimes we stick with what we know, rather than risk trying something new or different.
When working with a client, our team is interested not only in what the client currently does, but what they’re missing, or what they do manually to get around various limitations of the current process. Our goal is to fully understand their needs, so we can identify inefficiencies and build new or better processes for them. There may be some growing pains as everyone learns a new version of “normal” and breaks familiar, comfortable habits. But after a few weeks, users are extremely pleased with the results and changes. In my experience, this type of change often sparks additional conversations to review other processes and envision possible changes.
Outsourcing may not be a good option
I am NOT a software developer. When we started developing our online platform for KCIC, no one on our team was. But we’ve learned, grown and built a better product and team for it. Now we have a robust technology staff: people with technology degrees; more than 50 years of combined programming experience; and even a few master’s degrees in the mix. But all that education doesn’t necessarily guarantee great programming or systems. Education only takes you so far. Most important is understanding the need, really wanting to help, and being dedicated to solving the problem.
For this reason, we find it challenging to hire productive technologists. We hold them to a very high standard, but I believe we’re better for it. Our standard development lifecycle involves a great deal of conversation, documentation, brainstorming and more conversation. At other companies, the software development process is very rigid and structured, not allowing for organic growth. That’s why outsourcing our core development doesn’t work; we don’t fit into the typical software development lifecycle. When interviewing developers, I often describe our process as a two-week adventure. Barring major crises, we plan out what will happen for the next two weeks. After, we may continue on our general plan and work course, or change courses completely. This enables us to accomplish small, targeted tasks and provides the flexibility to accomplish a great deal more. Rather than a nine-month backlog of development, we’re able to move initiatives around based on priorities, commitments and client needs, so we can best serve our clients.
Also, we’ve found that when you outsource development, you hope to get the expertise … but you never know. You often need to manage the external resource more than you would an internal hire. This is challenging if you‘re not a developer yourself. You can’t verify the quality of the code you get in return. It may provide the needed functionality, but will it be of decent quality so that it can be updated later? Will it fit in with other products or software you offer? If not, you may need to completely re-develop it later, causing you more work in the end.
Another issue: understanding the client’s business needs is imperative to building good software. A developer who doesn’t understand the actual product needs and uses will have difficulty building a robust product. It’s one thing to request a box on a form, but it’s another to need that box to have a functionality that helps drive the system.
Plan, plan, plan
In an ideal world, you would thoroughly map out all technology needs ahead of time. That way, as updates are needed or functionality added, everything else can be seamlessly modified. This, of course, never happens. There are always moments of rework. Still, taking time upfront to think and talk through concepts and ideas enables us to create something that doesn’t just solve one particular issue. We’re able to build flexible solutions — functionality can easily be expanded, new fields added, workflows modified, etc.
Keep it simple
When looking for any kind of software to help streamline a process, you want to be sure it’s easy for the end user to use and follow. Otherwise, the user gets confused or finds the process burdensome. The result: they don’t use the system, and the entire goal is defeated. When developing database systems, KCIC’s goal is to find the easiest way to identify, enter and report information. When done well, the process of collecting and maintaining accurate data can be pleasant.
We hear many positive reviews of The Ligado Platform — specifically about the user experience. One client, for example, told us she loves using Ligado’s Claims Administration module because it’s so straightforward and easy to use. It makes her life better.
That’s what makes our work, rework and custom development all worth the effort.