freeeの開発情報ポータルサイト

新卒QAのすゝめ

こんにちは。QAエンジニアをしているinachanです。

フリー以外のサービスと連携するプロダクトの一員としてQAをしています。

freee QA Advent Calendar2024 22日目です。

はじめに

私はfreee初の新卒QAエンジニアとして入社しました。QAの新卒として入ってきたのは私と12月10日のアドベントカレンダーを担当しているtonchanの2人です。 そして7月にフリー以外のサービスと連携するプロダクトにアサインされた新米QAです〜。 QAのことはもちろん、自分なりの発見をまとめていこうかなと思います。

なぜ最初のキャリアとしてQAを選んだのか

そもそもQAエンジニアという言葉を聞いたことがある人は少ないと思いますし、私も最初は全く知りませんでした。IT企業に就職したいという理由で修士に上がるタイミングで機械工学から情報工学へと転向した私にとって、とりあえずIT系ならなんでも受けてみるか!という気持ちでインターンに応募しました。その当時、他にもデータ分析やインフラなどいろいろな企業のインターンに参加させてもらいました。その中でもなぜQAを選んだかというと、今後も需要が上がっていきそうな職種だなと感じたからです。AIが加速度的に成長していく中でも、責任の所在が人間にあるうちは消えない職業なのではと思いました。他にもfreeeの雰囲気が一番良かったというのも大きな決め手でした。

研修中

freeeで新卒研修が始まり、新卒のエンジニアと一緒に開発することになりましたが、一ミリもわからず泣きべそをかいていた記憶があります。修士で情報系やってたし大丈夫だろうと謎の自信を持っていた自分が恥ずかしかったです。しかし優しい同期のおかげでだんだんWebアプリケーションというものについて理解が進み、無事に研修を終えることができました。研修の3ヶ月間はQAらしいことはほとんどせず、開発に参加させてもらっていました。

配属されたよ

しかしながらいざ配属されてQAやるぞとなった時に「あれ、QA何すればいいんだ??」となりました。テストという言葉が自分の中で先行し過ぎて、何をどのタイミングでやるべきか全くわからないことに気がつきました。

テストレベルの理解

配属されて最初に取り組んだのは、テストの種類や目的の理解でした。テストといっても様々な種類があり、私は以下のように整理しています。

単体テストは個々の機能が正しく動くかを確認するもの、統合テストは複数の機能を組み合わせた時の動作を確認するもの、システムテストはシステム全体としての動作を確認するもの、そして受入テストは実際の利用シナリオに沿って確認するものです。

このように、テストレベルを理解することで、各段階で必要な検証内容が明確になってきました。私自身、最初は「とにかくテストする」という漠然とした認識でしたが、各レベルの特徴と目的を理解することで、より効果的なテスト設計ができるようになってきたと感じています。 各レベルにはそれぞれ重要な役割があり、これらを適切に組み合わせることで、総合的な品質保証が実現できます。私自身は、これまでシステムテストで大きな役割を果たしてきましたが、それだけではなく、今後は他の開発段階でもテストレベルを意識しながら開発者と協力しながら品質向上に貢献していきたいと考えています。

実践と学びの日々

メンターのtoyopiさんとペアテストをする機会をいただき、特にゆもつよメソッド*1を使った実践は非常に勉強になりました。先輩の思考プロセスを間近で見ることで、テストの組み立て方や注目すべきポイントを具体的に学ぶことができました。学んだことはすぐに実践に移すように心がけ、例えばデシジョンテーブルを積極的に活用するなど、新しい手法を取り入れています。

この画像は実際に作ってみたデシジョンテーブルを表しています
実際に作ってみたデシジョンテーブル

また、ワークショップや輪読会などにも積極的に参加し、先輩方からの知見を得ることを心がけています。特に初めて学んだことは一度では身につかないので、繰り返し実践する機会を作るようにしています。時には他の人が担当する作業でも、経験を積むために仕事を譲っていただくこともあります。

意識の変化と課題

配属当初は正直なところ、学生気分が抜けきれていませんでした。しかし、ジャーマネ(マネージャー)のUemuさんから「当事者意識を忘れないように。社長だと思いなさい。」という言葉をいただき、毎日その言葉を胸に刻んで仕事に向き合うようになりました。

この画像はSlackの一コマを表しています。当事者意識を忘れないと書いてあります。
Slackの1コマ

また、自分の特性についても理解が深まってきました。特に0→1のフェーズは本当に時間がかかるタイプだということを、学生時代から感じていましたが、社会人になってそれを改めて実感しています。コミュニケーションについても、対面では得意な一方で、テキストベースになると途端に苦手意識が出てくることに気づきました。ただ、テキストベースのコミュニケーションはログが残り、振り返りがしやすいという利点もあるので、少しずつ善処していきたいと考えています。

リモートワークと出社の使い分け

静岡から通勤していることもあって、配属されてからはリモートワークが中心になりました。しかしながら当初は在宅勤務での集中力維持に苦労しました。そこでSNSアカウント、アプリを全て消去し、部屋から余計なものを排除して環境を整備したことで生産性が大きく向上しました。一方で、やはり出社することで得られる価値も大きく感じています。様々な方と直接会って会話できることや、オフラインでのコミュニケーションの良さも実感しております。現在は都内で物件を探しているので、決まったら出社をメインにしようと思っています。 以上が、新卒QAエンジニアとして働き始めてからの半年間の経験と気づきです。まだまだ課題は山積みですが、一つひとつ克服していきながら、チームの品質向上に貢献できるよう頑張っていきたいと思います。

明日は、決済プロダクトのQAエンジニアのRen-san が「テストアーキテクチャの実践」について記事を書いてくれます。お楽しみに〜! よい品質を〜。