Slide 1

Slide 1 text

吉祥寺.pm37 GMOペパボ 古殿直也 @furudono2 waiwai-aiを入社2ヶ月の エンジニア3人と作るための さいきょうのアーキテクチャ 1

Slide 2

Slide 2 text

@furudono2 古殿直也 ● GMOペパボ ● 2023年新卒入社 ● そろそろ3年目 ● ホスティング事業部に2024年1月から所属 ● ホスティングサービスのWebアプリケーションを開発して一年がたちました ● 設計やプログラミング言語の話が学生の頃から好き ○ プログラミング言語の設計思想を見るのが好きで、書く気がない言語の本を端から端まで呼んでい ました。きっかけはD言語 ● 明日はBuriKaigiに朝一で行って発表します 2

Slide 3

Slide 3 text

● 開発の目的やチーム構成によって適したアーキテクチャは異なるはず ● 良いアーキテクチャは、やりたい(やらざるを得ない?)開発体制を促進する 入社2ヶ月のエンジニア3人とwaiwai-aiを作るための開発戦略と、 それを実現するためにぼくが考えた最強のアーキテクチャを紹介する アーキテクチャのつよさとは、 やりたい開発をどれだけやりやすいか 3

Slide 4

Slide 4 text

waiwai-aiを開発した背景 ● お産合宿2024 ● 会社で年に一回開催される二日間の開発合宿 ● 今年は 5/30 - 5/31に開催 ● 今回は「配信」がテーマ 4

Slide 5

Slide 5 text

waiwai-ai ● 配信の視聴者になりきってコメントで賑やかしをしてくれる AI bot ● 配信者のPCで動かして、配信画面・音声を入力として配信コメントをつける わいわいしている様子 5

Slide 6

Slide 6 text

チーム構成を紹介 ● 4/1に入社したエンジニア3人 + ぼくの4人チーム ● 今年の技術研修は 5月中旬から7/31 ○ お産合宿は5/30-5/31 ○ エンジニアリングやチーム開発にはまだ不慣れ ● だけどもみんなアイデアマン、議論も真剣に楽しくできる人たち ○ そろそろ絶交する?ってくらい白熱する ○ 会ってからしばらくはちょっと不安になるくらい 6

Slide 7

Slide 7 text

アイデアの議論と個人で集中した設計・実装を促進したい プロダクトの アイデアを議論 集中して 設計・実装する 動かしてみる 作りながらいい感じにしていく作戦 強みはアイデアの議論で、弱みは開発に小 慣れていないこと アーキテクチャで うまくやりたい 7

Slide 8

Slide 8 text

アーキテクチャをざっくり決める ● あらかたアイデアを固めたら、コンポーネントを三つに分割した ○ 三つにしたのは3人いたから ○ 4人いたら四つにしたと思う ● インターフェースだけは決めた。でもめちゃくちゃシンプル 配信の様子を 集める わいわい コメント生成 視聴者としてコ メントする 文字列の配列 文字列の配列 8

Slide 9

Slide 9 text

アーキテクチャを実現する ● コンポーネント間の連携はメンターがガッと実装した ● コンポーネントごとにスレッドを割り当ててキューで通信する 配信の様子を 集める わいわい コメント生成 視聴者としてコ メントする main キュー キュー キュー 9

Slide 10

Slide 10 text

結果・振り返り ● エンジニアリング・アイデアの両面で工夫して、良いものを作れた ○ 三人が書いたテックブログが先日出ました。ぜひ読んでください! ● デモでも綺麗に動いて、自身の発表をwaiwaiさせられた https://tech.pepabo.com/2025/01/17/waiwai-ai/ 10