Facebook opened the doors of its Oregon data center to a group of reporters and took them on a tour of the company's secret facility dubbed the Mobile Device Lab.
Testing Mobile Apps
As a social media pioneer, Facebook has stayed ahead in the mobile-first landscape. Each test device in this secret lab is used to monitor whether Facebook codes are showing up and functioning correctly, apps are not eating into device memory, and battery life is holding up.
This is especially crucial since Facebook serves more than 1.6 billion users the world over, across platforms and on a range of devices that — let's face it — might not always be equipped to feature the latest and greatest OS updates and, therefore, the most innovative mobile apps.
CT-Scan, the concept behind the mobile device lab, is being polished up by Facebook. Instead of simply simulating a software or testing the OS on a gadget one at a time, the lab runs the updates through multiple on-device testing.
"We wouldn't be able to track down a 1 percent performance regression in a simulator," explains Antoine Reversat, a member of the production engineering team at Facebook.
Setting Up Devices For Testing
The Mobile Device Lab started out as a simple setup (just a "sled" or a "gondola," and later on, a "slatwall" of phones) at the Facebook HQ in Menlo Park.
But, over time, as more gadgets were added to the experiment, Facebook had to move the units to its facility in Prineville, Oregon. This is the company's first data center; it not only had enough physical space to house a large array of phones but also had equipment with the necessary brainpower to run the tests.
The lab contains 60 servers that each hold 32 devices. To test apps for Android, four Linux-based OCP Leopard servers are operated. iOS apps, on the other hand, are monitored using eight Mac Minis.
Reversat explains that any change to an app requires building a new version of it.
"We then install it here on one of the devices and check that the change didn't introduce regressions," he says.
The process of installing, running then uninstalling an app on each phone is documented: a camera captures all the on-screen activity.