HQ2: The Garden City of India
As a small startup in Silicon Valley you are constantly faced with the difficult challenge of how to grow and scale your team. At Instawork, we are fortunate to have diverse experiences in the right and wrong ways to scale teams, culture and product/engineering. One of the investments we made early on was to make a second headquarters in Bangalore despite some pressures to either keep things local or expand in other ways, e.g. remote US team members. In this post we’ll summarize our thoughts on why this was a strategic and important choice and how this is part of our path to global success.
Why a remote team and why Bangalore?
Early on we decided our guiding principles for the Engineering organization would include: full-stack, cross-functional, co-located teams.
- Full-stack because we want optionality on how work gets done, i.e. there is no task an engineer cannot take on.
- Cross-functional because we believe it’s critical, especially early on, to have a mix of different skills and perspectives shaping the product together, i.e. we want Product, Design, and Engineering collaborating and challenging each other on the same project.
- Co-located because while in the early stages being physically located in the same space enhances the above two points and drives greater productivity, quality and provides more situational awareness for the team.
With these principles in mind we ruled out scaling with remotes but still kept our home location and co-located, remote teams as options. In general, when thinking about spinning up a remote team the key factors to think about are:
Who is the first person you hire and do you trust them to effectively be a mini-CEO for that operation?
At Instawork we were fortunate that I had worked with Lalit Patel before and knew he would be the exact right person. Finding these types of people is tricky, they need to be a cultural force, embody the product/company and deal with all the nitty gritty details of corporate governance, taxes, payments, and miscellaneous logistics you don’t want to get wrong early on.
Do you have the technology, process and culture to support ramping up a remote team?
The hardest aspect is culture/team, i.e. do you have team members that are excited and willing to help a remote team ramp up, potentially take calls at odd hours of the day/night and generally let go of things (code, decisions, process) to be driven by someone outside shouting distance? Also, do you have the diligence to ensure in all-hands or global engineering team meetings you always include remote teams in the conversation and highlight their great work?
In terms of technology and process, we rely a lot on Zoom, Slack, Confluence, Google Docs, and Github to do what they do best and we layer these into our process in thoughtful ways. This part is the easiest of them all.
Do you know why you’re doing this?
Assuming you know you can support and launch a remote operation with success let’s make sure you understand the reasons why you’re doing it. For us the reasons were simple:
Expanding our talent pool
- Even though both San Francisco and Bangalore are ultra-competitive markets they still have some of the best talent in the world so there’s a reason people recruit and build companies in these regions.
- By opening up Bangalore we double our chances of finding great candidates and potentially accelerate our time to hire.
Creating a 24 hour development cycle
- The disadvantage of Bangalore being over 12 hrs ahead of SF can also be an advantage when incorporated properly, i.e. work is happening at all hours of the day.
- Some work can be handed off and designed while the other team is asleep; code reviews and design doc reviews are good examples.
- When we do on-call rotations we can let each team have shifts during their business hours so very rarely does anyone ever get woken up in the middle of the night.
A Global vision needs a global team
- Instawork’s vision for creating economic opportunity for local businesses and professionals, globally works better if we have a global team.
- We have people from different cultures and backgrounds who have different devices/networks bringing different expectations and ideas on quality, speed and convenience. All of this global thinking makes our product better and hardens us to be ready for the challenges of any new market we decide to take on.
- It’s certainly true Bangalore has some cost savings compared to US markets but that’s not the main reason to do this. Top talent is expensive everywhere but it’s an added benefit that as a small team you can get some early leverage especially when you are hiring folks that are more junior or fresh graduates. As you work your way up the seniority ladder the cost savings still exist but are far less pronounced.
Starting is easy, scaling is hard
Once you have that right person, location, office etc. that’s really where the journey begins, and it takes a village to make it work. There’s a common expression these days: “starting a company is easy but building a business is hard”. The sentiment is really about building something that endures for the long term and has all the elements needed to achieve successful outcomes. This applies to remote teams as well and we spend a lot of time thinking about both offices and their shared challenges:
- It doesn’t matter where you are in the world, recruiting tech talent is always hard. There are just too many options for great people so you always have to spend time on this.
- With a remote team, especially early on, it’s important you have some local team members take part in the interview process. This is the best way to ensure the early remote team members are aligned with the local team and we’re starting from a place of ownership, i.e. an engineer in SF feels responsible for the team in Bangalore because they actually helped hire and onboard them.
- Culture is always a difficult thing to summarize in a few words. For Instawork, we spend a lot of time ensuring our company values and engineering principles are deeply ingrained in the team. Do they know them by heart? Do they live and breath them each day? When recruiting are we grounded on shared principles across both offices? If we can do this we have a much higher chance of keeping the cultures aligned despite local customs and cultural differences.
- We have a Slack integration which allows anyone in the team to give kudos to other team members and also highlight the company values they are embodying. This is great because it’s a simple and fun way to reinforce our values as well as recognize teams from everywhere. When a team feels valued they in turn deliver more value.
- Culture goes both ways. There are going to be new and interesting things that come from all offices. The best way to share and absorb this is to have team members travel to/from the different offices. We generally have a cadence that at least once a quarter 1–2 people are coming from Bangalore to SF and vice versa.
Access to Leadership
- It doesn’t make sense to have our key execs visiting the remote office every month. One alternative to ensure our leaders can interact directly with our remote teams is holding “Office Hours”. Office hours block time when key leaders in the company can talk about their vision, progress and obstacles openly with the remote team in an intimate setting.
- We strive to have local execs and remote teams learn about each other and their challenges and hopefully build more trust, context and awareness. It also makes our remote teams feel valued because we are prioritizing access to leadership.
Ownership and Autonomy
- We knew that creating too many dependencies between teams is a recipe for failure so from Day 1 we tried to be thoughtful on our org design and ownership model. We have products owned by each office with contributions coming from all offices; owners get final say in approving pull requests and technical approach documents.
- How can we carve out our product/tech so the lines become clear? Initially we separated by platform, e.g. one team did web and another did mobile, but over time we’ve shifted those lines as the needs of the business changed.
A Solid Team and Growing Strong
It’s been such a great journey to have these talented folks believe in our vision and help make it a reality. We hope to continue to scale this great operation and opportunistically we will look at other locations, if it makes sense. Likely our criteria for evaluating new locations will change as the company grows and changes — when that happens we’ll be sure to write about it.
Have you had some good/bad experiences launching remote offices? Any feedback or ideas would be greatly appreciated.