1
/
5

【機能追加リリースの裏側】開発メンバーが明かす「Schoo Swing」の技術的特徴と、組織の強み

こんにちは!Schooコミュニケーション戦略室のルーシーです。

今回は、Schooのオリジナルプロダクトである「Schoo Swing」の開発メンバーにインタビューを実施!

4月に大幅な機能追加を行った「Schoo Swing」(以下、Swing)。
大規模リリースを終えた開発メンバーの代表2人に、Swingの技術的特徴オフショア開発を経験して感じたこと、開発チームの強みについて聞きました。

多様なメンバーが集まってスクラム開発をする上で、Schooのフィロソフィーの一つである「尊重」が大きなプラスになっていると気付いたとのこと。その心は…??

■高等教育機関DXプラットフォーム「Schoo Swing」について

・プレスリリース

高等教育機関向けDXプラットフォーム「Schoo Swing」に、学修データ分析や授業の自動アーカイブ配信など、学修者本意の学びをサポートする8つの新機能を追加
Schoo Swingは「学修者本位の学びを当たり前に。」をコンセプトに、スクーが大学等の高等教育機関*に特化して提供しているCMS/LMS**一体型のクラウドベースの学習プラットフォームです。授業特性に合わせたオンライン/オフライン/ハイブリッドの授業形式を1つのツールで実現できます。 ...
https://prtimes.jp/main/html/rd/p/000000174.000006391.html

・Swing設計担当者インタビュー

学生・教員・大学運営の「三方よし」を実現したい。「Schoo Swing」設計者が志す「ユーザーファースト」と、根底にある独自の哲学|株式会社Schoo(スクー)【公式】|note
文部科学省は、2040年に向けた大学・高等教育改革の実現すべき方向性として、「学修者本位の教育」への転換を掲げました。 ...
https://note.com/schoo/n/n62fbbb9d8d09

*インタビュイー紹介*

吉川 利幸 開発マネージャー(写真:左)、永橋 剛 プロダクトマネージャー(写真:右)

Talk1:今回の大規模リリースで進化したところと、お客様の反応

ーーまず、永橋さんにお聞きします。4月の機能追加リリースで、Swingはどんな風に進化しましたか?

永橋:
学生を少人数のグループに分けてディスカッションができる「ブレイクアウト機能」や、Schoo本体からの学習コンテンツ提供など、大学の授業を成立させる上で便利な機能が揃いました。

追加する機能の要件定義にあたっては、Swingをすでに導入いただいている大学とご提案中の大学、合わせて約20校の教職員の方にヒアリングをして決めていったのですが、そこで特に要望が強かったのが出席管理の機能追加です。

多くの場合、課題の提出や授業中の視聴率などから出席/欠席を判断しているそうですが、その管理が予想以上に大変とのことで、使いやすいツールを開発することが求められていていました。

ーーお客様からの反応はいかがですか?

永橋:
お客様からは、CSメンバーを通してたくさんのお声をいただいています。特にライブ授業のアーカイブ機能やオンデマンドクイズ機能については喜んでいただけた実感があります。学習データ分析に関する機能も、これから更にパワーアップさせていきたいです。

▼実際のお客様の声(一部抜粋)▼

「これまでZoom、大学ポータルサイト、MS_Formsを行ったり来たりしていましたが、Swingはほぼ自動だと感じました。すごく助かります。」
「講義中のメモ・コメントが後から閲覧できるようになるのはとても嬉しいです。」

Talk2:Swing開発の技術的特徴

ーー次は、開発の具体的なお話を開発マネージャーの吉川さん中心にお聞きします。
  まずはSwingの開発環境と、それを選択した理由を教えてください。

吉川:
バックエンドはGolang、フロントエンドはNuxt.jsを使っています。

元々はプロトタイプをPHPで作っていたのですが、PHPの特徴として比較的コード実装の自由度が高い言語なので、扱うエンジニアのスキルの差が顕著に出やすい。Golangはそれに比べると型がカチッとしていて書き手の力量の差が出にくいので、エンジニア不足の現状も踏まえて考えた時に、製品版の開発言語にはGolangを選択しました。

あとは単純に、エンジニアとしては最新の言語で開発してみたかったというのもあります。(笑)

ーー設計の面での特徴はありますか?

吉川:
アーキテクチャで言うと、「マイクロサービス」で作っていることが大きな特徴です。

