Vue移行するのはしんどいからチームを良くしてみた活動

はじめに

こんにちは、あるいはこんばんは。
テクノコアのk.komotoです。

今回はSESとして参画している案件先にてVueのバージョンアップ対応を担当していた際に、「他メンバーとの連携を良くして全体的な生産性を向上させたい!」と思って行った活動についてです。
初めは一人でAIのプロジェクトへの導入に関する活動やVue移行のAIを利用した効率的な方法を模索する等の作業をしていましたが、中々結果が出せず、ひとまず移行作業を完了させることになりました。

この時、ヘルプの作業者として何名かのエンジニアの方にアサインいただいたのですが、私含めてVue3経験が無い方がアサインされたので、チーム間での情報共有は必須だなと感じました。
そこから振り返りや日次の課題報告とプロンプト研究会等色々と案件先の社長に「やらせてください!」とお願いして実際に活動させていただくことができました。(本当に感謝しています)

そんな活動を通じて、私自身が感じた内容を記事にしたいと思います。

振り返りをやってみた

まずは振り返りについてです。
アジャイル開発をしていると振り返りをするということはよく聞くのですが、私の案件ではアジャイルで活動しているものの、日次でのスケジュール報告が主な定例になっていました。
案件自体もフルリモートなので、他のエンジニアの方と顔を合わせて会話する機会も少なく、チャットツールでのやり取りでは中々連携が難しい部分もありました。

その中で、バーチャルオフィスを利用してちょっと話かけて内容を確認する等はできるのですが、少し話しかけづらさもありました。私もレビューしたり、リリースを担当していたりしたので、もしかすると他のエンジニアの方も私に話しかけづらいのでは?と思いました。
チャットツールで非常に丁寧に連絡をくれる方がヘルプに入ってくれていたのですが、複雑な内容だと長文のやり取りが長く続いて、本当に認識があっているのか?と不安になることもありました。

そこで、実際に作業の中で発生した課題点や作業の改善活動ができるようにと週次で振り返りを実施することにしました。
主な目的は情報の共有とチームとしての生産性の向上、心理的安全性の確保でした。結果として活動は成功だったように思います。
実際の振り返りは以下の内容で行いました。

  1. アイスブレイク:10min
  2. 課題点、良かった点、アイディア等
    1. 洗い出し:5min
    2. 参加者が深堀したい内容を投票:5min
    3. 深堀:30min
  3. アクション決め:10min

私自身は振り返りを実施している案件に参画したことがなかったので、初めての経験で初めはかなり手探りで内容や進行をしていました。
それでも参加したエンジニアの方はもやもやするなってポイントや良かった点などどんどん挙げてくれて、実際に他の活動につながるような内容で進めることができました。(他力本願になってしまったかもっていう気持ちも少しあります。。)
この振り返りの中で出てきた案を実現したものが次からの活動になります。

日次で課題を解決しよう会

Vue移行自体は中々骨の折れる作業でした。詳細は省きますが公式の移行ビルドを利用できず、かつ、ほぼ全面的な入れ替えでした。UIライブラリの互換性がなかった時の戦慄は忘れません。
そんな移行作業をしているとやはり各エンジニアはどう解消すべきなのか課題を抱えるようになり、また振り返りを通して心理的安全性を確保しようとしていても実際にはうまくいってないのかな?というような感じでした。
というのも、すぐに聞いてほしい課題が振り返りまで放置されているケースが少し発生したからです。

振り返りの中では発言は多かったものの、日次的な作業の中での問い合わせは少し不十分な部分がありました。
また、このタイミングでヘルプに入ってくれていたエンジニアの方が入れ替わることになり、Vue移行用の環境構築から連携する必要があり、問い合わせもどんどん増えていきました。

そこで、日次で課題を挙げられる場が10分でもあればやりやすいとの意見もあり、日次で課題を共有してメンバーで議論することにしました。
結果として、課題を早期に解決でき、かつチーム間での対応方針のずれなども発生しづらくなり、チャットなどによる問い合わせは減ったものの、PRをレビューすると意図した内容で修正していただいていることが増えました。
チーム間でどんどん共有しないといけない内容がある場合には日次での確認はすごく有意義だと思いました。
完全に関係者しかいなかったのも大きいかもしれません。

