社内の後輩エンジニア向けにワークショップを開いたら失敗した話
IT技術
社内の後輩エンジニア向けにワークショップを開いたら失敗した話をします
こんにちは、Androidエンジニアの江幡です。
今回は直近で経験した
良かれと思って勢いで計画したことの失敗談についてお話したいと思います。
この話を通じて、少しでも皆さんの参考になれば幸いです。
ワークショップを開くことになった経緯
先日、社内の後輩モバイルエンジニア数人と雑談をしていた際、DI(DependencyInjection)の話題が出ました。
雑談の時間では伝えきることができず、私の持っている知識をもっとしっかり後輩に伝えたほうが良いと感じたのがきっかけです。
そして、手を動かしながら学ぶワークショップ形式なら、効果的ではないかと判断し、実施することにしました。
ワークショップ概要
参加者:社内の後輩モバイルエンジニア5名
予定:1時間 ✕ 2回
目標:DIを必要だと感じてもらうこと
事前準備として、MVPモデルで設計されたAndroidプロジェクトのサンプルをGitHubにアップロードし、章ごとにコードをPull Requestで分割しました。
それをワークショップで模写して進行する計画です。
DIだけでなく、テストや設計の観点からDIの利点を体感してもらう構成にしました。
- Presenterのテストを書いてみる
- Repositoryを保持したPresenterのテストを書いてみる
- Mockを使ったPresenterのテストを書いてみる
- ActivityでPresenter使うコードを書いてみる
- Hiltを使わないDIを体験
- Hiltを使ったDIを体験
何が起きたか。「4. 」までしか進行しませんでした
1時間✕2回の枠内で
すべての内容を終える想定でしたが、
最終的に「4. 」までしか進行しませんでした。
何が問題だったか
結論から言うと、
予定の見通しの甘さと、参加者のスキルに合わせたカリキュラムが組めていなかったこと
が問題でした。
[問題1]そもそもの予定が甘かった
まず、DIの話だけではなく、テストや設計にも触れていたため、内容がかなり多岐にわたってしまいました。
当初、見本となるサンプルコードもあるし、スムーズに進むだろうと軽く考えていたのですが、
それでは見通しが甘く、結果的に進行が遅れてしまいました。
最低でも今の3倍の時間が必要だと感じました。
[問題2]参加者の経験やスキル差を十分に考慮できていなかった
モバイルエンジニアといっても、様々なメンバーがいます
- Android未経験の人(iOSだけ)
- Koltin未経験の人
- Android経験はあるが、まだ浅い人
こうした経験やスキルの違いにより、引っかかるポイントがそれぞれ異なり、スムーズな進行が難しくなりました。
経験が浅ければ、サンプルを写経するだけなので大丈夫だろうと思っていましたが、これは甘い考えでした。
[問題3]ワークショップ形式が適していなかった
参加者の経験やスキルに差がある中で、ワークショップ形式を選んだことが問題でした。
ボリュームがある内容を、経験の差があるメンバーを一つに集めて
合計2時間でワークショップ形式に収めるのは不可能でした。
もしワークショップを行うなら、以下のように段階を踏むべきだったと思います。
- DIの概念を授業形式で解説
- 完成形のサンプルコードを見せながら解説
- ワークショップ形式でさらに掘り下げる(1回ごとの参加人数をなるべく少人数に)
最後に
ワークショップ形式で一緒に手を動かしながら学んでもらう方針自体は悪くなかったと思います。
あとは、もしワークショップ形式にするにしても、
なるべく1回毎のワークショップの参加人数を減らしたり、
参加者の経験やスキルを揃えて実施することで、時間を読みやすくなりそう。
工夫する手はありそうです。
参加者の経験やスキルを十分に考慮しないまま実施すると、スムーズに進めることが難しいということを実感しました。
今回はあまり深く考えずに、勢いだけで計画したツケを食らったと思います。
反省を活かして、リベンジしたいと思います。
ライトコードでは、エンジニアを積極採用中!
ライトコードでは、エンジニアを積極採用しています!社長と一杯しながらお話しする機会もご用意しております。そのほかカジュアル面談等もございますので、くわしくは採用情報をご確認ください。
採用情報へ
おすすめ記事
immichを知ってほしい
2024.10.31