「マイクロサービス」というのは、1つのプロダクトの中身を細かい部品に切り分けて、それぞれ別々に機能するように作る考え方です。プロダクトを1つのまとまりとして作ると、機能追加の度にどんどん大きくなっていって、改修しにくい・動きにくい、全体像が把握しづらいなどの問題が出てきます。それを避けるために、1つ1つの小さい部品を組み合わせて大きなプロダクトとして提供するんです。そうすることで、DXやサーバーなど一部のサービスでより良いものが開発された時、そこだけを最新のものに入れ替えたりすることも可能になります。国内だとメルカリとかグリー、海外だとNetflixTwitterも「マイクロサービス」の思想で作られています。

従来通り1個のまとまりとしてプロダクトを作る方が、正直なところ考えることが少なくて楽ではあります。ただ、スクーにとってのSwingの重要性や将来性を考えた時に、将来的な拡張性やメンテナンスのしやすさを重視してマイクロサービスの思想を取り入れました。

僕たちは、「Schoo Swing」を日本中の大学に、そして世界に広めたいと本気で思っていますから。

Talk3:開発において苦労した点と得た学び

ーー4月の大規模リリースの開発スケジュールと、特に苦労したことを教えてください。

吉川:
今回のリリースに向けての開発スタートは、2021年10月です。その前の大きなリリースが9月だったのですが、大学にSwingを導入いただくためには次の春学期に間に合わせる必要があったので、必然的に3月末にリリースすることになりました。

元々オープンソースのツールも組み合わせて開発する構想があったんですが、納期的にも難しいということになり、全てオリジナルで作ることになりました。必要な機能をどう実現すれば良いかを全てゼロベースで考えるのに、みんなすごく苦労しましたね。

ただ逆に言うと、出来合いのものを使わずに開発することって他の案件ではなかなか無いので、すごくいい勉強にもなりました。

また、作り込まないといけない機能要件に対して開発チームのリソースが不足していて、ベトナムのオフショア開発会社と連携することにしたのですが、国を超えたチーム作りと開発作業を並行して行わなければいけなかったところが最も大変だったかも知れません。

ーーSwingの目玉機能の1つとして「学習データ分析」があります。この部分も、開発チームがゼロベースで設計したんですか?

永橋:
取得したデータをどのタイミングで集計するのか、バッチなのかリアルタイムなのかっていうところは開発チームが考えました。アプリケーションだけで閉じずにインフラ周りを含めて設計したので、エンジニアとしては良いスキルアップの機会になったと思います。

吉川:
そうですね。すごくやりがいもあって面白かったですし、個人的には僕らが作ったデータ集計の機能が将来的に「Schoo」のサービスにも生きると良いなと思っています。

ーーベトナムのチームとのオフショア開発についても聞かせてください。

永橋:
基本的に、日本とベトナム両方のメンバーで都度合意形成をしながら進めていました。あちらには日本語が堪能なブリッジSEがいて、我々チームにもベトナム出身のエンジニアがいて通訳をしてくれたので、彼らの助けを受けて言語の壁を乗り越えましたね。

吉川:
ベトナムのメンバーは真面目で、いつもきちんと作業をしてくれてすごく助かりました。

一方で、文化の壁を感じる場面もやっぱりありました。スクーのメンバーの中では、阿吽の呼吸を前提で進められるものが、当然ベトナムの方には伝わらないので、より丁寧な言語化・明文化が必要になりました。

ただ、「オフショア」なんて大袈裟な言葉を使っていますが、実情として、日本のエンジニアとしか仕事をしない現場は少なくなってきていると思いますし、世界の開発現場では複数の国籍のエンジニアが一緒に仕事をする場面が当たり前になってきています。だからこそ、全員が意思疎通できるようにきちんとドキュメントを整えるのは、本来普通のことです。

今回それを肌で実感できたのは僕たち開発チームにとっても良い経験でした。

ーー他にはどんな気付きがありましたか?

永橋:
メンバーが増えた分、コミュニケーションロスが発生しやすくなったのは課題ですね。今まで少人数でのスピード開発だったからこそ、開発プロセスを明文化しなくてもお互いに暗黙知として進めてこられました。

でも今は組織が大きくなってきたので、大規模なリリースが落ち着いた今、開発プロセスを徐々に整えて行こうとしています。

Talk4:Swing開発を通して気づいたSchooの強みとこれからのDX事業

ーーSwing開発を通して気づいた開発部門の特徴や強みはありますか?

