Friday, April 25, 2008

Go watch a user use your product

Great post from Francis Beaudet, our Chief Architect, about when he first became conscious of design and usability. It was when he first saw a user trying to use a product he helped develop.

Go and watch a user try to use a product you've developed, or a web site you've designed, and see what happens. Give them a task to do - something your product was designed for, and see how long it takes them to figure it out.

To riff on Francis' post, I remember my first revelation about good design, but it had nothing to do with software (then again, when I started using a computer, the height of human-computer interaction was Zork). I was in high-school, and we were tasked with raising awareness with town council about accessibility. So our team borrowed a wheelchair, and tried to get around town and do normal things for a day - go for coffee, go to the library, and so on, and film it. Even places that were supposed to be accessible were nearly impossible to get to, and for silly reasons - like a 4" height difference between the end of a ramp and an entrance. That's when I learned the importance of thinking about who will use your product, and how it will be used. It came together for me later in systems design class in university, where I learned that accessible design and good design often go hand-in-hand.

Whether you're building software, a sidewalk, or a space shuttle, good design is universal. I consider myself very lucky to be working with a group of people that are experts in design.

So go find a novice user and ask them to complete a task with your product. You may be in for a surprise.

Thursday, April 24, 2008

Outsourcing for Startups - A Conversation with Dhanya Thakkar from Third Brigade

A question I get asked a lot is - "I'm a startup - should I outsource development?". I blogged some of my own opinions, but I wanted to chat with some colleagues in startups who had successfully used outsourcing as a competitive advantage.

In this post, I chatted with Dhanya Thakkar, VP, Security Center, at Third Brigade. Third Brigade is a very successful startup that builds Host Intrusion Detection and Prevention products. Dhanya and his team have taken a very novel approach to outsourcing in a startup context.

Matt: Thanks for chatting with me today. As a startup, at what point in your growth do you think you are ready to outsource? What structure needs to be in place?

Dhanya: It depends on the management team. Some teams are not comfortable starting off right away, while others will have this in their business plan from the very start when they approach VCs. This seems to be more prevalent in Silicon Valley – its part of the pitch, and part of what investors expect to see as part of the diligence.

We started a little later. Part of the reason we didn’t start right away is that we are a Canadian company, and there are tax credits for R&D done in Canada which work in our favor. There was also anxiety about setting up an offshore team.

Matt: Tell me about those anxieties, and how you overcame them.

Dhanya: We had three main concerns. First, you hear about retention issues, and we had to ask ourselves how we’re going to manage retention, especially from such a distance. You hear that people in most emerging locations, there is little loyalty and a lot of attrition. Even if you hire outsourcing provider, rather than setting up a captive lab, you hear from colleagues that you can expect the team to change often.

The second concern is about intellectual property, and how you protect IP when you have a remote team.

The third concern was about the closeness to the team – actually this is something that came up several times. As a startup you want to be able to react to changing market dynamics, move quickly – how will you do this if you are outsourcing to team in India? How will you shape the product in the right direction?

Cost, on the other hand, is not usually the main driving reason nor a main concern. Most of the issues we were concerned about were more the soft issues.

Matt: In the end, I understand that creating a remote, offshore team has been very successful for ThirdBrigade. Tell me about some of the ways in which you overcame these concerns and built a successful offshore team.

Dhanya: Primarily, it was the model, and how we set things up. One model people use is you go set up your own subsidiary in India - you set up a an office, go through process of registering a company, and find a general manager. The second approach is to outsource, and go with the vendor who will manage a lot of that for you.

We decided to take a middle ground. We didn’t want to go through the hassle of setting up a company – we had a lot of other things to focus on. But we wanted the team to feel like employees, and to connect with the vision. We outsource, but in a very open-book manner. The vendor found the office space, found the facililities (internet connection etc), but they were the ones who were responsible for getting it all organized. The employees are, on paper, the vendor’s, but there are no other real ties other than that they are on the vendor’s payroll. We try to make them feel like ThirdBrigade employees. And that’s the part we work on the hardest. And for the most part they do. There are always some growing pains, but I feel like we’ve been very successful. How do we measure success? Retention rate is one. Our attrition rate is way below the industry average.

Matt: You need scale when you’re in an emerging country, both to make it worthwhile economically, and to attract talent. Your team is relatively small in India, right? But You’ve found a way to make it work it to your advantage

Dhanya: we started out with literally two people and scaled it up. You often hear that if you work with a larger vendor, someone like WiPro or Tata, that you need to be large, or you won’t be involved in the process - you won’t have the leverage. We decided on a smaller vendor, we wanted one who will work with us and be flexible. There were times when we needed to change how we were working – tweak the contract and they were more than flexible. Contrary to popular belief, I think it’s better to start small. It was our vendor who suggested to start small, and in hindsight it was the right thing to do, it allowed us to build and tweak things along the way.

