キャリア
【連載】冒険者の地図: LayerX・松山晃大さんが語る、技術革新とQAエンジニアの共存(後編)

(前編はこちら)
ゲームのテスターを起点にQA(Quality Assurance)エンジニアという天職を見つけたLayerXの松山晃大さんは今、未来に向けてはっきりとした目標を持っている。AI、自動化、API(Application Programming Interface)、マイクロサービスといった新たな技術によってビジネスが変革する中で、QAエンジニアリングそのものが持つ価値を社会に広めることである。ソフトウェア業界における技術革新は目覚ましく、それに伴い開発や運用のプロセスは劇的に変化しており、ソフトウェアテストにも大きな影響を及ぼしている。
今後2、3年まではある程度予測できるかもしれないが、5年後などより長期的な観点では、技術の変化が及ぼす影響を正確に予測するのは難しい。そんな中でも、QAエンジニアの存在感は確実に大きくなると見込んでいる。
後編では、松山さんの視点から、技術環境の変化を受けた未来のQAエンジニアの役割について考察してみよう。
技術の進化がQAに与える影響
近年の技術革新は、ソフトウェアテストに対する要求をますます高度なものにしている。API、マイクロサービスといった分散型アーキテクチャが一般化し、複雑なシステムが次々と生まれている。これにより、従来のソフトウェアテストの手法やアプローチでは対応が難しくなってきているのが実情だ。
「マイクロサービスの普及によって、テストするべき箇所が劇的に増えました。複数のマイクロサービスがAPIで連携して動作する中で、一つの不具合が他の部分に波及する可能性が高くなります」と松山さんは語る。そのため、システム全体をより正確に把握する必要が出てきたという。
マイクロサービスとは、大規模なソフトウェアを複数の小さな独立したサービス(マイクロサービス)に分割し、それぞれが個別に開発・運用されるアーキテクチャのことである。例えば、あるWebサイトがログイン機能、商品検索機能、支払い機能を別々のマイクロサービスとして実装する場合、それぞれのサービスは独立して開発や更新できるものの、最終的にはそれらのサービスをAPIで連携し、大規模なソフトウェアを統合して完成させる必要がある。

マイクロサービスは、システム全体をより柔軟かつ効率的に運用するためのアーキテクチャとして広く採用されているが、同時にその複雑さ故にQAテストの困難さが増している。例えば、マイクロサービス間のデータ整合性や、分散システムにおけるエラーハンドリングは、QAエンジニアにとって大きな課題となる。
中でも、連携部分のテストが極めて重要だ。個々のコンポーネントを独立してテストするような従来の方法では、システム全体の品質を担保することが難しくなるため、より包括的なアプローチが求められる。
「あるボタンをクリックした時にエラーが発生したとして、そのエラーがどのマイクロサービスに起因するのかを特定するのは非常に難しい。ログを詳細に解析し、エラーの根本原因を追跡する必要があるため、QAエンジニアにはこれまで以上に高度な技術的知識が求められます。また、あるサービスが別のサービスに依存している場合、その依存関係が崩れた際にどのような影響が及ぶかを予測し、事前にテストしておく必要もあります」と松山さんは指摘する。
APIによってQA業務はより複雑化する
マイクロサービスに関連して、松山さんは将来に影響を及ぼす具体的な技術として、APIを挙げている。
API技術は、クラウドやマイクロサービスと密接に結び付いており、今日のシステム開発には欠かせない要素となっている。APIは異なるシステムやサービス間の通信を可能にし、その統合や連携の中で新たな価値を提供している一方で、それがシステムの複雑さを増幅させているのも実情だ。APIを利用した外部サービスとの連携が進むと、エラーが発生した際の影響範囲が広がるため、QAエンジニアとしては、より慎重にテストを実施しなくてはならなくなるなど負担は増す。
APIの活用は今後さらに広がっていくことが明白である。インドに本社を構える調査会社・360iResearchは2024年4月に発行した調査データで、API統合プラットフォーム市場規模が2023年に34億9000万米ドル、2024年には39億米ドルになるとしている。年平均成長率は12.1%で、2030年には77億6000万米ドルに達すると予測。クラウドシフトにより、クラウドベースのアプリケーションとオンプレミスシステムを接続する、より堅牢で柔軟な統合ソリューションが必要となり、API統合プラットフォームの需要が拡大しているという。
このように、APIを利用したシステムが多様化する中で、QAテストに求められる要件はさらに高度化、複雑化してくる。アプリケーションが想定通りに動き、ユーザーのタスクやプロセスの種類を問わずデータが正常に流れることを確認する従来のエンド・トゥ・エンドテストでは限界がある。そこで「APIテストを組み合わせることで、システム全体の品質を効率的に保証できるようになる」と松山さんは述べる。
APIの動作を理解し、システム全体がどのように連携しているかを把握する力が、今後のQAエンジニアにとって不可欠なスキルの一つになってくる。
AI時代だからこそ人間の価値も生まれる
技術の進展は当然、プラスの側面もある。AIや自動化技術によってソフトウェア開発、テストなどQAエンジニア側の業務を効率化する仕組みも進化している。特にAIは、テストケースの生成やバグの予測、テスト結果の分析など多岐にわたって活用され、テストの自動化を支援するようになってきた。
IT調査会社の米ガートナーも「意思決定の複雑化でAIと自動化の需要が高まっている。ソフトウェア開発ライフサイクルの日常的なタスクが自動化され、ソフトウェアの開発、テスト、運用方法が変革している」との認識を示している。
このように、AIの導入は未来の話ではなく、既に企業の具体的な取り組みとして採用されている。松山さんは、AIがソフトウェアテストに与える影響について、「AIによってソフトウェアの最小単位の動作を確認する単体テストや簡単なシナリオテストは完全に自動化されるでしょう。テストケースの生成もAIに任せることができるようになり、手作業で行っていた部分がどんどん効率化されると考えています」と力を込める。

