2月13日から25日にかけて、XSHELLとして初めてのインターンシップを行いました。今回はその内容を紹介させていただきます。2週間の日程のうち、前半は業務体験、後半はIoTプロダクト開発を行いました。後半のプロダクトの成果物はGitHubに公開されておりますので、是非ご覧ください。
業務体験
前半の業務体験では、現在請け負っている受託案件の一部機能追加としてLinuxが動作するマイコン上で、MQTTのメッセージングやハードウェアシリアルを用いたセンサー制御を行うアプリケーションの実装をお任せしました。
XSHELLの開発現場ではZenHubを使ったチケット駆動開発・カンバンを行なっていますが、今回はタスク管理として電子ツールではなく、付箋とボードを使ったカンバンで進めました。電子ツールに比べリモートワークやチケットの消化率などを計測するのには向きませんが、一方で機能に縛られず自分たちのワークフローに必要十分な情報を自由に設定できるので便利です。
最初は窓にペタペタ貼っていましたが、貼るのが手間ということで近くにおけるボードにした様子です。またタスクの依存関係を可視化するために、その辺にあったワニクリップでチケット同士を留ました。上の写真のように、ある問題に対する解決のために創意工夫できるのも魅力的です。
IoTプロダクト開発
日程の後半ではインターンプロジェクトとして、Webアプリケーションで遠隔操作できるアーム型ライトを一から実装しました。アイディア出しから始まり、デザイン・設計、実装に取り組み、ハードウェアを含めた成果物を約一週間で作り上げます。
まずはスケッチをして、筐体のデザインや動作方法を固めて行きます。
アームライト側の実装。サーボモーターとLEDの制御にはArduino, WEBアプリケーションとのやり取りはRaspberryPiで処理しています。それぞれはI2Cを使い、JSON形式でシリアル通信をします。(今回はとどきませんでしたが、RaspberryPiにもっと複雑な処理をさせたいですね)
Webアプリケーションとアームライトの通信はWebsocket, Arduino以外の実装は全てJavaScriptで行われました。完成したプロトタイプはこちら。
振り返って、デザインに1人, 筐体設計に1人, ハード・ソフトウェアに3人の全部で5人がプロジェクトに携わりました。1日5時間程度の限られた中でしたが、動作するものを作りきることができました。反省点を踏まえ、次のバージョンについて話し合った結果、以下の改良点が上がりました。
配線の考慮
コントローラのUIを強化
全体的な小型化
筐体をアルミボディに
最終日はRaspberryPi制御の釜でピザを焼いて食べました。お疲れ様でした。
終わりに
最後に、全日程を終えたインターン生の長谷川さんの感想を紹介したいと思います。
感じることができたベンチャーらしい所
- 決まり事が少ない 自由・柔軟
- 行動が早い
- 社員同士が近い->コミュニケーションがすぐ取れる
- 人や技術など足りていない部分がある
感想
今まで300人規模の企業へインターンシップへ行ったことはあったのですが、初めてベンチャー企業インターンへ行き、エンジニア以外の人の仕事を見ることで「こんな事まで気を配って仕事している人がいるんだ」ということに気づきました。
雰囲気を知るために一箇所だけインターンに行くとしたら?と考えて来た企業なので、実際の業務の一部に関わった上にチームでプロトタイプを作るところまでやらせてもらって本当に良かったです。
ピザも美味しくいただきました!