Building for Asia
Cultural considerations require us to look at how we build digital products for a Chinese audience
Engineers love their computers, we use them everyday at work, and many of us are avid gamers, playing games on our breaks and when we finish for the day, so it only makes sense that we’d want the best computers we can get our hands on so development is faster.
We also had test computers that weren’t quite as good as our main computers, but they were the company issued Dells, which by our standards were too slow and cumbersome to warrant using.
The problems started when we released our product to our initial test users. Many of our users reported that the application was far too slow! It even crashed some systems, giving the old fashioned blue screen of death. This is something we sort of knew, but didn’t realise the full extend of, our users were using far older technology than what would be expected in Australia. Our new fancy development boxes were hiding the performance issues in our technology choices.
Less to reach more
The new frameworks had simply too much overhead for us to write performant code, writing lists of components, while simple to write and worked fine in Chrome on our new laptops, would take seconds to render in 5 year old versions of Safari on old computers.
Some development tools just don’t work in China
There are some things we’ve come to take for granted doing development in Australia.
npm install && bower install
You type this line into your terminal, the script goes and queries github, you now have all your required dependencies, awesome. Except China’s great firewall doesn’t allow you to access github… working with Chinese team members suddenly became more complicated.
Google Analytics is another tool we used in almost all our previous products, but isn’t really the best option in China. We found the requests can be quite slow going out, and when you already have issues with performance of your own code, adding the extra overhead isn’t worth it.
Like many development companies, we use an Atlassian toolset. Confluence for holding the team’s knowledge and writing user stories and acceptance criteria. Jira for managing our user stories and scrum board. Industrie&Co hosts its own Jira and Confluence at our office, which in the past has been fine for us, but for our team where we had stakeholders in China, no so much, Jira is very slow to the point of being unusable in China. Couple that with our stakeholders not having an agile culture and we found it very difficult to involve our Chinese team members in our methodologies.
A shared team purpose and vision was instilled early on for each member of the team. We knew what we were doing, we knew that this product would be valuable and millions of users throughout China, and possibly the world, would want to use our product.
Purpose was the core driver that allowed us to stay motivated and productive as a distributed team. Even when there were technology issues and external dependencies blocking us from release, none of us questioned whether what we were doing was the right thing or not.