Engineering the Kiva Connection and Building a Creative Culture

Ever wondered what life is like working behind the scenes on Kiva's software systems? If you asked Kiva employees (Kivans as we call them) why they are here, most would agree:

When I wake up everyday, I want to go to work.
I want to change the world.
Kiva's my place to do that.

It's a unique platform connecting people across the world that has attracted a talented engineering team driven by a desire to change the world for the better. We call the engineering team Braincrave and you can find us here. We're mission-driven, entrepreneurial folks using the latest technology to make change. We also like to think we're pretty fun and interesting folks as well.

We tend to attract and hire engineers with a strong creative, entrepreneurial streak.We’re a collaborative, flat, flexible organization that is first and foremost made up of people that like to teach and learn. Thus, you know that when you go into work, you are going to be surrounded by people who want to be there (and who want to cover our cms pages in rainbows and unicorns much to the chagrin of our designers).

It's a privilege to focus on such a noble goal and a further privilege to get support from Kiva's lenders. It's also exciting to solve these problems across 80 countries at scale. Kiva reduces the number of hurdles and amount of bureaucracy to making this happen. In turn, we've been able to introduce a flatter structure to our engineering team, in an effort we've referred to, somewhat jokingly, as "Candy Mountain."

Engineer representing Candy Mountain

Rather than forcing people into specialized roles, we promote the idea that any engineer can solve any of the problems we need to solve. We may end up working on things we know best but get a chance to participate in the process of choosing and designing what to work on. That's really important for ensuring that we believe in the solutions we put in place and collectively own the code we put out in the world (a sentiment shared by other engineering cultures and one worth getting right).

So, what do we actually do here? Well for one we write a lot of code to run the site. That includes far more than just as seen by lenders. We're also busy working on:
  • PA2: The system our partners use to interact with and post loans to Kiva
  • Viva: The system our volunteers use to review, edit, and translate the loans posted by our partners
  • Zip: The system for directly lending with borrowers in the U.S. and Kenya including interacting with the mobile payment system: M-Pesa
  • API: The site where developers can interact with and use Kiva's data for research or applications
  • Kiva Admin: Our internal dashboard for Kiva staff, interns, and contractors to get business needs done
  • Reporting: Whether it's partner stats or financial audits we leverage columnar data stores to wrangle our big data
But our days are also often spent trying to get all of our tests passing in the build system, leading to celebration when we arrive at the much coveted "All Green" status. We're serious about wanting to ship a good, bug-free product so that our lenders can spend their time thinking about what borrower to fund, not about why something isn't working on the site.

In addition to that, we're using all sorts of open-source and proprietary software that at times makes our lives easier and at other times makes us pull our hair out: Salesforce, Pentaho, Puppet, Jenkins, Backbone.js, AWS, Drupal, Robot framework, git and Github, Ruby on Rails and PHP, NodeJs, MySQL, Redis, MongoDB, and of course all the wonderful tools that Atlassian makes available to us. It's all a bit much at times, but we are focused on using open-source software as much as possible to solve our problems so that we can spend more time on the stuff we need to get done. We're also no strangers to switching to the latest and greatest tech when it works to further our aims.

We also have a lot of fun coming up with names for our own projects:

These tools have helped lead to some great innovations, one of our all-time favorites being Kiva Live and the video engineers made that inspired it. Fortunately, Kiva gives us the space every couple of months to spend a solid two weeks creating innovation from the ground up, whether that's solving longstanding problems or creating entirely new functionality. The aforementioned projects came out of them, but we've also created other wonderful things that users asked us for like Saved Searches, Loan Tagging, Monthly Subscriptions and much much more

And sometimes, we just build awesome stuff, like this LED display showing which of our builds are passing their automated tests and which ones are failing (the blinking red).
Just in time for the holidays

When we're not doing one of the above, then you might catch us playing with the wonderful office dogs, enjoying the splendors from our "Table of Wonders," or just duking it out in an impromptu nerf gun match. You'll also often find us debating the various approaches to microfinance almost as often as we debate technical decisions. At the end of the day, Kiva is both a microfinance and a technology company and we're the kind of people that care deeply about both.

Are you a software or quality assurance engineer that wants to make a difference in the world? Kiva is hiring! Come join us and make the world a better place.

About the author

Kevin O'Brien

Kevin joins Kiva to enable global opportunity via technology. His career has included stints for Americorps, developing services architectures at SF State University, maintaining satellite receivers and systems on the high seas for CMA, and even saving the desert tortoise for SCA. He started out studying programming, but soon realized that International Relations would be a lot of fun. Passionate about opening everything, from borders to software, when not working (a rare event) you may find him hiking in the mountains or visiting friends conveniently located in various countries around the world.