
本記事は、2024年入社のQAエンジニア 3人による振り返りブログの3本目です。
まだ読んでいない方は、ぜひ1本目・2本目もあわせてご覧ください!
はじめに
こんにちは、GaroonというプロダクトでQAエンジニアをしている reo(@i_moqa)です⛄️ Garoonの開発チームは複数のチームで構成されているのですが、私はその中のYukimiチームに所属しています。 YukimiチームはGaroonで使用しているOSS(オープンソースソフトウェア)の更新や、セキュリティの維持・向上に向けた開発・保守を担当しています。
Yukimiチームの詳細については以下の記事をご参照ください。 blog.cybozu.io
本記事では、新卒1年目から2年目の間で、チーム内外で自分の役割や動き方がどのように変化してきたのかを振り返ります。
チーム内のタスクの変化
新卒1年目から2年目にかけて、最も大きく変わったのはチーム内のタスクの進め方です。
1年目は、スキルトランスファーを受けながら、チーム内で実施されていたタスクを進めることが中心でした。Yukimiチームのタスクは、OSSの更新やセキュリティ対応など影響範囲が広いものが多く、モブプログラミングで進めることも多かったため、進め方や考え方を含めて周囲に支えてもらう場面が多かったと感じています。
2年目に入ってからは、チーム体制がスクラムからカンバン方式へ移行しました。これにより、各メンバーが個別にタスクを進める場面が増え、他メンバーと並行して進めながら、自らレビューや情報共有を行う機会が多くなりました。また、一部のOSSやセキュリティに関わるプロジェクトにおいて、リーダーとして関わるようになりました
リーダーとして関わるプロジェクトでは、進捗やタスクの管理に加えて、情報を一から収集・整理し、その結果をもとにステークホルダーと議論し、方針の決定や合意形成まで進める経験をしました。実際にやってみると、自分が関わっていない別プロジェクトをどこまで把握すべきか、どの観点まで見れば十分なのかといった判断を自分で下す必要があり、難しさを感じることも多くありました。
それでも経験を重ねる中で、自分の担当範囲だけでなく、チーム全体の品質や進め方に目を向けられるようになってきました。その結果、リスクの共有や観点の補完といった形でチームに還元できている実感を持てるようになったのは、大きな変化だったと感じています。
(以下の記事で紹介されている取り組みも、そのようなプロジェクトの一つとして、自分がリーダーとして関わったものです)
チーム横断活動への関わり
1年目は、自分の担当範囲やチーム内の文脈で考えることが中心でしたが、2年目に入り、徐々にYukimiチーム外の活動にも視野を広げられるようになってきました。
きっかけとなったのは、社内勉強会で井芹 洋輝さんをお招きして実施された「高品質と高スピードを両立させるテストアプローチ」という講演と、その内容を踏まえてGaroonチーム内で行われた勉強会です。
この勉強会を通じて、「Garoon全体としてのテストアーキテクチャをどう設計するべきか」という問いが生まれました。これを起点として、Garoon開発内でチームをまたいでアイデアを出し合う場を継続的に設けています。
具体的には、テストレベルごとの責務を整理し直しながら、既存のテストにおける課題を洗い出し、改善に向けた議論を進めています。こうした取り組みに参加する中で、それぞれのPBIごとに実施するテストを積み上げていく視点だけでなく、それらをどのように組み合わせてプロダクト全体の品質を担保するかという課題に向き合うようになりました。 その中で、難しさを感じる場面も多い一方で、全体設計として品質を捉えることの面白さも実感しています。
また、チームを越えて議論することで、それぞれが持っている前提や暗黙知が言語化され、新たな気づきにつながる場面が多いと感じています。このような対話を通じて、品質に対する認識をすり合わせていくこと自体が、プロダクト全体の品質向上につながる重要なプロセスだと考えるようになりました。
セキュリティ領域への広がり
2年目に入り、QAエンジニアとしての役割を意識しつつも、それをチーム全体にどう還元できるかを考えるようになりました。特に、Yukimiチームでは、QAエンジニアとWebエンジニアといった職能を越えて動くことが求められていると感じています。 そのため、自身の担当領域にとどまらず、OSSの脆弱性調査やセキュリティ対応などにも主体的に関わるようになりました。
また、チームとしてもプロダクト全体のセキュリティに目を向けるようになり、役割もOSS対応中心から徐々に広がってきました。そうした流れの中で、その一環としてセキュリティチャンピオン活動に参加し、OWASPなどの基礎知識の学習や、『安全なWebアプリケーションの作り方』の輪読を通じて、体系的に学ぶようになりました。 blog.cybozu.io
このような環境の変化を踏まえて、「このチームの中でどう価値を出すか」を改めて考えるようになりました。単に任されたタスクやプロジェクトを進めるだけでなく、チームとして注力している領域に主体的に関わることが重要だと考えるようになりました。
その中で特に意識したのが、OSSの脆弱性対応や情報のキャッチアップです。OSSの新たな脆弱性をいち早く検知し、影響を評価して対応につなげることが求められます。そうした中で、自ら脆弱性を検知し、調査を進めていくようになりました。
また、こうした取り組みと並行して、個人的にもセキュリティ領域の学習に力を入れるようになりました。以前社内CTFに参加した際に、手を動かしながら攻撃や防御の仕組みを理解していくプロセスに面白さを感じていたこともあり、その延長として学習を継続しています。 現在は、TryHackMe を用いたハンズオン形式の学習や社外CTFへの参加、書籍でのインプットなどを通じて、少しずつ知識と経験を積み重ねています。
これらの取り組みを通じて、1年目は脆弱性情報を追うだけで精一杯でしたが、2年目に入り、それらに対してどのように向き合い、どのようにアプローチしていくかの引き出しが少しずつ増えてきたと感じています。また、セキュアサプライチェーン対策など、より実践的な経験を積めるタスクにも挑戦しています。
3年目に向けて
この1年は、社内外問わずさまざまなことに挑戦してきました。
2年目は、目の前のタスクをこなすだけでなく、チームやプロジェクト、プロダクト全体に対して価値を出す経験が少しずつ増えてきたと感じています。
一方で、個々の取り組みがまだ点で終わってしまっており、それらをつなげてユーザー・Garoon開発チームのメンバーに価値を届けることが次の課題です。
3年目は、これまでの経験をもとに、個々の取り組みを再現性のある形に整理しながら、チームやプロダクト全体により踏み込んで関わっていきたいと考えています。
おわりに(3人の振り返りブログを通して)
3人それぞれの記事、いかがでしたでしょうか。 同じQAエンジニアという職種でありながら、サイボウズでは所属するチームやプロダクトが異なると、日々の業務内容や直面する課題、成長のかたちもこんなにも違うのだと、改めて実感しています。
これらの記事がQAエンジニアという職種に興味を持っているみなさんや、同じように日々奮闘しているエンジニアのみなさんにとって、少しでも参考になれば幸いです。
これからも3人で切磋琢磨しながら、チームや組織に貢献できるQAエンジニアを目指していきます!