さらに振り返りの中で日次の会をもっと有意義にできないかということで提案したのが次のプロンプト研究会です。

プロンプト研究会という怪しい活動

これは、他のプロジェクトに参画している方からは聞いたこともないですが、AIの活用をどんどん試験的にしてみたいという意向が、このVue移行作業の初期にあったので、改めて立ち戻ってみました。
当時は一人で試行錯誤していたので、うまくいかなかったことも多くて挫折しましたが、3人寄れば文殊の知恵というやつですね(メンバーもちょうど3人でした)

初めは生成された内容が良かったプロンプトと悪かったプロンプトを共有しつつ、メンバーでこの部分の指定が影響したんじゃないか?モデルはこっちでやるとこのタイミングでこれだけぶれが出るみたいな話をしていました。
毎回内容をメモして、このモデルでこういったプロンプトを書けば毎回結果がそろっていて、意図した内容かもしれないというものが見え始め、すぐにテンプレート化しました。
効果は絶大で、それぞれの作業単位で、テンプレートのプロンプトを流すと移行したベースが完成し、細かい調整をすればよいというところまで来ました。

もちろんVueのバージョンアップ自体がかなり破壊的変更も多くて、根本的な部分から異なっているので動作の不備が多く出るケースもありましたが、それらは想定の範囲内にとどめることができました。(スケジュールしづらい内容も多くて、マネジメント層の方にも理解いただけるようかなり話しました。)
日次の課題確認の中で、プロンプトを研究し、テンプレートを修正して共有する作業は色々やった活動の中で最も成功した活動だったと思います。

プロンプトのテンプレート変更が入らなくなったので、、

プロンプト研究会はすごくよかったのですが、途中からは回答がぶれてきたらテンプレートを修正する作業で足りるようになったので、研究会を廃止することにしました。
また、テンプレートを導入したことで、課題が発生する機会も激減しました。

日次の会も必要ないかなとなった時、フルリモートの案件をやっていると出社しているときのように周りのプロジェクトに関する会話やちょっとした雑談が聞こえなくて、どんな人なのか?どんなプロジェクトなのか?みんなが何を考えているのか分からないよねって話になりました。
まだ心理的安全性を確保しきれていないと感じていた私は、日次の中で(14時頃に実施していました。)少しブレイクタイムでも設けて雑談でもしませんか?ということで何でもない普通の雑談をすることにしてみました。

これが意外でした。
初めこそ中々話すことも見つからず、探り探りの会話でしたが、年配のメンバーの方がどんどん話を振ってくれて今では本当にちょっとしたブレイクタイムとして楽しむことができるようになりました。
すると振り返りや課題の確認、レビューコメントへの返答などが活発になったのを肌で感じました。
雑談は作業には意味がないかもしれませんが、あらゆる作業に良い影響を与えるものだなと学びました。

私自身は前述しましたが、レビュー等やっている立場なので、どんどん弱みを見せてみました。
絶叫マシーンが怖いとか全然運動していなくて体のあちこちが痛いとかとか。。。
この内容が良かったのかはわかりませんが、以前に比べて色々な話をしてくれるようになったかなと思います。

まとめ

私は割と思い付きで提案・行動をしてしまいます。本来なら、SESなのでお金にならない活動に対しては、案件先の担当者の方は否定的かもしれませんが、色々と活動をさせていただける環境で良かったと思います。
実際にプロジェクトに直接関係の無い活動も見えない形で生産性を高め、そして安全性を高めてくれることを実感しました。

また、この記事で紹介した活動の効果を数値で測ったわけではなく、主観的な部分も多くあります。それでも、他のメンバーから「以前より発言しやすくなった」という声をもらえたことは、何よりも良かったなと思います。時には、数値だけにとらわれず、チームのために良いと信じることを試してみる勇気も大切なのかもしれないです。

今後も色々な活動を試して、より良いチームができるようにしていければ良いなと思います。