回答:
私の経験では、残念ながら、彼らはしばしば二流の従業員のように扱われ、さらに悪いことにプログラマーにとっては軽薄な特典です。
それは多くのことから生じます:
テスターが自分の仕事を正しく行っていると、プログラマー以外の誰もが簡単に自分の存在を忘れてしまいます。ネットワーク管理者のように、あなたは彼らが仕事をしていないか、ひどくやっていないときにだけ気づきます。したがって、組織の残りの観点から、彼らは彼らの間違いのためにのみ記憶されます。
プログラマーを志している人たちにとっては、入門レベルの仕事と誤解されていますが、まだその仕事に適格ではありません。実際、私が働いていたある会社では、Q&Aの肩書きを取得したいと思っていたにもかかわらず、Jr。Programmerの肩書きが与えられました。彼らがQA部門にいたという事実でさえ、HRにそれを急がせるには十分ではありませんでした。
#2のため、テスターはすべてエントリーレベルの人々であり、それに応じて支払われるべきであると想定されています。
批判されるのを好む人はいません。防御的なプログラマーはテスターを嫌うのが一般的です。なぜなら、彼らの仕事は終日プログラマーの間違いを指摘する必要があるからです。私はマネージャーとして、QAチームが見栄えを良くするためにそこにいたことをプログラマーに思い出させるために、PRミッションに常に取り組んでいました。
少なくとも最初は、人々が偶然に選択するのではなく、偶然に就職する傾向があります。私が出席したどの学校でも、ソフトウェアQ&Aの準備をした学位計画を覚えていません。彼らは実際に存在しますが、通常はローエンドの専門学校にあり、彼らはスキルの低い専門家であるという考えにのみ貢献しています。
テストジョブは、プログラミングジョブよりもはるかにオフショアに送信される可能性が高くなります。少なくともプログラマーは、設計のニーズをローカルに伝える方が効率的であり、会社のフラッグシップアプリが社内でどのように機能するかについての知識を保持することが重要であると主張できます。ただし、テストはモジュール化がはるかに簡単であるため、アウトソーシングが簡単です。
上記のすべての理由から、テスターは壁に書いた文章を見て、他の仕事(プログラミングなど)、特に本当に良い仕事に移る傾向があります。これは、ほとんどのテストジョブが、まだ燃え尽きていない、または他のことに移行していないエントリレベルの人をスタッフに配置する傾向があることを意味します。
会社によって異なりますが、通常は異なります。彼らはしばしば二流の市民とみなされており、多くの企業では、テストはエントリーレベルの位置とみなされ、そこから本物の開発者になります。
これは、もちろん、がらくたです。優秀なテスターと仕事をしたことはありますが、彼らは価値があり、手に入れるのが難しいと言えます。自明でないバグを見つけるのに十分創造的であり、徹底的な仕事をするのに十分な方法で考えている人。
ただし、例外が1つあります。Microsoftのテスト担当者を何人か知っていますが、テスターには一流の市民がいると聞きます。
私はかなり大規模なプロジェクトで1年間機能テスターとして働いてきました。約10人のメンバーから成る各チームには2〜3人のテスターがいました。私たちはプロジェクトにとって開発者と同様に重要であるとみなされたと言わなければなりません。
バグを見つけることは簡単ではありません。最初に、テスターはコードが何をすべきかを理解する必要があります。つまり、要件を読んで理解することです。ここで重要なのは、要件を理解することです。テスト担当者が、ポジティブなテストケースの書き方を知るのに十分な要件を理解できない場合は、心配する必要があります。これは、開発者が想定どおりに実行するコードを作成したことを意味します。この仮定は正しいものですか?要件を整理するまでわからないので、その欠陥を見つけてくれたテスターに感謝することができます。
第二に、テスターは誤ったテストケースを作成する必要があります。これにより、コードが想定外の動作をしないことが保証されます。合理的な経験則では、すべてのポジティブテストケースに対して5〜10個の誤ったテストケースを作成します。この手段は、さらに要件を理解し、そして多くの場合、この情報は、少なくとも私たちのプロジェクトでは、紛らわしく曖昧です。(そして、それは要件を収集する努力が少ないためではありませんでした-私たちのチームだけで13,000のようなものがありました。)繰り返しになりますが、開発者は仮定を使用してコードを記述したか、さらに悪いことに、まったく考慮していません。では、通常ではないこれらの条件下でコードは何をしますか?テストするまでわかりません。プログラムが応答しない場合があります。たぶんクラッシュするだけです。データを破壊する可能性があります。たぶん、ユーザーがrootユーザーとしてコマンドを実行できるようになります。それが何であれ、あなたは知りたい。そうしないと、ある日新聞で次の見出しを読んでしまうことがあります- [あなたの会社名]のフラグシッププログラムのバグクライアントのクレジットカード番号のバグ。
したがって、テスターを適切に扱ってください。それらをよく扱う。結局のところ、彼らはあなたのソフトウェアのバグを根絶し、あなたと私たちの生活を楽にする人たちです。
他の回答を読んだ後の更新:自分の仕事を愛するQAプロフェッショナルがたくさんいます。尊敬されるQAの職務に出会っていない場合に別の視点を示すために、ここに1つの例を示します。大手自動車メーカー向けの組み込みアプリ/モバイルアプリのテスト。車両が市場にリリースされる前に、ビジネス要件が完全に満たされていることを確認し、ユーザーが遅いまたは反応しない車のダッシュボードを経験しないようにします。彼らはマネージャーや高レベルの管理者と緊密に連携し、開発者はQAプロセスの計画から設計施設のシミュレーターでの実地テストまでを行います。彼らは目立たないとは思いません。彼らは大きな責任と所有権を持ち、最高のエンジニアの一人です。
今、私の以前の答え、裏返し:
私は、エンジニアリングの卒業生がテスト部門(コンテキスト:インド、すべてが「ビジネス要件」によって駆動される大規模なソフトウェアサービス会社)に割り当てられることを嫌うことを観察しました。「ウェブページ内のすべてのリンクをクリックして確認する」などの手順が記載されたExcelシートが提供され、屈辱と見なされる非技術的なストリーム(科学、芸術)の卒業生と協力することを余儀なくされ、技術スキルはないように感じられます利用された。これらの割り当ては、純粋に組織の要件に基づいており、ほとんどの場合、より新鮮なものには、彼のキャリアパスを交渉する権限がありません。あなたがそのような大きなIT企業を目指す求職者であれば、警告されています。適切なタイミングで会社を辞めることを除いて、実際には多くのことを行うことはできません。
自動テスト、ロード/パフォーマンステストなどを学ぶ機会がない限り、キャリアはある程度停滞しています個人的には、オンサイトの割り当て(=オフショアプログラマーの観点からのお金)の機会はテストユニットの方が多いことを知っています私の組織は他のどのユニットよりも優れています。テストはすべてのドメインのプロジェクトで避けられないため、すべての業種でフィラーまたは接着剤として機能します。
自分のキャリアを思い通りに進めることができると確信しているなら、テストは目立たないものではありません。4〜5年の経験とわずかな運により、トップレベルのビジネスユーザーと対話することもあります。また、作業している業界/ドメインを十分に把握できます(システムの一部に主に焦点を当てる開発者と比較して)。この時点で、ビジネスアナリストのような役割に切り替えることもできます。
QAチームがリリースを担当している企業を知っています。これは、品質の不足によりリリースをブロックする能力があることを意味します。現場で問題が報告された場合、それらは最初の射線です(フィールドエンジニアのすぐ後)。
通常、彼らはより高いドメイン知識を持っています。開発者がモジュール/機能に集中している間、彼らは製品の全体的な機能をよりよく知っている傾向があります。
また、独自のテストツールを作成する必要があるQA組織についても知っています。全体を自動化することは言うまでもありません。私は開発者であり、私の機能をテストするQAの人たちを常に大切にしてきました。
少なくとも私の組織では、QAは開発者と同等に扱われます。これは、プロトコルとネットワークアーキテクチャの知識がプログラミングスキルと同等に評価されるドメイン(テレコム)によるものだと思います。
はい。好きでも残しても、同様に重要ですが、常にあまり好まれません。交換が簡単だからかもしれません。