Fairy Devicesに入社して8ヶ月経った感想
はじめに
プロダクト開発部の中嶋と申します。
私は2023年5月にFairy Devicesへ入社して、8ヶ月が過ぎました。これまで当社でやってきたことや入社後感じたことなどを振り返っていこうと思います。
入社前までの経歴
社会人として最初の業務では主に製造業のお客様に対して、組み込み系開発及びWindowsアプリケーション開発に携わりました。その後、農業向けモバイルアプリケーションのサーバーサイド開発を経て、小売店向けSaaSのサーバーサイド開発に携わっていました。
なぜFairy Devicesに入社したか
当社の存在自体は過去のRust.Tokyoでの発表やプロダクト開発部部長の吉川が書籍「実践Rustプログラミング入門」の著者であることもあり、目に入る機会が度々ありました。まず、技術的な観点では、ここ2年半ほど業務でも個人プログラミングでもRustを触る頻度が増えてきていて、もっとRustを用いたシステム開発を深掘りしたいという思いがありました。その上で過去の組み込み開発の経験がIoTサービス開発に活かせるのではないかという考えもありました。サービス面でも、過去に製造業や農業などの現場仕事を支えるシステム・サービスに関わってきた上で、より現場作業支援・現場DXに踏み込んだサービス作りに関わりたいと考え入社に至りました。
何をやっているか
私はLINKLETのサーバーサイドの開発に携わっています。LINKLETとは、当社製の首掛け型デバイスTHINKLETをWebアプリケーション上での操作からZoom・Microsoft Teams上のミーティングに参加させることで、現場作業者の遠隔支援を可能とするサービスです。
LINKLET本体の機能開発はもちろんのこと、契約情報の管理やTHINKLETをシステムと紐付けるための運用者向けWebシステムのサーバーサイドの開発も行っています。
入社して業務をしている上での感想
入社して良いと感じたことを5点挙げていきます。
技術動向(特にRust)に対するキャッチアップの速さと深さ
LINKLETのサーバーサイドはほぼ全てRustで開発されています。私は過去にも業務でRustを用いた経験がありますが、それらと比較して、LINKLETではRustの言語機能やクレートをしっかりと活用されている上、適切なCargo workspace設定やRustらしいコーディングがされていると感じています。また、社内のSlackチャンネルにはRustを始めとする技術トピックに関するものが複数あり、技術交換が頻繁に行われています。勉強会もよく行われていて、参加者も多いと感じます。
分散IoTシステム開発に携われるところ
上図の太い赤線部分のように、LINKLETのシステム内では、THINKLETからのリアルタイム通信(デバイスのバッテリー状態やWebミーティングに参加しているかなどのデータ)をAWS IoT CoreのMQTTブローカーで受けて、LINKLETのサーバーアプリケーションはそのデータをWebhookで受け取ります。受け取ったデータはフロントエンドにWebSocketでPushされます。これらもRustでイベント駆動的な実装をしています。このように、組み込みデバイスとクラウドサービスを連携した分散システムに携わることができるのは、私にとって技術的な醍醐味の1つだと思っています。
(LINKLETの詳細なシステム全体像については別記事で紹介予定です。)
要件定義から実装まで一貫して開発できるところ
担当する機能や課題に対して、エンジニアが要件定義から設計・実装までを一貫して行うため、認識合わせを早い段階で行うことができ、開発にスピード感が出ると感じます。また、ある一工程だけを任されるのに比べて、システムを俯瞰的に見ることや、ユーザーにとっての使いやすさを考える機会が増えたと感じます。
コミュニケーションが取りやすいところ
在宅勤務とオフィス出社のハイブリッドワークで日々業務を遂行していますが、Slack・対面ともに質問や相談、会話がしやすい環境だと感じます。新参者だった私がした質問に対しても素早くかつ丁寧に回答してもらえるなど大いに助けられ、大変感謝しています。日々の業務においても、意見の共有や相談が活発に行われていると感じます。
専門性の高い研究開発部が居るところ
現在のLINKLET開発チームとは日々の業務で直接関わる機会は少ないものの、音声処理や画像処理などの深い専門技術分野に関わっている人たちと同じ環境にいることが大きな刺激になっています。
終わりに
LINKLETはサービス的にも、システム面でもまだまだ開発・改善の余地がたくさんあるサービスです。引き続き、開発に関わる皆さんの力をお借りしながらLINKLETをより良いサービスにしようと思っています。
フェアリーデバイセズでは、エンジニアをはじめ一緒に働いてくれるメンバーを募集しています。気になった方はぜひ以下をご覧ください。
Discussion