Search This Blog

Monday, March 14, 2011

Viki’s engineers on the post-Crunchies life (or lack of it)

We first featured crowdsourced video subtitling site Viki (Ed: formerly known as Viikii… we wonder where the i’s wentfour months ago and since then, it has raised US$4.3 million in funding, launched a new version of the site, and was the first Singaporean startup to scoop the Best International Startup award at Crunchies 2010 – an award show organized by TechCrunch, VentureBeat and GigaOm.

Viki was founded by Razmig Hovaghimian, Changseong Ho and Jiwon Moon and the team consists of six full-time engineers. Recently, Viki hired former head of product marketing management at Yahoo SEA, Nadine Yap as a product manager.

We spoke to three engineers at Viki – Andras Kristof, Peter Kim and Sam Hon — on its engineering culture, product plans and development process.

How has the product changed from its previous version?

Andras: When we launched initially, we launched with a minimum set of features. In the last two months, we implemented again the features that were required but was not essential.

Peter: In the previous site, we had a peak-time limit and only privileged users could watch the video. Now, none of that exists.

Andras: The old product could not scale. We were hitting the ceiling for what the system could do and there was nothing we could do.

Peter: Hence we had to disable features and that was the only way it could handle more traffic. The old system was done in PHP and it was running in six web servers. The new system is done in Ruby on Rails on a cloud-based server. So, it’s much stable. The page load times are much faster. Previously, the UI was messy, but definitely the new one is much more approachable.

Sam: The previous site was optimized for the contributors and not users.

Has there been any changes to the product development process?

Andras: From the engineering point of view, we’ve got lots of things done and we have lots of procedures established. We do Agile Development, Pair Programming and Test Driven Development. It’s a very strict way of development and requires a lot of focus from the engineers. And almost everyday all of us go home at 6, which is unusual for a startup.

Peter: Yeah, we learnt from Pivotal Labs. Without Pivotal it would be very difficult to implement anyway. (Viki engaged Pivotal Labs to help with the product development.)

Andras: We have a single queue of stories or tasks created by the business owners. They create the stories and they create the sequence, which is very important and that gets prioritized. The engineers estimate the effort needed for each of them and then the owners prioritize. What the engineers do is — pick the top story and they do it. And whenever we are few stories down, we release.

So, we don’t have a release every second week . We release two-three times a day. So it’s like, we push out features as soon as we are done.

How do you determine what features to kill?

Peter: We’ve killed a few features and implemented features that we know for sure is needed. We haven’t had the chance to kill features in a newly implemented site yet.

In traditional software engineering, it’s difficult to kill features partly because it could break other features. They are dependent on each other. We are doing strike Test Driven Development, and there are automated tests in place. So, if something is not working, it will tell us automatically. Ideally, if you change one line of the code in the system, it should break a test code.

Before building a feature, we like to test code and we are really at ease when we are changing things.

What is the engineering culture like at Viki?

Peter: It’s tiring. We focus for eight hours a day — if you do pair programming and you’re sitting in front of a computer, you can’t be Tweeting, checking Facebook, watching YouTube, or instant messaging. We can’t even go on Slashdot or the e27 blog.

Sam: But we go to the washroom when tests are running.

Peter: Also, the individual roles are not clearly defined. We do everything; we have pair programming in place and it’s not like a set role for each engineer and we rotate. Today, I could be working on the video player, and tomorrow I could be working on the backend. It’s part of the agile process.

Andras: It’s the engineers themselves who manage the task. So there is much less need for the traditional way of engineering management.

Peter: Since everyone has touched a little bit of everything, if engineers are on sick leave, it’s easy to swap jobs with someone.

Andras: When the new guys come, immediately he has to program with someone who know the system, so that he can pick up very fast.

What’s the average time to build a feature?

Peter: Most of our features get implemented in less than two days.

Andras: The thing is, if we estimate that the feature will take more than two days, then we break the features. It’s very important for us, for any task we start — most probably we are going to finish it today, so that we have a sense of accomplishment. When we create tests, we make sure to break it into small parts.

What’s the most challenging engineering problem you’ve faced?

Viki: Caching. The platform we are on is Heroku, an extremely beautiful platform to build applications. If I need more power, I log into the web interface, push up a dial and I’ll have more servers. The only problem is the way they have implemented caching. It’s not very optimal. So we had to write a lot of code that went around the limitations.

What are the future product plans?

Peter: One thing I can say for sure is that for now we are focused on a lot of Korean content, but we are expanding. Soon you’ll see a lot of content from other areas — Bollywood for example.

Andras: We are getting a lot of content from South America. We are expanding our reach and are not focused on Korea only.  We’re happy that we’re really getting a lot of content.

Are you expanding to other platforms?

Peter : We have plans for mobile products.

Andras: There are many countries where 80% of the Internet is consumed through mobile devices.

Peter: Like Thailand for example, where fixed-line Internet is not as common as mobile Internet.

What’s the team like these days following Viki’s growth and fame?

Andras: We are truly an international team. We have people from Hungarian, Singaporean, Vietnamese, Spanish and South Korean nationalities in the team. I joined Viki last May or June, and it seemed like a company with future potential. At that time, they didn’t have Series A funding or Crunchies. I was looking for a more Agile environment.


Link to full article

No comments:

Post a Comment

Related Posts Plugin for WordPress, Blogger...