Matt: Can you share some specific techniques to retain talent in a distributed team when you’re small?

Dhanya: One is communication with the team and senior management. We’re very transparent. We don’t treat them as consultants. Even though we’re a startup, the amount of info we share about our progress is the same as with the rest of the team. I travel once a quarter to meet with the team. Our SR VP travels every 6 months to see the team. With any offshore team, you require more communication than you do with your local team – it’s always needed.

Two is how you reward and compensate the team. Even though they are consultants they have the same stock options as the rest of the team. The compensation structure is also highly competitive even though we are small. We do quarterly bonuses and objectives along with salary. We also have retention bonuses – you are rewarded for staying longer with the company.

You get what you put in, and that’s something we try to keep reminding ourselves. There are a lot of horror stories about an outsourcing vendor holding you by the contract – so we try to keep the relationship at a level of “Look there are things you will need to do, and we won’t have time to adjust the contract. Just do the right thing and we’ll figure out the contractual stuff later”. There are times we’ve taken advantage of their flexibility, not the other way around, but they realize in the end it will be a win-win. Here’s an example - you could have a contract that says we have one Internet connection connection. But cable gets chewed up in the Middle East, and we needed a backup – you want a relationship where the vendor doesn’t wait to ask – they get a second connection to keep things running, because they know you will make it right. Treat it as strictly a business relationship, and it comes back to bite you eventually.

Matt: Typically, people think Big Design Up Front (BDUF) when they think offshore. Most startups operate in a more agile mode. How have you made this work?

Dhanya: For us, even if you have people working remotely from home, it’s just like that. We don’t see it India vs. Canada vs. whatever – they are our employees working remotely. We use the same processes, we don’t tweak anything. I’m not in favor of doing that, though I’ve heard that doing a bit more design up front will help in the traditional outsourcing model. It just doesn’t apply to model we have

Matt: What do you use for communication?

Dhanya: Frequent trips, phone calls, and LOTS of MSN. Some people hate IM, but with my team it’s the best way. A lot of time you want to assure them that you are there. A 30 second MSN conversation once a day can do wonders as opposed to an hour long call every month. But we are also on a plane a lot – I visit once a quarter.

Matt: What advice can you give a startup that wants to outsource but is worried about IP protection?

Dhanya: In our case there wasn’t much of an IP issue because the remote team wasn’t working on core IP. It really depends. With India, most of the outsourcing companies have been working with IP for a long time, so in India it’s not as big an issue as it is in China. That problem has already been tackled by a number of people in India. I would be not be an expert. The type of work we end up doing in India is very high-end/non-standard. Allows us to keep this lab going. We didn’t think we would be able to build such a team in Canada, given the type of the high-end skill we need. We could see this type of skill set available.

Matt: To close, can you summarize the how to outsource as a startup?

Dhanya: People say “can we afford (in terms of risk, time, energy, etc) to outsource”? In reality, people need to ask the question “can we afford not to outsource”. If you don’t, your competition will, and they will have an advantage over you - with the same amount of money you can either speed up development, or spend the money somewhere else. For us, the type of team we could build in India very quickly and efficiently gave us a very quick time to market. Even in startups, people have started exploring how can your 2nd level support, services, can be done in India. Also for some people, India is a huge market, so having an engineering team is a huge advantage – they turn the office into a P&L unit – they have sales, and engineering to support that – it can sustain itself really nicely. You also have some very large Fortune 1000 customers located nearby with whom you can vet your technologies.. As soon as people ask the question “can we afford not to”, the light bulbs go on.

Wednesday, April 23, 2008

Congrats to Fidus

I was happy to see Fidus mentioned in the Ottawa Business Journal this morning, having acheived another solid year of growth. Fidus has grown by providing complex, high-value electronic design services to customers all across North America. Though we're in two different areas - Fidus in electronic design and Macadamian in software design, there are a number of striking similarities. They work hard at pleasing customers and delivering quality, and that wins them a lot of repeat business. If you're ever looking for an electronic design firm, I recommend them highly.

Congratulations on another great year Fidus!

Thursday, April 3, 2008

Building global teams

There's a great article in Inc. this month on building and managing global teams.

The author talks to two entrepreneurs with global offices, and reminds us how easy it is to forget about your remote teams, how much work you need to put into building ties between your home base and your remote offices, and how quickly things can fall into us vs. them if you're not careful.

Some of the best practices they discuss in the article include
  • involving your remote team in product decisions and putting them in contact with your customers, instead of throwing work over the wall
  • using a VoIP system, so that you're dialling an extension and not a different phone number to reach your colleagues in different offices (a subtle change that can make a big difference)
  • lots of face time