永橋:
最近は本格的なスクラム開発をしています。3月末までもそれに近い形で進めていましたが、4月から新しく再スタートするにあたり、企画の段階から含めて1週間単位で開発プロセスを見積もって進めています。

吉川:
ウォーターフォールだと、上流と言われる要件定義とか意見出し・検討に近いところから、下流に行けば行くほど「作業」の色が濃くなっていくので、どの段階でプロジェクトに関わるかによって得られる経験値も変わってきます。

スクラム開発だとプロダクトに対して上流から下流まで一気通貫して関われますし、スクーとしても、単にコードを書く作業者ではなく、プロダクトを作りたいと思ってくれる人と一緒に作っていきたいので、このやり方が合っているかなと思います。

それで気づいたことですが、スクラム開発をする上で、スクーのフィロソフィーである「尊重」の文化が根付いていることが大きなプラスになっています。

エンジニア同士の会話って、白熱するとギクシャクしたり、議論にならなかったりすることもあると思うんです。だけどスクーではお互いを尊重しあう土台があるから、開発チームでも健全に議論ができて、スクラムとしてきちんと機能できています。

実際に外部から業務委託などでジョインしてくれているエンジニアさんからは、「スクーの打ち合わせはすごく意見が出しやすいですね」と言ってもらえることが多いですし、僕自身がこれまで経験した案件と比べてもそう感じるので、これは他にはないスクーの強みなんだと思います。

ーー冒頭でSwingを導入した大学の方からの声を紹介しましたが、大学DX事業に携わる皆さんとして、やはり日本の大学教育が抱える課題を解決したいという思いは強いと思います。一方で、事業として継続するためには「ビジネス」としてきちんと成立することも必要です。この二つの両立について、どんな風に考えていますか?

永橋:
僕の解釈でお話しすると、まずは教員の方の忙しさ解消であったり、学生がもっと主体的に学ぶための仕組みであったり、目の前の教育現場の課題を解決することを第一に考えてより良いサービスを開発・提供することで、自然と経済収益性が成り立っていくと考えています。

そしてその延長線上に、社会人の学び直し促進や大学を起点とした地方創生など、Schooが目指す「学びによる社会改革」があって、社会貢献性という意味でも両立できると思います。

■参考記事(DX事業責任者インタビュー、代表インタビュー)

すべての学生に、社会で活きる学びを。 大学・高等教育機関のDXが実現する「学修者本位の教育」|株式会社Schoo(スクー)【公式】|note
2020年、突如発生した新型コロナウイルスの脅威によって、社会全体がこれまでにない変化を余儀なくされました。その影響は生活のあらゆる場面に及びましたが、多くの教員・生徒が集まる「学校」も、様々な課題に突き当たりながらも急速なオンライン化を進めてきました。 しかし、Schoo(スクー)で高等教育機関DXプラットフォーム事業の責任者を務める野島亮太さんは、 ...
https://note.com/schoo/n/nd094d6ad10fc
なぜSchooは「大学DX」と「地方創生」をやるのか?社会人の学びがつくる真の価値とは|株式会社Schoo(スクー)【公式】|note
コロナ禍を経て、社会人の学びに変化の大波が訪れています。「世の中から卒業をなくす」ことを ミッション に掲げ、オンライン学習の可能性と必要性を追求してきた「Schoo(スクー)」はなぜ、社会人向け動画学習サービスのみならず、大学のDX支援や地方創生にまで踏み込んでいくのでしょうか。 Schooの森健志郎社長に聞きました。 ※ 前回のインタビュー ...
https://note.com/schoo/n/n3046ada7b720

ーー最後に、これからのSwing開発チームにはどんなエンジニアにジョインして欲しいですか?

吉川:
まず何より、大学や高等教育機関の教育をもっと良くしたいという想いに共感して、僕たちと同じ方向を見据えて同じ熱量で一緒にDXを進めてくれる人です。個人的には、技術的な部分は、後からでも学んで習得していけば良いと思っているので、今の時点で豊富なGolangの開発経験が必須だとか、そういう風には思っていません。

永橋:
そうですね。ただ、「教えて欲しい」という受け身の態度ではなくて、ある程度の自走力を持って主体的に学んでスキルアップしていける人だと大歓迎です。

ここまで読んでいただきありがとうございました!

次は7月に更新予定です。
お楽しみに!

株式会社Schooでは一緒に働く仲間を募集しています
14 いいね!
14 いいね!
同じタグの記事
今週のランキング
株式会社Schooからお誘い
この話題に共感したら、メンバーと話してみませんか?