The Kiva.org platform has to deal with many challenges. One of them is how to support the platform over time as it collects ‘barnacles’ or bugs that come from time and the other is how they avoid playing favorites on the platform. We talk with Sam Mankiewicz, the CTO of Kiva.org about he navigates these challenges.
Transcription
Speaker 1: This is, “Using the Whole Whale”, a podcast that brings you stories of data and technology in the non-profit world.
This is George Weiner, your host and the chief whaler of wholewhale.com. Thank you for joining us.
I want you to imagine that your website, your technology for your organization is kind of like a ship, you know, cruising through the ocean and, the captain of that ship is your Chief Technology Officer.
Now what happens is, you grow the ship with features, is that each new part of the boat that touches the water has the ability to gather what are called barnacles. These are these those little things that just sort of attach themselves to the side of the boat. Now, no matter how good your boat is, if you’re in the water, you’re getting barnacles.
Welcome to episode 21, where we are continuing our conversation with Sam Mankiewicz, the C.T.O. and captain of the good ship – kiva.org. And, I talk about barnacles because it is the perfect analogy for keeping in mind the true cost of a legacy platform. Now, each new feature that they add will inevitably need bug-fixes, updates, upgrades even as the platform moves forward. So, while we all love creating new features, this is what goes through the mind of the Captain when you’re brainstorming. We’re going to continue our conversation now and, hear how Sam approaches these features and, how they also they also measure success of some of their initiatives against their digital goals.
Speaker 1: So, we’re beginning to talk about your work as the leader of the prioritized features and, I’m, I, you know, I know you’re on a Sprint system or, “agile-ish” system, you know, two weak releases, curious, you have a platform that’s been around for awhile and, you know, I think what’s on CTO’s mind, more often than not, is, like, the thing that keeps you up on that is, if these things crash, if that data base falls out of sync, how do you balance then the existing dev. work versus the new shiny shit the team may want.
Speaker 2: Yeah. That’s a great question. If anyone knows the answer to that one, I would love to hear it as well. I think, let’s see, at the end of the day, it comes down to trade-offs, you know. Kiva’s at sufficiently large size, sufficiently large scale, sufficient level of complexity, that there, there’s never, you know, there’s no free lunch anymore. There’s no one change that will be positive with no costs or, no negatives. And so, it’s about trying to look at the places that are holding you back the most, look at the thing’s, the biggest problems and, you know, seeing what you’re willing to trade off against those.
Let me try and make that a little more concrete. I think, one of the things that we struggled with early on, was that in the face of really big press attention or other sorts of attention that we got, lot’s of people would come to the site and it would become responsive or, slow, or just unusable. My CEO would always, basically would call that a crash. If he couldn’t bring up the page in 15 seconds, he’d send me this text saying, “The site’s crashed.” You know, what’s going on?
And, that provokes a certain level of, you know, we’ve got to keep the site up, we’ve got to keep it available at