Upgrade to Pro — share decks privately, control downloads, hide ads and more …

アルゴリズムチームのご紹介/about atama plus algorithm team

アルゴリズムチームのご紹介/about atama plus algorithm team

atama plusのアルゴリズムチームのエンジニア向けご紹介資料です。(2022年4月12日更新)

新しい教育を創り、社会を変えていく仲間を募集しています。
ご興味もっていただいた方はぜひご応募ください!

▼募集職種一覧
https://herp.careers/v1/atamaplus

▼その他参考資料
・atama+ culture code
Mission実現に向けて大切にしているカルチャーをまとめています
https://www.atama.plus/wp-content/uploads/2020/07/atama%EF%BC%8B-culture-code.pdf

・3分でわかるatama plusのエンジニア(プロダクト部門の全体像がわかるスライドです)
https://speakerdeck.com/atamaplus/about-atama-plus-engineer

・3分でわかるatama plus
https://speakerdeck.com/atamaplus/about-atama-plus

atama plus

April 12, 2022
Tweet

More Decks by atama plus

Other Decks in Programming

Transcript

  1. ア ル ゴ リ ズ ム チ ー ム の ご 紹 介
    ( エ ン ジ ニ ア 向 け )

    View Slide

  2. アルゴリズムチームとは?

    View Slide

  3. アルゴリズムチームとは?
    →⽣徒の学習体験の根幹を成す
    レコメンドエンジンの改善によって、
    ⽣徒の学びの最⼤化に貢献する!

    View Slide

  4. ⓒ 2022 atama plus Inc.
    atama+のレコメンドエンジンとは?
    ⽣徒に個別最適な学習をレコメンドすることで、最短での学びを提供します
    4
    アクティビティ(講義、演習、復習など)
    単元 問題

    View Slide

  5. ⓒ 2022 atama plus Inc.
    レコメンドエンジンの動作原理
    ⽣徒の回答履歴、⽣徒の⽬標、単元の依存関係などを⼊⼒として
    アクティビティ、単元、問題をレコメンドしています
    5
    回答履歴 ⽣徒の⽬標
    単元の依存関係

    View Slide

  6. ⓒ 2022 atama plus Inc.
    レコメンドエンジンの裏側で活躍するアルゴリズム
    6
    習熟度の推定
    問題難易度の推定
    依存単元の抽出 問題のレコメンド
    学習に要する時間の予測
    問題1
    問題2
    英語
    数学
    国語
    理科
    社会
    問題3

    View Slide

  7. ⓒ 2022 atama plus Inc.
    チーム構成
    スクラムチーム(職能横断チーム)となっており、課題のディスカバリーから、
    機能のデリバリーまで、チームで⼀貫して対応します
    7
    学習体験
    プランナー
    プロダクト
    オーナー
    エンジニア
    (Algo/backend)
    Quality
    Assurance
    (品質保証)
    データ
    サイエンティスト
    1名 2名 5名 2名 1名

    View Slide

  8. ⓒ 2022 atama plus Inc.
    アルゴリズムの開発プロセス(機能追加の例)
    8
    情報収集
    仕様検討
    PoC
    実装
    A/Bテスト
    運⽤
    ・課題ヒアリング w/ 学習体験プランナー、データサイエンティストチーム
    ・どのようなアルゴリズムが使えそうかを、論⽂等も参照しながら調査
    ・仕様検討 w/ 学習体験プランナー、QAチーム
    ・場合によっては、オフラインで動かして、結果を検証
    ・パフォーマンスや保守性等を考慮して実装
    ・Unit Test、Feature Test w/ QAチーム
    ・場合によっては、A/Bテストを⾏うことで、効果を検証
    ・モニタリング w/ SRE、データサイエンティストチーム

    View Slide

  9. ⓒ 2022 atama plus Inc.
    具体事例1:問題の出題順序の改善(機能開発の例)
    9
    背景
    ・演習問題で、急に難しい問題が出てくることがあり、⽣徒がそこで
    詰まってしまうことがあった
    改善策
    ・各問題の難易度を推定した上で、難易度の
    昇順に問題をソートして出題するロジック
    の改善を⾏なった
    開発時
    の⼯夫
    ・既存のソートロジック(苦⼿な問題を先に出す等)もあるため、
    それとの整合性を保てるかどうか、
    学習体験プランナー/QAチームと丁寧に検討を⾏なった
    ・最初から効果を正確に⾒積もることが難しかったため、A/Bテストを⾏
    い、学習効率の向上効果を検証した上で導⼊を決定した
    問題 C
    問題 A
    問題 B
    問題 D

    View Slide

  10. ⓒ 2022 atama plus Inc.
    具体事例2:レコメンドエンジンのスケールアウト対応(実施中)
    10
    背景
    ・現状は全ての書き込みが1つマスタDB(RDB)に対して⾏われており、近い
    将来ユーザー増に伴う負荷増に耐えきれなくなることが予想されていた
    改善策
    ・スケールアウトによる負荷分散を狙い、いくつかの⽅式を検討した
    (NoSQLへの移⾏、RDBシャーディング等)
    ・結果として、RDBシャーディングの採⽤を決定し、現在バックエンドの
    移⾏を進めている
    開発時
    の⼯夫
    ・シャードを跨いだクエリや、シャード間の
    リバランスが最⼩限となるように、シャー
    ディングの単位を決定。
    ・本番でのリスクを最⼩限に抑えるため、
    ダークローンチを実装。
    client
    shard1 shard2 shard3

    View Slide

  11. ⓒ 2022 atama plus Inc.
    アルゴリズムチームのエンジニアの魅⼒
    11
    プロセスの全⼯程に携わることが
    できるため、個別最適化に起因す
    る問題を未然に防ぎやすくなる!
    ・PoCだけで終わらせない
    ・パフォーマンスチューニングもロジックと
    インフラの両⾯からアプローチできる
    ・週に1度の論⽂読み会で最新の⼿法を
    キャッチアップ
    ・ユーザ数増加に対応するためのアーキ
    テクチャ変更等の経験もできる
    アルゴリズム設計とバックエンド
    開発どちらの経験も積むことがで
    きる!

    View Slide

  12. ⓒ 2022 atama plus Inc.
    アルゴリズムチームのエンジニアのJob Description
    12
    アルゴリズムエンジニア バックエンドエンジニア
    アルゴリズムのロジック設計や、Data
    Science的なバックグラウンド(機械学習
    含む)をより重視
    ・技術ドリブンにならず常に「ユーザーへの価値提供」という⽬的を⾒失わない姿勢
    ・webシステム開発の経験
    パフォーマンスやスケーラビリティを考
    慮した設計・開発に関するバックグラウ
    ンドをより重視

    View Slide

  13. ⓒ 2022 atama plus Inc.
    さいごに
    13
    atama plusはミッションドリブンカンパニーです。
    個々の専⾨性を活かしつつ、視野を広く持って
    ミッションに貢献したいと思えるエンジニアには、
    魅⼒的な環境だと思います!

    View Slide

  14. ⓒ 2022 atama plus Inc.
    【宣伝】note公開中です!
    14
    https://note.com/atamaplu
    s_dev/m/m9c1547900690
    ・「AI×教育」をテーマにした論⽂の紹介
    ・アルゴリズムエンジニアの
    開発プロセス∕事例紹介
    などを紹介しています。

    View Slide

  15. END

    View Slide