エムスリーテックブログ

エムスリー(m3)のエンジニア・開発メンバーによる技術ブログです

エムスリーのQAチームが目指しているもの

こんにちは。エムスリーエンジニアリンググループ QAチームの城本です。

f:id:yuki_shiro:20201127101508j:plain
本文には関係ありませんが、先日散歩したときに見かけた紅葉です。
少し前ですが、DevLoveさんの主催で行われたイベント「あなたの知らないQAチーム、QAエンジニアの世界」で、エムスリーのQAチームが目指している方向性についてお話させてもらったので紹介します。 当日の発表資料はこちらです。 www.slideshare.net

「あなたの知らないQAチーム、QAエンジニアの世界」とは

イベント概要はこちら。 devlove.doorkeeper.jp

このイベントは、以下の趣旨で企画され、私はその中で「QAチームがある程度出来上がっている組織」についてお話ししました。

QA(Quality Assurance)チーム、QAエンジニアの役割や業務内容は、 組織や開発スタイルによってさまざまであると感じています。 今回のイベントでは以下のような話を通してQAチームやQAエンジニアのいろいろなかたちについて知り、何かを考えるきっかけにしたいです。

現在のQAチームは「低コストで高品質の製品を創る、高速リリースが可能な開発チームを創る」を目指しています。 発表の中では、これを目指すに至るまでの経緯を過去のNG事例を紹介しながらお話しました。 また、実際のQAチームの仕事をどのように進めているのかと、仕事の進め方の背景となる会社の文化も少しご紹介しています。 詳しくは当日の発表資料を御覧ください!

会の中やTwitterのタグで色々質問をいただきましたが、当日回答しきれなかったものもあるので、こちらで回答いたします。

Q&A

仕事の進め方

Q1. コードレビューフェーズでQAがやっているのは、コードレビューではなくテスト設計という話ですかね?

開発が実装するフェーズでは主にテスト計画、コードレビューのフェーズでは主にテスト設計なのか。 テスト設計での戻りはどれくらいあるんだろ?

(ほぼ同じ内容でしたので、お二方の質問をまとめさせてもらっています)

A1. 前半部分については、開発が実装、コードレビューを行うのと並行してテスト計画、設計を行っています(資料の書き方がわかりにくくすみません。実装と並行してテスト計画、コードレビューと並行してテスト設計と分かれているわけではありません) 戻りについては、実装後に仕様変更が多いチームはほぼ毎回手戻りが発生、実装後に仕様変更が少ないチームはほぼ手戻り無しです。

Q2. 「チームの課題解決に向けて積極的に動く」 の例を他にも聞いてみたいです!

A2. 好評だったものを2つ紹介してみます。

  • 開発者やビジネスサイドの方にも参加してもらい「昔からあるシステムを学び直す」をテーマに勉強会を行いました。レクチャーを実施。ビジネスサイドからも、録画しておいて新規参画者の研修に使いたいという提案をもらい、好評でした。

  • ビジネスサイドに内製のアンケート作成システムによるアンケートの作成方法やアンケート作成上の注意点をレクチャーしました。作成されたアンケートのQA時に見つかる欠陥が減少しています。

Q3. QAエンジニア側で必要な決定表を、開発側であらかじめ作ってもらうなどの働きかけはしてたりするのかな?

A3. 決定表(デシジョンテーブル)はQAエンジニア側で作成することが多いように思います。認識違いや条件の洗い出し漏れがないかは、関係者でレビューをしてもらい確認しています。

Q4. QAチームとしての情報共有の課題がネタとしてありましたが、開発チーム自体が、品質に対する考えとかQAへの協力など概念的に共有化されてる気がしました。開発側の情報共有は何か工夫があります?

A4. 社長意識・クライアント意識のマインドセットを持った社員を採用しているということもあり、開発者は自分たちのプロダクトの品質に責務を負って働いていると感じます。 普段の業務では、上記のマインドセットにより品質についての議論が活発に行われます。また、振り返りや不具合分析会などを通して、情報共有や品質意識のさらなる醸成ができているものと考えます。

こちらの記事も参考になるかと思います!

www.m3tech.blog

QAチームの運営

Q5. 「TechTalk」とか、続くとマンネリになりそうですが、なにか工夫とかあるんだろうか?

A5. 社員は一人一度は発表しましょう、となっているのがよいのか、今のところはそこまでマンネリ感はないです。

Q6. 「何を目指しているか」のところでNGとしてバグの検出数などをKPIとしていた時期から、顧客にとって価値のあるテストを求める方向に転換したとありましたが、NGからOKへの転換のきっかけがあったら教えてください。

A6. あまり決定的な転換点というものはなく、「課題意識を持つ→ふりかえりと改善活動」の積み重ねだったように思います。

Q7. ここまで求められる、QAエンジニアの育成って、大変そうだけど、どうでしょう?

A7. QAエンジニアは今のところ中途採用のみとなっており、採用プロセスの中でマインドセットやスキルセットが当社にマッチするかを確認させていただいています。 その後はOJTや1on1などを通じて徐々に当社の文化や働き方に慣れていただいています。

Q8. アルバイトでも実行以上のことに興味を持つ人もいると思いますが、フォロー等しているのだろうか?

A8. アルバイトの方でも本人のスキルや希望により、OJTを通じてテストケース作成などにチャレンジしてもらっています。 テスト未経験者からスタートしてテストケースの作成ができるようになった方もいます。

Q9. 隔週だと共有タイミングが遅れたり議題があふれたりしないかな、というのがちょっと気になった

(補足:QAチーム内で悩みや共有事項を相談するQAチーム座談会を隔週で行っているという点についての質問です)

A9. 急ぎの相談はSlackに質問・相談チャンネルがあるため、そちらで解消されています。広く意見を聞いてみたい、かつ、急ぎではない内容がメインになっているため議題数としては隔週で問題ないくらいになっています。

組織

Q10. VPoEってどういう役職ですか?

A10. VPoEはVice President of Engineerの略で、日本語では技術部門のマネジメント責任者と訳されます。 当社での役割については、こちらをご覧ください。 www.m3tech.blog

We're hiring!

QAチームではバグを見つけるだけでなく顧客の利益にコミットしたい人、チームとともに成長したい人を募集しています!

社会に役立つシステムを高品質で素早く届けたいQAエンジニアの方、一緒に働きませんか? カジュアル面談でより詳しくお話ししましょう!

jobs.m3.com