🤖

インターン体験記オブザ体験記 [株式会社MTI]

2024/09/11に公開

はじめに

株式会社 MTI様の 1 週間のハッカソン型インターンシップに参加した体験記です!

MTI とは?

ルナルナmusic.jpをはじめ、主にヘルスケア系のモバイルサイトを運営している会社です。

インターン内容は?

チームで 1 週間内にヘルスケアWeb アプリケーションを、マーケティング観点とともに開発します。

  • day1: AWS & node.js 研修
  • day2: Vue.js 研修
  • day3: マーケティング研修 & 企画立案
  • day4: 企画中間発表 & 開発開始
  • day5-6: ゴリゴリ開発
  • day7: 最終発表

何作ったの?

『Fit Beyond』
更年期症状の改善特化型オンラインフィットネスサービス

  • ターゲット: 更年期に悩まされており、改善したいと考えている女性
  • ベネフィット(機能):
    • 更年期対策トレーニングを Zoom で教えてもらえる
    • レコメンド機能でユーザーの体調や症状対策に最適化されたメニューを提案できる
    • コミュニティ機能で他ユーザーの運動記録を閲覧できる

インターンシップで達成できたこと

  • 主要機能であるライブ配信(zoom)機能をデモで動かせた

→ 最低限作りたかった機能をデモで動かせるように開発を進められたことが嬉しかった!!

  • 役割分担を明確にして、効率よく進められた

→ 当初は人数に対して開発(コーディング)の分担が出来るか不安だったので、各々の得意な分野を活かしたチーム開発画が出来て良かった

  • 開発に入っても、企画部分に立ち戻って再会議をしたりなど、柔軟に対応できた

→ 正直これが一番嬉しいし、そのおかげでコミュニケーションに心理的障壁がなくなって、良い議論ができた!

インターンシップで達成できなかったこと

  • 開発にタスクを振りすぎて、企画の意見をあまり出せなかった。

正直、「KBF?KSF?なんだそれ?」ってなってた
差別化を図るためのレコメンド機能も自分は提案できなかったから、「企画、アイデア出し」の能力が自分は低いなと感じた

  • branch 切って git 管理できなかった

2 日という短い開発期間の中、conflict を起こして作業がストップするのはリスクだと思ったので、1 人の Cloud9 を share して作業する方針を取っていた
しかし、3 人目が入ると EC2 が落ちてしまうので、仕方なく 1 人だけブランチ切って作業すると、結局どこかで conflict が発生してしまうとわかった

  • トレーナー管理機能を作成できなかった

最低限実装するべき機能に含まなかったものの、せっかくだし、身を削って実装するべきだった

  • サブとはいえ大事なコミュニティ機能をデモで披露できなかった

機能は実装していたのに、DB に必要なデータを格納しておらず、プレゼン準備の詰めの甘さが出てしまった

  • 提出期限を 30 分延長してもらった(期限を守ることが出来なかった)

社会人として当たり前のことが出来なかった。非常に良くないことだと思うので、絶対に起こらないように、スケジュール管理をして、チームで共有したいと思う。

  • UI をいい感じに出来なかった

せっかく CSS 作ってもらったのに、merge 出来ずに披露できなかった…git の実力不足…

  • デモ用のアカウントに、アピールしたい機能を実行できるデータをあらかじめ準備していなかったので、メンターの方に思考の負担をかけた

ただ「作りました!」で発表するのではなくて、手元で操作出来る準備が出来ていなかった

  • ライブ配信機能を自前で実装できなかった

まあ、「自前で作りました!」ってかっこいいからな〜
もし作れたら、リアクション機能付けるとか、色々やりようはあった

苦労したこと

マーケティング面

  • 他チームとターゲットユーザーが被っていて、機能の差別化をすることが大変だった

    • 他チームの機能は運動の提案に対し、自チームは zoom 配信で指導を受ける事ができる
  • 中間発表時点で機能に新規性が無く、企画として弱かったので、適宜構想段階に戻るのが大変だった

    • (中間発表時点) zoom 配信 + コミュニティ機能 (追加 →)健康記録 + レコメンド機能
  • 中間発表のテーマは、「育児を終えた 50 代女性のフィットネスアプリ」だったが、競合が多い & 機能に新規性が無い でニーズのあるものを作るのが大変だった!
    → チーム内で何度もセグメンテーションを見直して、
    _ 50 代と言うことは更年期に入る

    症状を運動で解決できるケースが多い

    更年期対処に特化したフィットネスアプリに競合が少ない
    ことから、
    _ 「50 代女性」 → 「更年期を迎えた女性へのフィットネスサービス」 とした

開発面

  • デザイン用にブランチ切ったけどマージ出来なくて、差分を確認しながら手動で編集したこと

  • cloud9 使いにくすぎ!!!

