1
/
5

2週間経った授業報告を自動で承諾!自動承諾機能開発ストーリー

じめじめする日が続きますね~。梅雨ですね。

今回は5月末にリリースされた「授業報告の自動承諾機能」に関して、エンジニアの小川さんに突撃インタビュー!

今回の開発の山場や工夫点、今後の改善につなげたい点など語っていただきました!

NoSchoolではエンジニア採用も積極的に行っているので、興味ある方は「話を聞きに行きたい」からご連絡ください!


フルスタック
オンライン指導の課題を解決するスタートアップのWebエンジニア募集
【運営事業】 オンライン家庭教師のマッチングプラットフォーム「マナリンク」(マナリンクHP:https://manalink.jp) 【対象ユーザー】 ・オンライン家庭教師 塾や家庭教師などで指導実績があり、「個人塾経営者」、「元証券マン」や「現役バレエダンサー」などさまざまなバックグラウンドをお持ちの先生が登録しています。 オンラインでの指導のため、直接生徒のご自宅に行く必要がないため、「本業」「副業」さまざまな働き方の先生がいらっしゃいます。 ・「学びたい」生徒 メインは小学生/中学生/高校生、「学びたい」理由はさまざまです。 「中高一貫校に通っているけど、一部の教科が苦手」「英検を受けるために対策をしたい」などなど。 さまざまな理由で学校に通えない方や海外在住の日本人の生徒さんもいらっしゃいます。 1割弱ですが「社会人」の生徒さんもいらっしゃいます。 【マナリンクの特徴】 ①社会人の先生のみの「オンライン家庭教師」として登録可能 家庭教師というと「学生」をイメージしがちですが、マナリンクは経験豊富な「社会人」の先生の登録のみ。指導実績豊富で熱意のある先生に出会えます。 ②「指導してもらえるオンライン家庭教師の先生」の様々な情報が見れる 家庭教師業界の抱える問題の1つに「情報の非対称性」があります。 マナリンクでは登録している先生の様々な情報を開示することで、学ぶ側が安心・納得して先生を選べるようにしています。 例えば... ・先生の自己紹介動画(先生のしゃべっている雰囲気や指導理念が確認いただけます) ・先生の指導実績 ・先生のコース料金(マナリンクでは決まった料金プランがないため先生によって指導時間/回数/料金が異なります) そのほかにも指導した生徒さんからの口コミ、「感謝の声」も見ることができ、実際に指導を受けた生徒さんからの生の声を覗くことができます。 ③専用アプリやWEBページを使って「指導しやすい」「学びやすい」環境を提供 マッチングプラットフォームというと、「マッチングさせたらそれで終わり」というイメージが強いですが、「マナリンク」はマッチングされた後も、自社開発の専用アプリやWEBページを使うことで 「学びやすい」「指導しやすい」環境を提供しています。 例えばこんな機能があります! ・授業時間外も「先生」とやり取りできる「チャット機能」 ・「授業日や時間を忘れてた!」を防止する「カレンダー機能」 ・宿題の出し忘れやお子様の学習状況を確認できる「宿題提出機能」
株式会社NoSchool


-今回も前回に引き続き、小川さんにお話を伺います!今回リリースした機能の内容を簡単に教えて下さい!

「マナリンク」では生徒さんがオンライン家庭教師との授業を受講→先生が授業内容等についての報告を授業料の支払い者(マナリンクだと生徒の保護者さんが多い)に送付→授業報告を支払い者が承諾→先生への授業料を事務局から支払いという流れがあります。

つまり先生から授業報告を生徒側が承諾しないと先生は授業に対する料金が振り込まれないシステムになっているんですね。

ただ先生側が授業を受講していても承諾を忘れてしまうケースがあり、先生側が授業料を受け取れないということが多々ありました。

今回、授業報告の作成から2週間以上承諾がなかったデータをシステムで検知して、自動的に承諾状態にする機能を作成したことで、授業報告の承諾がなされないまま放置されてしまったとしても、2週間経過すれば自動的に承諾扱いとして処理されるようになり、上記のような問題は今後想定外のケースを除いて発生しなくなりました。

‐ついついそういう承諾系って忘れてしまうことありますよね。先生はもちろんのこと生徒さん側も助かる機能ですね。画像で見せてもらうことはできますか?

そこまでこれだ!みたいな画面はないんですが、自動承諾の際、自動的に承諾がされた旨は先生とご家庭の双方に通知されるようにしています。また、授業予定の詳細画面には自動的に承諾されたということが分かるようなラベルが表示されるようになっています。



これが自動承諾されたときに表示されるものですね。

自動承諾された授業はこのようにラベルがつくようになっています。


‐開発を始める前に、技術的に一番ネックだと思ったことはなんですか?

今回の機能開発に関しては、そこまで技術的にネックだと思ったことは少なかったです。

理由としては以下のようなものが挙げられると思います。

  • バッチの作成は、既に何度か作成経験があったため大方の進め方が分かっていたこと
  • 対象となる未承諾の授業予定の取得周りは、カレンダーの本機能開発時に近しいことを既に実装する経験があったこと

これまでの経験が開発に活きた形だったのでそこまでネックなことがなかった形ですね。

‐今回の開発の難しかった、苦戦したところはありますか?

承諾が「手動承諾」か「自動承諾」かというフラグを、どのようにドメインオブジェクトに持たせるかという部分の実装ですかね。 今回の「承諾」という行為は、「授業報告」に対してなされるものであり、元々授業報告エンティティが「$approvedAt」という形で「承諾」に関する知識を持ち合わせていました。 ドメイン駆動設計に関する知見がまだまだ浅いこともあり、最初は愚直に授業報告エンティティに対して、追加で「$autoApproved(=自動承諾を表すフラグ)」を持たせるように設計を考えていたのですが、授業報告エンティティに対して承諾に関わる値が $approvedAt と $autoApproved で2種類持っている状況に違和感を覚え、これを一つの「承諾」という値オブジェクトとしてまとめて扱うようにし、その中に前述の $approvedAt と $autoApproved を含めるように設計し直すことができた点は、今回の開発の中でも成長したことだったように思います。

‐開発機能の技術的な工夫点はありますか?

先ほど述べた、苦戦した部分と同じにはなるんですが、最初は自動承諾というフラグを愚直に授業報告エンティティに足すような設計で考えてしまっていたところを、一度承諾という値オブジェクトを定義し直してから、その承諾値オブジェクトに対して自動承諾フラグを持たせるという設計をすることができたことですね。

‐今回の機能のリリース前とリリース後に「個人」として成長した部分はありましたか?

ドメインのことを考慮して、どう設計すればより保守性・拡張性高く改修することができるかということを検討しながら開発を進めることができたことですね。

‐今回リリースした機能が80%の完成度だとして、残りの20%でどのように発展していきたいか教えて下さい。

今回は全体を通して満足行く内容の開発だったので、これだ~みたいなのはないのですが、マナリンクのサーバーサイド開発を支えているドメイン駆動設計の、ドメインや集約についてより理解を深めていけると今後の開発にも大いに役立つと感じているので、そのあたりの知識をより深めて、今後の開発に活かしていきたいなと感じました。


小川さんありがとうございました!この機能実装で、オンライン家庭教師側、生徒さん側がより授業を受けやすくなるといいですね!

現在NoSchoolではエンジニア大募集中です!

今回の小川さんのようにフロントエンド~バックエンドで一気通貫して開発されたい方、以下のポジションはいかがでしょうか?


是非NoSchoolに興味をもっていただけましたら「話を聞きに行きたい」ボタンからご連絡下さい!ざっくばらんにお話しましょう!以下の求人から応募いただいてもOKです!

フルスタック
オンライン指導の課題を解決するスタートアップのWebエンジニア募集
【運営事業】 オンライン家庭教師のマッチングプラットフォーム「マナリンク」(マナリンクHP:https://manalink.jp) 【対象ユーザー】 ・オンライン家庭教師 塾や家庭教師などで指導実績があり、「個人塾経営者」、「元証券マン」や「現役バレエダンサー」などさまざまなバックグラウンドをお持ちの先生が登録しています。 オンラインでの指導のため、直接生徒のご自宅に行く必要がないため、「本業」「副業」さまざまな働き方の先生がいらっしゃいます。 ・「学びたい」生徒 メインは小学生/中学生/高校生、「学びたい」理由はさまざまです。 「中高一貫校に通っているけど、一部の教科が苦手」「英検を受けるために対策をしたい」などなど。 さまざまな理由で学校に通えない方や海外在住の日本人の生徒さんもいらっしゃいます。 1割弱ですが「社会人」の生徒さんもいらっしゃいます。 【マナリンクの特徴】 ①社会人の先生のみの「オンライン家庭教師」として登録可能 家庭教師というと「学生」をイメージしがちですが、マナリンクは経験豊富な「社会人」の先生の登録のみ。指導実績豊富で熱意のある先生に出会えます。 ②「指導してもらえるオンライン家庭教師の先生」の様々な情報が見れる 家庭教師業界の抱える問題の1つに「情報の非対称性」があります。 マナリンクでは登録している先生の様々な情報を開示することで、学ぶ側が安心・納得して先生を選べるようにしています。 例えば... ・先生の自己紹介動画(先生のしゃべっている雰囲気や指導理念が確認いただけます) ・先生の指導実績 ・先生のコース料金(マナリンクでは決まった料金プランがないため先生によって指導時間/回数/料金が異なります) そのほかにも指導した生徒さんからの口コミ、「感謝の声」も見ることができ、実際に指導を受けた生徒さんからの生の声を覗くことができます。 ③専用アプリやWEBページを使って「指導しやすい」「学びやすい」環境を提供 マッチングプラットフォームというと、「マッチングさせたらそれで終わり」というイメージが強いですが、「マナリンク」はマッチングされた後も、自社開発の専用アプリやWEBページを使うことで 「学びやすい」「指導しやすい」環境を提供しています。 例えばこんな機能があります! ・授業時間外も「先生」とやり取りできる「チャット機能」 ・「授業日や時間を忘れてた!」を防止する「カレンダー機能」 ・宿題の出し忘れやお子様の学習状況を確認できる「宿題提出機能」
株式会社NoSchool
株式会社NoSchool's job postings
1 Likes
1 Likes

Weekly ranking

Show other rankings