Lately, more people have been asking me about the experience of doing a tech startup in a third-world country. Some like the idea of a burn rate 1/10th the size of the States and others seek a romantic adventure in a far away land. More than any of that, I like to share about a better quality of life and the ripple effect that comes from planting a business in the middle of a developing country.
CloudFactory. My wife and I have since had two little ones, four other families from Canada and the US have joined us, we have grown to 50 full-time employees and 150 part-time contractors, just closed a $700K round and are seeing some good traction in general. I thought it may be a good time to pass on some of the mistakes lessons-learned to encourage others to dive into the adventure of a lifetime.
Is it easier than it sounds? No.
Would I recommend it to most people? No.
Has it been worth it? AbsoFREAKINGlutely!
I look back on the last four years and can’t help but see the whole process similar to planting and growing a garden. The analogy may also be related to our initial company being called Sprout Technology. Just humor me and let me run with some gardening speak to describe a possible approach for moving to the third-world and doing a startup.
Step #1: Select a site.
Location, location, location. You gotta pick a great site for your new garden if you want the thing to actually produce something. Now I didn’t pick Nepal, it more ... picked me. My take on it is that you can create a big spreadsheet with different variables in your decision and evaluate the best country/city from a data perspective … or you can just wing it and pick according to your heart ties and experiences. Taken a vacation somewhere and really liked the people and experience? Have a friend already living in a developing country that you could help ramp you up? My wife and I had never been to Nepal but we had big ties leading up to our visit.
At our wedding we asked our guests to donate towards buying propane stoves for young families in Nepal instead of giving us a crockpot or expensive plate that I would probably just end up breaking. Some of the families in Nepal that would be receiving the stoves were kind enough to send over a bunch of handmade Nepali paper gifts for us to give to weddubg guests as a thank-you.
A year later we found ourselves in the Middle East/Persian Gulf where a million or so Nepali migrant workers are, and we became really close friends with a bunch of them. So we already knew we loved the beautiful people of Nepal and when we arrived here we also fell in love with the beauty and charm of the country itself.
The long and short of it is that there are software developers in most any developing country in the world. There may not be a burgeoning tech scene but being a big fish in a small pond has some advantages. So do your research but also don’t be afraid to go with your gut.
The data would have told me to never do a startup in Nepal. We have up to 20 hours every day without any electricity (that means only 2 hours during the day and 2 hours at night WITH power) during the dry season. How do we keep 50 computers going without electricity? Welcome to the world of diesel generators, solar panels and massive UPS systems.
There are a lot of other surface factors that would say this is the last place on earth to do what we are doing. But I honestly believe there isn’t a better place in the world to be building our business.
That is partially related to our social mission but also to the fact that there are so many smart whipper-snappers just waiting for an opportunity to shine. And there aren’t many job opportunities here (45%+ unemployment). So when they finally get a good opportunity, they run with it and make you look good. That is the sign of a good startup no matter where you live.
Step #2: Plan your garden.
It is smart to take a good exploratory trip first and I’d recommend more than 2 weeks and do something more like 2 to 4 months. It seems like somewhere around that point most people cross the line from feeling like they are on a really long vacation to “oh my goodness I actually live here!”. Start small and expand with more experience - think lean startup and customer development and apply it not only to your product but also to the where and who of your startup.
During your planning trip you will want to start looking for the neighborhood and place you will want to live. Your (or your wife’s) first thought may be, “Will I have to live in a mud hut?” If the answer is yes then you are going to the wrong place or taking the wrong approach. There is enough stress and culture shock that you will be dealing with on a daily basis. Moving from a first-world to a third-world country will require you to relearn how to do basic life -- how to buy groceries, drive a car/motorcyle, greet people, cook meals, pay bills, make friends, etc. And probably on top of all that you’ll need to learn a new language (and I don’t mean Haskell or Clojure). So get a nice place and make it your sanctuary for those days you need to come home and hide from the world.
My wife and I live in the “Beverly Hills” of the Kathmandu Valley where we pay less than $500/month for a 5 bedroom, 4 bathroom, marble-floored mansion. We have people from all over the world (friends, clients, investors, friends of friends) come stay with us for days, weeks or months. Post some nice photos on facebook so your family and friends will soon start making travel plans to visit when they realize they won’t be sleeping on a mud floor.
Initially the office was located right in our house and then we found an office building a whopping 2 minute walk away and had our whole team of 15 people come to our house everyday for lunch. When we expanded the office and got a kitchen to cook for the growing team, my wife and son came everyday for lunch given our house was so close. Now we are in a much bigger building still just a 5 minute walk away. I actually like the extra few minutes of walking to switch contexts from being CEO to being husband and father. I highly recommend trying to live and work in the same community, it has been huge for us.
Step #3: Prepare the soil.
Test your soil’s pH and nutrient level. By this I mean you need to make sure you have strong convictions and you really understand the “why” behind what you are doing. It needs to be a near life-changing experience that leads you to move overseas and do this. A moment in life that you will hold on through all the difficult days and challenges ahead.
If you don’t have this good soil or foundation you need to spend more time preparing the soil and falling in love with the people and country. Travel around, take intensive language learning, do some village stays, play cricket with the local children - do whatever to be 100% sure this is what you are meant to do.
I remember after renting our house we were walking around and meeting many of our neighbors and I thought, “Ok, so we actually live here now. What am I going to do to contribute to this community, city and country with the talents, experience and contacts I have?”. It was at that point that I knew I was ready to pick up my laptop and get serious about building a tech company and doing my part as a new resident of Nepal.
Step #4: Plant your garden.
Only a few weeks into my trip I met 3 young .NET developers that I invited over to learn Ruby on Rails around my kitchen table. They were smart and didn’t have much for paid client work. Years later one is the Engineering Manager at CloudFactory, the other a team leader and the last isn’t working with us anymore but is still a good friend.
You basically have two options to plant your garden:
1) Transplants (fast). Almost every major city in the developing world will have a tech scene of some sort.
You may have to dig a little but you'll find it. Find local open-source and developer meetups (like GTUG) and show up to meet people and build your network. Now you just need to start getting the word out about your startup and begin recruiting.
Transplanting doesn't have to look like poaching from other companies. If you have a legitimate next level opportunity for developers and you know it is in their best interest, then transplanting can be a good option.
The problem I ran into was that the more experienced or senior the developer is, the more likely they came with the baggage of really poor management and an "Us vs Them" mentality. Their guard may be up from the beginning and they only see it as a paid gig and aren't ready to become friends, roll up their sleeves and commit to building something together.
2) Seeds (slow). This involves hiring fresh computer science/engineering graduates from local colleges and training them up. Find the local job boards at colleges, post to local online jobsites or newspapers, start up an internship program or just tour colleges giving a "Rails 101" workshop or other teaser to drum up interest in your technologies and company.
This is the route that we went and it has been very rewarding.
For our interviewing we focused very much on raw problem solving and intelligence versus simply knowing a bunch of TLA (three letter acronyms) and syntax of a particular programming language. [Sidenote: Have you ever thought how the next Einstein is more likely to be born in the developing world than the developed?]
We created a 6 week "Web 2.0" (back 4 years ago when that term was cool) training course that all new employees went through. We used the Getting Real content from 37signals to welcome fresh grads to the real world of agile software development. Then we sent a couple of our guys for international ScrumMaster training and certification, dove fully into TDD and pair programming, etc.
I have never been in an office with this level of knowledge exchange and to see junior developers progress so quickly is one of the things I am most proud. I guess that is similar for gardeners, seeing their little seeds sprout into plants that bear fruit - very rewarding.
If anyone is interested, leave a comment and I'll start working on Part II - the really interesting part. Thanks!