一方で、AIによる自動化が進むことで、QAエンジニアが関与する領域はさらに専門的で複雑なものに移行していく。特に、具体的なテストケースをあらかじめ作成せず、テスト実施者がシステムを探索しながら、直感や経験からシナリオを即興で組み立てる探索的テスト、あるいはユーザビリティテストのように、人間の感覚や直感が必要な部分は、AIには置き換えられない領域として、ますますエンジニアの重要性が増してくるだろう。
「AIによって、チェッキングと呼ばれる基本的なテスト作業は自動化されますが、人間だからこそ気付ける微細な不具合や、ユーザー視点での改善点を探すテスティングは、依然としてQAエンジニアの重要な役割です」と松山さん。未来のQAエンジニアは、ソフトウェアの動作や使い勝手を深く理解し、創造性を発揮しながら、探索的にテストする能力がますます求められることになりそうだ。
AIや自動化が進む未来において、QAエンジニアの役割は、製品の監視者としてだけではなく、ユーザーの体験や価値を最終的に保証する存在として、その価値を高めていくのである。
誰もがQAエンジニアになるチャンスがある
松山さんの話から、AIなどの技術が発展しても、人間の判断力や直感が必要な部分は依然として存在し、特にシステム全体を把握してビジネス価値を担保するのはQAエンジニアの役割だということがよく分かった。
「AIによるテスト自動化の流れは止まりませんが、人間の役割がなくなるわけではありません。むしろ、システム全体を理解し、探索的にテストを行い、ユーザーに本質的な価値を提供できるかを最終的に判断するのは人間です。そのためにもQAエンジニアの役割は大きいと言えるでしょう」と松山さんは強調する。
一方で、松山さんはより多くの人たちにQAエンジニアを目指してほしいという。自身の経験からも、QAエンジニアは必ずしも特定の専門スキルを前提としていないと言えるため、「知識ゼロの人がIT業界に飛び込む際の良いきっかけになるかもしれない」と話す。実際、同僚には元シェフのQAエンジニアもいるそうだ。こうした多様なキャリア形成が可能な点も、松山さんを含めたQAエンジニアという職業の魅力とも言えそうだ。

松山さんのように、システムやサービスの品質を最前線で守り、ビジネスにおいて重要な役割を果たすQAエンジニアの存在価値は、あらゆる物事がデジタル化しようとしている時代において、さらに高まっていくことだろう。
この記事は面白かったですか?
今後の改善の参考にさせていただきます!