👋

My First 3 Months at Fairy Devices

に公開

Hey there! My name is Paul, and I’m an Android Engineer here at Fairy Devices. It’s been about three months since I relocated from Sweden to join the team in Japan. Time flies by fast but I wanted to reflect on my journey so far. Everything from the unique technical challenges of hardware to what makes it fun to work here.

A Little About Myself

Before moving to Tokyo, I worked as a native Android developer in Sweden, building everything from B2B/B2C apps to Kiosk systems and POS terminals. One of my most pivotal projects involved building a management app for an AGV (Automated Guided Vehicle) that would control, essentially an automated load carrier around factories. It strayed as far away as possible from traditional app development, where it was running on a TCP socket through Wi-Fi and USB tethering and had to be active 24/7, 365 days a year.

That project taught me how much I enjoy the intersection of software and the physical world and leveraging the Android OS for highly specific use cases. I also spent time building RAG (Retrieval-Augmented Generation) systems and chatbots with C# in the Microsoft Azure environment, as well as exploring how to utilize AI development for SaaS projects and accelerate POC development.

The Power of Domain Knowledge

At my previous job, I realized a critical truth: Data is everything. We were building AI-powered services for specific industries, but to make it truly useful, we needed to feed it niche "domain knowledge" that you simply can't get from a typical LLM. So not only was it niche industry-specific knowledge we needed, but also knowledge specific to that company and all the intricacies of how they solve tasks. It was truly unique information that only the workers knew and nobody else. It led me to ask:

  • How do we capture the actual, real-world workflow of a worker?
  • How much critical data is actually being lost to manual processes, trapped in pen-and-paper notes and disconnected from the digital realm?
  • How do we see the "full picture" if we aren’t there physically?

Even if I spent two weeks observing workers on-site, it wouldn’t be an efficient way to collect information. There is only so much one person can capture, and without deep domain expertise, it’s difficult to even know which details are the most critical. You might ask, 'Why not just ask the client directly?' The truth is, traditional communication rarely captures the full depth of reality. This creates a significant gap, how can we know exactly what to develop and how to do it if we don't have a complete picture of the actual workflow?

So this was my experience coming from an agency building various apps for clients. Meaningful domain knowledge was precious and always an uphill battle to attain.

That’s what drew me to Fairy Devices. We are building an entire ecosystem to capture and enrich domain knowledge. When I saw the THINKLET, I felt like it was the bridge between the digital and physical worlds and what's needed to prepare for the coming future. As developments in robotics accelerate, I believe the acquisition of domain knowledge becomes even more important.

Developing for the THINKLET

I’ve always thought it's a lot of fun working close to hardware and it's also the reason why I got into Android development in the first place. There is something incredibly satisfying about seeing your code result in immediate physical action. But what makes Android awesome, is that there is also a lot of custom hardware out there built for specific use cases. The THINKLET is a prime example of this, a custom AOSP piece of hardware designed from the ground up to solve the practical challenges of on-site work. Developing for these types of hardware brings unique technical challenges where you often touch areas of the Android system that you would never encounter when building a regular mobile app.

The THINKLET

Designed to be worn comfortably around the neck, it is purpose-built to be hands-free. Its front-facing camera captures exactly what the worker sees, providing a stable video feed without the weight and discomfort of a head-mounted camera.

Most importantly, it is a custom piece of screen-less Android hardware! This presents fun engineering challenges where we have to optimize for low power consumption and high data throughput, all while leveraging onboard sensors and managing device control through physical buttons. Full specs can be found here.

The Android Team

Our team focuses on the applications that power the THINKLET. What I appreciate most is the end-to-end involvement. We identify business problems, create tasks, and handle the full development cycle. If you see something that can be improved, you have the autonomy to make it happen.

Currently, we are building a next-generation application where Microsoft Teams, Zoom, and other meeting SDKs can work seamlessly with the THINKLET. The challenge is ensuring a scalable architecture that can accommodate easy feature development and future SDK implementations. I really enjoy this process as it gives me the freedom to take true ownership and directly influence the product's evolution.

Our Technical Stack & Culture

  • Modern Tools: We use a modern stack. Kotlin, Jetpack Compose, and Clean Architecture.
  • Variety: There are many areas you can touch upon such as app development for the THINKLET, AOSP, developing libraries, Linux, Rust etc.
  • Innovation Time: There is a strong culture of innovation here. We are actively encouraged and given the time to experiment and build our own ideas.

One of my highlights was the Fuji Nobel Show, our internal innovation event. Seeing the creative ways everyone utilized the THINKLET was inspiring. It’s a skillful and passionate environment, but also one where it’s easy to have a laugh together. The team is also full of foodies, so there are always plenty of great spots to eat nearby. We recently went for Detroit-style pizza. It was my first time trying it, and it was honestly delicious.

Coming from Sweden to a completely new environment, I was naturally a bit nervous about the transition. However, the interview process gave me a great feeling that has only been confirmed since joining. Everyone has been incredibly welcoming and at Fairy Devices, there is a high degree of personal responsibility paired with freedom. The company truly puts faith in its engineers.

In just three months, I’ve already had the opportunity to:

  • Enhance Existing Apps: One of my first tasks was adding audio control and Bluetooth support to one of our video calling apps, which uses a Japanese WebRTC client called Sora (https://sora.shiguredo.jp/).
    Since the project follows a solid Clean Architecture with clear separation between the data, domain, and presentation layers it was straightforward to jump in and start contributing immediately. WebRTC is used for communication alongside several THINKLET-specific libraries for hardware control, which gave me a great introduction to how our software interacts with the physical device.
  • Architecture Research: Developed a Linux-based POC for the Zoom SDK to simplify future updates by reducing reliance on the Zoom Android SDK.
  • Next-Gen Development: Building the next generation of applications for the THINKLET. One of them is a meeting app that uses the Microsoft Teams and Zoom SDKs to connect the THINKLET to video calls where we're also ensuring high test coverage and a scalable architecture.

Getting Out into the Industry

Fairy Devices also provides opportunities to see the impact of our work firsthand. I recently participated in Factory Innovation Week at Tokyo Big Sight and SusHi Tech (Sustainable High City Tech Tokyo).

The events are a lot of fun as you get to see what everyone else is making, but the highlight for me is the interaction at our own booth. Watching people try on the THINKLET and hearing how people plan to use the tech, especially when they bring up ideas I hadn't even considered, provides a much better understanding of how people from various industries see our device. Having that bigger context is really helpful during development, as it gives me a clearer perspective on what we're doing and helps ensure we’re building the best possible products.


Fairy Devices booth at SusHi Tech before opening

Moving Forward

Reflecting on these first three months, I already feel I have grown as an engineer. It’s exactly the kind of challenge I was after when I joined Fairy Devices. I’m excited to be part of this digital transformation journey and see what the next few months bring and to start contributing some innovations of my own!

フェアリーデバイセズ公式

Discussion