見出し画像

開発経験のない「バキバキQA」であることについて

Q.世界に比べてコード書かない率が高いという結果をASTERが出してきてるんですけども。
ごまずん:まことに遺憾ですよね。残念ですね。
Q.ご自身は?
ごまずん:あ、僕バキバキQAですね。
Q.これまで開発経験は?
ごまずん:あ、もう当然なく。自分から書こうというほどではないですね。
Q.それはどうしてですか?
ごまずん:やはりバグを埋め込むのが怖い
Q.年収とかは?
ごまずん:会社員なので全然ない。自信もなく。コミュ力があればまだいけるのかもしれないですけど。

https://dic.nicovideo.jp/a/バキバキ童貞です

はじめに

私は開発経験のないバキバキQAです。
そんなバキバキQAであることについて、どのような思いを持っているかを記載したいと思います。

本記事を読むと、開発経験がない=バキバキQAと読めてしまいます。
それは私の意図とも合っています。
ただ私はバキバキQAをレッテル貼りとして使っているわけではありません
この記事やイラストを見て楽しんでもらったり、考えてもらえればそれで満足です。
バキバキQAは私で、あなたが自分から名乗らない限り、バキバキQAではありません。
私以外の誰かに開発経験があろうとなかろうと、私はどうでもいいのです。

「開発経験のない」バキバキQAでいいのか?

「開発経験のないこと」とは、ここでは製品として販売されるような「プロダクトコード」を書いたことがないと定義します。
テストコードや個人開発(課金されるアプリとかならいいかな)は対象外とさせてください。
そんな私がQAエンジニアとして名乗ってしていいのか?
「チーム全体で価値を高めて品質保証」なんて言ってもいいのか?と考えたりします。

「コードをちょっと書けること」と「開発経験がある」の違い

私はPythonやjavascriptのコードはちょっと書けます。Javaのコードも読みやすいものしか見たことないですが読めます。ただ、「開発経験がある」には程遠いと思っています。
私が個人で書いたようなコードは0あるいは1つのサービスに対する値の変更でしかなく、コードレビューもありません。
一方多くの場合、プロダクトコードは複数のサービスやフレームワークを活用して、難解な本番環境に乗せて、それでいて保守しやすいクリーンなコードであると思います。もっとすごいプロの技もあるのかも。
また、多くのプロダクトコードはチームで開発されています。自動テストコードも。
それらと同じレベルで「コードが書けます」とは私は言えません。
私に開発経験があるとしたら、それは素人QAと言えるでしょう。

「開発経験がない」の劣等感

「プロダクトコードを書いたことがない」というのは、実際のQAとしての活動でも精神的な障壁になっています。
私は「質とスピード」による内部品質の良さが素早いデリバリーと外部品質の向上に寄与すると考えています。
そんな中で「単体テストコードを見てみたい、単体テストレベルのテストマネジメントをしたい」となった時に、「単体テストについて私がコメントしてもいいのか?」と葛藤することがあります。
現状のチームではメンバーに恵まれ、ある程度そういった意見も言いやすくはなっていますが、やはり新規参入された方や、関係性が整っていないメンバーとのやりとりについて、「開発経験がない」ことによる引け目があることは否定できません。
「単体テストは開発者を導くものではないか?QAが何か言っていいものなのか?」と思ったりします。

「開発経験がないエンジニア」を肯定する気持ち

一方で、私以外の「開発経験がないエンジニア」を肯定したい気持ちもあります。
外国では「ITエンジニアは情報処理系の大学の学位を持っている人」と明確に定められている覚えがあります。
これは開発経験がないQAによる屁理屈ですが、エンジニアリングの技術で現場を改善していたらエンジニアと名乗っていいと思います。

「QAする」も広義の開発である

QAはテストが主戦場となることが多いですが、それも理解のあるお客様から見たら、開発のプロセスの一部だと考えています。
また、QAすることによって、プロダクトの品質に貢献していれば、プロダクトコードを書かなくても開発に貢献していると言えます。
そういった意味ではQAも「開発経験アリ」と言えるのではないでしょうか。

それでも「開発経験したい」んです

それでも私は「開発経験なし」の「バキバキQA」で一生過ごすことを望んでいません。
プロとして開発ができる実力はないのですが、もっと開発の知識を知って、開発者のこともきちんと考えられるお母さんのようなQAになりたいと考えています。(お母さんのようなQAは生前、にしさんがよくおっしゃってましたね)
今のプロジェクトでは、まず開発者とコミュニケーションを取って、自分がやってる「素人QA」と「開発者」のギャップについて知りたいと考えています。
お互いの技術交流を進めて、私のQA技術をGiveする代わりに、開発者の開発技術をTakeするような関係性を築けないかと夢想しています。

おわりに

もういい歳なので、プロダクトコードを書ける機会はそう表れないかもしれません。
それでも私はプロダクトコードへのアプローチを決して諦めず、いつか「バキバキQA」を卒業して、「QAに専門性のあるエンジニア」として生きていきたいと思います。

また、この記事は反復型開発を採用していますので、随時更新していきます。

この記事が気に入ったらサポートをしてみませんか?