インターンシップを実施しました(2週目)
こんにちは。イーアールアイの澤村です。
8/22~9/2でインターンシップを実施しましたので、どのような内容を実施したのかについて紹介させて頂きます。
今年は、8/22~8/26と8/29~9/2で分けて、1週間ごとにそれぞれ別の課題に取り組んでいただきました。
本記事では、2週目である8/29~9/2に取り組んだ内容についてお話していきたいと思います。
マイコンを制御して温度計を作ろう
8/29~9/2の1週間で、マイコンを使って温度計の作成を行ってもらうこととしました。
基本的には2020年のインターンシップで実施した内容と同じです。
マイコンについているプッシュスイッチを押したら、PC 上に温度を表示するシステムを開発します。
インターン生には以下の実装を担当していただきました。
- 温度センサからAD値を取得する
- AD値を温度に変換する
- 単発ノイズ除去
- ボタンが押されたらこれまで取得した温度を平均化
温度センサ制御に注力してもらうために、温度を送信する部分は事前に実装済です。
スケジュール、進め方について
1日目 環境構築、課題内容やマイコンについての基礎知識の説明
2日目 フローチャート作成
3日目 コーディング
4日目 コーディング、発表会レポート作成
5日目 発表会レポート作成、練習、発表
スケジュールには記載していませんが、朝と昼にSlackでの進捗連絡をお願いしました。
また、都度キリの良いタイミングで対面でのレビューの機会を設けています。
レビューは、私の他に2名の方に協力していただきました。
コーディング作業だけではなくて、フローチャートの作成やレビューをする事によって、実際のシステム開発に近い流れを体験してもらうのがねらいです。
インターン全体のまとめ資料をつくる必要もあるため、システム開発に避ける時間は実質4日に満たない短い期間での作業となりました。
参加者が4名だったのと、インターン生の中には1年生の方もいたので、2名ずつのチームに分かれて作業していただきました。
フローチャート作成
コーディングする前に、プログラムの流れを視覚的に整理するためにフローチャートを作成します。
予めフローチャートで整理しておくことで、プログラムの構造の把握ができたり、アルゴリズムに不備がないかを予め確認できるので、その後のコーディングをスムーズに進めることができます。
特に、今回のようなチーム開発の場合では、この作業を通してチーム内でシステムの理解を深めたり、認識を合わせるのに非常に有用です。
レビューを通して、チームでシステム全体の流れや単発ノイズ除去や温度の平均化のアルゴリズムについての認識が共有できている様子が伝わってきました。
これは余談ですが、一番馴染みがあるだろうという理由でExcelを使って作業してもらっていたのですが、実業務ではExcelではなく別のツールが使われることが多いので、そちらを導入してみても良い経験になりそうだと思いました。
コーディング
レビューの時間以外は基本的に席を外してインターン生におまかせしていたのですが、Slackでの進捗連絡を見ると難航している様子だったので、別途時間を作って私が様子を見に行くようにしました。
pythonで作業することが多いということだったので、ほとんど触ったことのないC言語に悪戦苦闘しているとのことでした。
それでも難航していたのも序盤だけで、何回かサポートするうちにC言語に慣れていき、どんどんコーディングを進めてくれました。
おかげで予定よりも早くコーディングが終わって動作確認までしっかりできる余裕ができました。
コーディングの後にレビューを行いました。
レビューでは、関数名の付け方や命名規則についてお話しました。
学生のうちは他人にソースコードを見てもらう機会があまりないですが、仕事では今回のようにレビューしてもらったり、外部に公開することもあるので、他人に意味が伝わりやすい記述にするべきである、という話をしました。
他にもメモリの制約やパフォーマンスを考慮したコーディングなど、組み込みならではの話もしました。
まとめ
今回は作業できる時間が短かったのと、大学一年生の方がいることを考慮してヒントやサポートを厚くしたのですが、意外にも時間が余る結果となりました。学生のスキルが上がってきていると感じたので、今後はもう少し学生さんにお任せするようにしても良さそうです。
詰まっているところや疑問は積極的に質問してくれたり、チーム内でうまく話し合って分担作業している様子から、コミュニケーション能力が非常に高いと感じました。
コロナ禍だったので仕方ない部分ではあるのですが、インターン生のみなさんは基本的に一つの会議室にこもりっぱなしになってしまって、せっかく会社まで来て頂いてるのに他の社員さんと接する機会がほとんどなかったのが勿体なかったです。
次インターンシップを行うときにコロナが落ち着いていたら、少しでも会社の雰囲気がわかるような場所で作業できると良いと思いました。
5日間ありがとうございました。学生生活も就活もがんばってください!