VSCode で tunnel 作ってローカルから作業してたけど、たまに EC2 が落ちて、復旧するのに7 分くらい作業がストップするのが辛かった

今考えればただローカルに clone してブランチ切ればよかっただけか

  • DynamoDB のリスト型の操作が大変だった!!!
    値追加するのに深夜に 3 時間格闘した!!

  • タイムゾーンや非同期機能等の理解が曖昧なことが原因で、調べることに時間がかかり、実装に遅れが発生してしまった

  • Web にアクセスして GUI で AWS を触るのが地味に面倒だった!
    コマンドで作業できるようになりたい!!

  • 徹夜したので生活習慣が終わったこと
    すごく眠い

チーム運用面

みんなで楽しく開発できました!

このインターンシップで学んだこと

マーケティング面

  • 「なぜライブ配信であるのか」という問いに対する明確な答えが持てなかった

「Web 開発だしライブでしょ!」という先入観が入っていた。実際は企画する明確な根拠が必要だと思うので、自分の考えは甘かったことを知ることが出来て良かった。

  • ユーザーに機能を提供することが目的なら、予約キャンセル機能をつけることが優先なのでは? CRUD をもって 1 つの機能やで。

確かに。気づかなかった。アプリユーザーなら、間違えて予約することは絶対にある。API を作るのに、CRUD のことを頭の隅にも置いていなかったので、次から API 構成の考えを改めようと思う。

  • 月額料金でマネタイズしていたけど、ユーザ利用は基本無料にして、取得できたユーザデータの統計データを企業に販売するという方法もある。

まっっっっったく思いつかなかった!とてもいいアイデアをゲットできた!!!

  • 自前で PaaS の作るの大変なので、PaaS の拡張機能で攻めるのもアリ

→ ごもっとも。色んなマネタイズの方法を学ばさせていただいた。

開発面

  • AWS インフラを学んだ

lambda,api gateway,s3,Dynamo DB,

  • 認証機能にセキュリティを考慮できたらもっと良かった
  • UI の綺麗さはやはり大切

少ない発表の時間で 「おっ!」 となるので良い

  • ライブ配信機能を zoom にして、完全に外部サービスを頼っても割といい評価がもらえる

逆に「よく考えたね!」となって、頼っても良いんだ、となった

  • 予習の力は侮れない
    day2 の Vue 研修前日に公式チュートリアル回したことで、理解しやすかった!

プレゼン面

  • チームのみんなで発表すると、声のトーンとか、スピードとかで聞き手に少しの負担がかかるので、なるべく 1 人で * もしみんなで発表する場合、
    「私達のチームは、みんな仲が良く、これまで全員で協力してコミュニケーションを取って開発してきました!なので、全員で発表させてください!」← 明るく

→ 確かに〜!

  • メイリオなど一般的なフォントで作る (思想は入れるな!)

  • 聞き手にいらない思考を与えないように、これから行うことを簡潔に説明する

  • 予想質問回答集、ドキュメント(読み返すことのないくらいわかりやすいプレゼンが出来るといいよね)あるといい!

  • デモでもパスワードの入力は良くないよ!(セキュリティ的観点から)

↑ 結局これ ↑スライド毎に「なんで?」を繰り返せば、納得感のあるプレゼンができるよ!それが予想質問回答集になるし

チーム運用 & 進捗管理面

  • GitHub Projects を使った進捗管理が審査員にウケてて良かった
  • ブランチを切って競合が発生しないように git 管理したほうが結果的に良い
  • 開発 2 人、企画ブラッシュアップ 1 人、デザイン 2 人と、かなりはっきり役割を分けられたことが、作業の効率化に繋がった
  • 最低限作るべき機能のすり合わせをしたので、次の作業が明確になった

エンジニア賞

最優秀チーム賞とは別に、 『エンジニア賞』 を頂きました!
評価点は以下の 2 点です!

  1. エラーの原因追及を行い、コードに対する理解を深めていた
  2. 周りを巻き込んで開発を進行していた

個人的には普段通りに開発していたのですが、それがチームを良い方向に導いていて、間違っていなかったんだなと改めて知るきっかけになりました!
今後も継続していこうと思います!

おわりに

全員同じホテルだったので最終発表前日は缶詰で夜通し開発したのは青春だった…
デモで、zoom のネタウケて良かった笑
地元一緒の子が居て世界は狭いなと思った。

「最近どんな技術使ってるんですか?」の問に答えられなかった。
→ 明確になにかやってるわけではないんだよな。
何も目的なく開発ゴッコしてるだけのような気がしてきたから、もっとちゃんと目的持っておもろいプロダクト作りたいなって思った。

写真たち


懇談会楽しかったな〜

『エンジニア賞』受賞の景品でノート PC クーラーを頂きました!

GitHubで編集を提案

Discussion