blogこの広告は、90日以上更新していないブログに表示しています。2016-05-13テックブログ開始&初めての勉強会開催はじめまして、ハードウェアスタートアップ、チケイのCTO楢崎と申します。BONXというウェアラブルトランシーバーの開発をしています。これまでCEO宮坂中心に、会社全体に関わる(遊んでるとしか思われなさそうな)情報発信をこちらのブログでやって来ましたが、BONXを支える技術的な内容だったりエンジニアチームについても発信したいと思い、テックブログを始めることにしました。さくらインターネット」について書いてみたいと思います。sakura-kanto.doorkeeper.jpいまやバズワードと化しているIoT、エンジニア向けの勉強会も多数おこなわれていますが、エンドプロダクトを実際に発売しているスタートアップ企業が内部の技術生ネタを公開する場はそこまでなく、前々から一度自分たち主催で勉強会をやってみたいと思っていました。日々の開発に追われ、なかなかチーム内でもお互いの開発事項や技術内容を整理・消化できていなかったため、一度立ち止まって整理し直す機会が必要でした。そんなわけで、日頃から仲良くしてもらっているAkerunで有名なフォトシンスさんにお声がけし、さくらインターネットさんにお手伝いいただいてなんとか実現に漕ぎ着けました。(ご両社とも、ご参画ありがとうございました!)チケイからは、ずっとBONXの開発に関わってもらっているフリーランスエンジニア3名に、BONXのユーザー体験を支える3つの重要技術に関してお話していただきました。音声ガイダンスを導入した話speakerdeck.comiOSエンジニアの森本さんからは、音声ガイダンスについて話してもらいました。ウェアラブルやIoTは従来のPC/スマートフォンアプリケーションと異なり、音声が非常に重要なインターフェースとなります。BONXはスマホアプリなのに実際に使用しているシーンのほとんどでスマホの画面を見ないというかなり特殊な仕様なので、音声による情報提示・ナビゲーションが極めて重要です。詳細については発表スライドを見てもらえればと思うので、少しブログだけの裏話を。音声ガイダンス機能の中で、「弱電波環境にいるユーザーを検知して各ユーザーに音声で通知する」という機能があります。この機能を実装した際、森本さんと二人で弱電波環境の再現について非常に困っていました。iOSでは開発ツールとして電波を制限する機能もついていますが、雪山likeな「弱電波環境だったり圏外だったり電波が不安定な環境」には対応できません。友人づてに色々調べたところ東京メトロ南北線某駅の北口付近は何故だか全くの圏外となっていると知り、喜々として二人でデバックに向かいました。2時間にわたり、延々と駅のエスカレーターを独り言を話しながら行ったり来たりするメガネと金髪。はたから見ると、かなりの不審者っぷりだったことでしょう。Oewww.slideshare.netAndroidエンジニアの麻植さんからは、BONXアプリとBONXイヤフォンをつなぐBluetooth関連の技術について話してもらいました。当たり前ですが、ウェアラブル端末の開発ではハードとソフトの連携がユーザー体験を支えるキモとなります。Energy)の2つをハイブリッドで扱う仕様を採用しています。加えて、登壇資料にあるとおり、AndroidはOSバージョン/BTチップセットなどBLEに関する仕様がスマホごとにバラバラになっているという鬼のような状況です。BONXではイヤフォン側のBLE機能をSPPで制御するというかなり特殊な仕様を組み合わせることで、Android端末ごとの違いを吸収しています。こちらも裏話を軽く一つ。上記仕様をファームウェアの実装を委託している中国企業のエンジニアに何度伝えても、全く理解してもらえず、というよりはちゃんと理解しているかどうかすら理解できず、プロトタイプの検証に大変苦労しました。仕様通りの動きをしていないように見えるのは、ファームウェア側のバグなのか、アプリ側のバグなのか。最終的に、業を煮やした麻植さんが夜7時に「俺中国に飛びます!」宣言。その日の夜11時には僕と二人、中国に向かう機上の人となっていたのでした。Oeと呼ばれるようになりました。発話区間検出(VAD)の話speakerdeck.comサーバーサイドエンジニア兼音声スーパーバイザーの粟飯原さんからは、発話区間検出の話をしてもらいました。BONXのUXを支えるコア機能の一つとして、「激しい運動中でもハンズフリーで音声を届ける」というモノがあります。音声データを流しっぱなしにすると、電池・通信量をむちゃくちゃ食う上にノイズばかりで会話が成立しない従来のトランシーバーのようにボタンを押してON/OFFを毎回やるのは、スポーツ中極めて煩わしいというような課題を解決してくれるのが、このVADです。粟飯原さんは元々バックエンドのVoIPサーバー構築をするGo-langのエンジニアとしてチケイに参画してもらいましたが、音声処理についてもスバラシイ知見をお持ちということで、VADの実装についても担当してもらっています。発表資料を見ればわかりますが、わかりやすさも含めてまるで学会発表。勉強会で音声信号の波形が出てくるのを初めてみました笑。ちなみに、横で聞いていたCEO宮坂は発表を聞きながら「へぇ〜、こうなってたんだぁ〜」と(社外のひとのような)非常に素直なリアクション。このように勉強会をやると、社員同士についても技術について理解が深まるという非常に良い点がありました。フォトシンスさんの発表フォトシンスさんからは、Webエンジニアの齊藤さん、アプリエンジニアの木下さんがご登壇されました。World"が出た時以来の感動がある。理屈抜きに楽しい!」の一言。本当にそのとおりだと思いますし、どこの会社もそういうモチベーションで働いてるんだなーと深く共感できました。CTOセッションテクニカルセッションが終わった後、お酒を交えてCTOセッションと言う名の与太話が始まりました。ちなみに、乾杯は両社CEOの宮坂&河瀬さんコンビです。お話させていただきましたが、お伝えしたかったポイントは二点あって、ひとつは「フィジカルに触れるモノがあること自体の感動」です。ハードウェアスタートアップ以外のWeb系企業では、手触り・つけ心地・色や光り方(はては匂い?)みたいなところに踏み込んでユーザー体験を設計することはできません。プロダクト自体への愛着とかブランドイメージは、そういうプリミティブなところからこそ生まれるんだと思うんですよね。いう体験ができて、かつ横串で全工程の開発に関われるというのは、ハードウェアスタートアップでしか味わえない経験かと思います。二点目は、「様々な専門分野を複合したチーム開発ならではの楽しさ」です。今回の前半セッションでお伝え出来たかと思いますが、BONXの開発は極めて技術範囲が広いです。一人のエンジニアがすべての範囲をカバーすることなど、到底出来ません。各メンバーがスペシャリストとして付加価値を出しつつ、足りないナレッジはお互いに補い合うというチーム開発がうまくできていることで、なんとかプロダクト・アウトに繋げられています。エンジニア視点で言えば、日々自分の知らない技術分野についてその道のプロから学び、かつ自分も何かを教えることが出来る環境という点も、ハードウェアスタートアップならではの楽しさかと思います。実際、うちに来ているメンバーは社員・フリーランスを問わず非常に楽しそうに喧々諤々の議論をしていますし。こちらのセッションについても、本間さん・山口さんのお話ふくめ、さくらさんの記事に詳しく書いていただいているので、ぜひご一読を。お酒が入ったセッションだったからでしょうか、BONXメンバーがみんな僕らのセッションそっちのけでビールに夢中だったことは一生忘れません。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。