Slide 1

Slide 1 text

コロナ禍で経験したチーム開発と学びについて excite × C3合同LT会 ~クリエイター視点でのチーム開発について~ 下前 仁志(シモ)

Slide 2

Slide 2 text

⾃⼰紹介 • 名前:下前仁志(シモ) • 所属:九州⼯業⼤学 B3 • サークル:C3, OMCAS • 趣味:ツーリング, 料理, 写真, スノボ, ハッカソン, 釣り • ルーティーン:朝シャワー

Slide 3

Slide 3 text

エンジニアとして • 歴:2年半ぐらい • 分野:フロントエンド, バックエンド, インフラ, SEO, (デザイン) • よく触る⾔語:Python, TS/JS, HTML, CSS, Java, etc • よく使うもの: Nuxt(Vue) v2/v3, TailwindCSS, FastAPI, Docker, Cloudflare, etc • アルバイト:株式会社オプティム • インターン歴:株式会社エキサイト, 株式会社ヤフー • 最近興味がある技術:機械学習, React, Go, Cloudflare Workers, kubernetes • 最近やったこと:ハッカソンメンター, Web Speed Hackathon 2023の参加, etc

Slide 4

Slide 4 text

チーム開発経験 • サークル内での制作(基本オンライン) • ハッカソン(オフ + オン = 7 + 2 = 計9回) • チームリーダー6回 • アルバイト(オフィスでのオンライン) • 東京本社の⼈とリモートで仕事 • インターン(オンライン)

Slide 5

Slide 5 text

サークル内での制作 • オープンキャンパスサイトの制作(チームリーダー) • 2年⽣前期 • 半数が先輩 • 公式サイトリニューアル(チームリーダー) • 2年⽣後期 • 1年⽣などの未経験者の勉強も兼ねて • ToyBox制作(チームリーダー) • 2年⽣前期 • ⻑期プロジェクトとして

Slide 6

Slide 6 text

チーム開発経験 • サークル内での制作(基本オンライン) • ハッカソン(オフ + オン = 7 + 2 = 計9回) • チームリーダー6回 • アルバイト(オフィスでのオンライン) • 東京本社の⼈とリモートで仕事 • インターン(オンライン)

Slide 7

Slide 7 text

苦労したこと 1. 認識や理解の不⼀致 2. コミュニケーションがうまく取れない 3. 相⼿の状況が分からない 4. ⼈間関係をうまく築けない 5. 進捗が個⼈のモチベ, 予定に依存 6. モチベに波がある 7. スケジュール管理 8. タスク分割 9. タスクの粒度 10. タスク割 11. 技術レベル, 分野の不⼀致 オンライン 知識・経験不⾜ 学⽣特有

Slide 8

Slide 8 text

うまくいく時といかない時 うまくいく時 • コミュニケーションが活発 • 共通認識がしっかりある • ドキュメントがある • 期⽇がある • まとまった時間がある • 臨機応変動ける • 全体的な技術レベル, 分野のバランスが良い うまくいかない時 • コミュニケーションがあまりない • 共通認識がない • 情報共有がない • 期⽇がない • 時間が確保できない • ⽇程の融通が効かない • 全体的な技術レベル, 分野のバランスが悪い

Slide 9

Slide 9 text

開発難易度 ⻑期チーム開発 短期チーム開発 アルバイト等のチーム開発 個⼈開発 > > > オンライン 対⾯ >

Slide 10

Slide 10 text

オンラインのメリット・デメリット メリット • 場所の制約を受けない • 時間の制約も受けにくい • 移動や準備などの労⼒が掛からない デメリット • コミュニケーション不⾜に陥りやすい • 不慣れな⼈にとってはストレスの原因 • モチベーションが下がる

Slide 11

Slide 11 text

学⽣のチーム開発と仕事でのチーム開発の違い • 決まった作業時間の有無 • 作業時間の差 • 強制⼒と責任感の有無 • モチベーションの有無 • ⽅向性の信頼感の差 • 技術⼒, 知識, 経験の差

Slide 12

Slide 12 text

ハッカソンと⻑期制作の違い • 開発期間が数⽇か数ヶ⽉・年 • 開発後のことを考えるかどうか • モチベの持続⼒の必要性 • 他のことの影響を受けやすさ

Slide 13

Slide 13 text

開発難易度 ⻑期チーム開発 短期チーム開発 アルバイト等のチーム開発 個⼈開発 > > > オンライン 対⾯ >

Slide 14

Slide 14 text

苦労したこと 1. 認識や理解の不⼀致 2. コミュニケーションがうまく取れない 3. 相⼿の状況が分からない 4. ⼈間関係をうまく築けない 5. 進捗が個⼈のモチベ, 予定に依存 6. モチベに波がある 7. スケジュール管理 8. タスク分割 9. タスクの粒度 10. タスク割 11. 技術レベル, 分野の不⼀致 オンライン 知識・経験不⾜ 学⽣特有

Slide 15

Slide 15 text

オンラインで⼯夫したこと • Discord等の活⽤ • VCに⼊って作業 • テキストベースでもコミュニケーション • ドキュメントの作成 • チケットでタスク管理 • テキストベースでタスクの詳細説明 • 雑談

Slide 16

Slide 16 text

成功させるのに必要なこと モチベを上げるために • 定期的な作業会(可能なら対⾯) • 現状と今後の計画を共有 • メンバーと雑談をたくさんする 作業時間を確保するために • 作業会を⾏う • モチベを上げる • 期⽇を決める

Slide 17

Slide 17 text

ツール 役に⽴った • Slack • Discord • Notion • Miro • GitHub • Mastodon • Figma 役に⽴たなかった • Zoom • Gather • LINE • HackMD • Word • Googleドキュメント • Googleカレンダー • XD

Slide 18

Slide 18 text

今後の⼯夫 • 対⾯とオンラインのハイブリッドで進める • 定期的な対⾯作業会 • 普段からの雑談 • 必要最低限の⼈でミーティング • 進捗の可視化 • コーディング規約などのルール策定, 明⽂化

Slide 19

Slide 19 text

最後に チーム開発は難しいけど楽しい うまくやればすごいものを作れる まだやったことがない⼈はやってみよう!!