Software development

Scaling our smart office

Topics
Vör, Smart office, LSC, workshops, IoT, rapid prototyping

The smart office pilot of Futurice – Vör – has been up and running in Helsinki for over a year now. It’s been featured in magazines and has also received a lot of interest internally from other Futurice offices. Some kind of critical mass was achieved in the beginning of 2017 with our Berlin, London and Tampere picking it up and creating their own iterations. The next generation of the service was clearly about to move one step forward.

We've been showing off a slide like the one below in several occasions to visualize what kinds of layers IoT actually consists of (this specific concept originally appeared in the book Teollinen internet by Jari Collin & Ari Saarelainen). Usually when people talk about IoT they are mentally stuck on the lower layers (sensors & network), but the actual value comes from the ones on top (application & digital service). Vör operates on all the layers described here - from individual sensors to the digital service - thus giving us great opportunity to play around with all relevant technology and design needed to create smart and valuable IoT services for our customers.

Our multinational & multidisciplinary team decided to meet in our London office and agree on things that needed to be done in order to get the next version of Vör out. I represented the not-so-techy business angle and mounted batteries to 3D printed robot using duct tape while Marie, Kenta, Paul and Willi discussed more details related to technologies and design.

Themes that we discussed revolved around several topic:

  • Tracking the usage of our offices (how to make spaces more efficient, where are the quiet spots, how's the air quality in negotiation rooms).
  • Finding the people and things when you need 'em.
  • Making our traditional weekly smileys process more efficient when the number of employees keeps growing.
  • Could we offer visitors some information about free parking spaces in advance?
  • How can we combine digital and physical things to show important KPIs using something else then displays and blinking LEDs?

Something old, something new.

Willi, Paul, Kenta and Marie brainstorming

In order to solve many of our high-priority problems, more detailed questions came into play:

  • Is sniffing MAC addresses of all nearby devices with their WiFi enabled actually evil?
  • How does concrete affect Bluetooth beacon signals between two floors?
  • How about triangulating user location in the U-shaped Berlin office so that people would not appear to be standing outside the building?
  • Can we detect vibrations coming from the keyboards to determine if a flex desk is in use or not?
  • Is there any way to determine if the London dishwasher is actually on or off?

It is clear that each Futurice site had different needs, so the "Vör 2.0" would definitely not be a one-size-fits-all kind of thing. Each office has its own special ecosystem and very specific problems which need local solutions. We agreed on some basic principles. For example what tech should be used while doing the development, so that solutions developed at each site can be reused elsewhere (if deemed to be generally good features)?

One key point of our discussions was that while we should try out new emerging technologies (aka doing rapid prototyping), we also need to include elements that our customers are working on at the moment. For example, in the field of IoT, MQTT protocol is widely used to transfer data and is present in many RfP's that we receive from our customers. So we agreed that it's a protocol that should be used in similar way in our own concepts. On the other hand, using Rust as the basis of the new Helsinki implementation is representing this more emerging tech edge while Tampere might experiment with something totally different for the backend.

Current implementation of Vör doesn't store much data (due to its privacy-conscious nature), but in order to experiment with analytics and machine learning this also needs to change a bit. Relevant data must be kept somewhere in order to make use of it later, but taking privacy seriously is a top priority.

Vör mobile client was done as native Android, but this time there would be also an iOS app. React Native is a natural choice in this case, since our developers like it quite a bit and it makes cross-platform development a blaze.

By the end of the day, we had quite many things figured out already. All that remains is the execution. But that's the easy part - right? Stay tuned for updates later this spring :).

But there's one more thing: We still need a name for the "Vör 2.0". Any ideas?