私はソフトウェアQAアナリストとして6年間働いています。今年はコンピュータサイエンスの修士号を取得します。卒業後どうやってキャリアを伸ばすかわからない。
私はプログラミング、パズルの解法が好きですが、それまでのところ、ソフトウェアテストはそれほど嫌いではありません。実際、バグを見つけて根本的な原因を突き止めることができるのは楽しいことです。私は自分のやっていることはかなり得意です。通常、他のテストがチームで見つけることができる数の2倍または3倍の欠陥を見つけます。
ただし、同じアプリケーションを繰り返し、単調に何度もテストするのは、少し退屈な場合があります。私は過去にもっと興味深いいくつかの自動化テストを行いましたが、それでもなお、バグの大部分は手動で発見されます。
ここには2つのオプションがあると思います。ソフトウェアテストを続行するか、コーディングとスクリプト作成を含む自動化テストをさらに実行するかです。これを行うには、Googleなどの自動化ツールを使用して、ほとんどのテストが実行される場所を見つける必要があると思います(テスターの職務記述から)。オプション2は、私がいつも好きなフルタイムのプログラミングを行うために開発者側を選ぶことです。オプション2の欠点は、過去の経験のほとんどがテスト側であるため、ゼロから始めなければならないことです。
誰か似たような経験やアドバイスがありますか?
マイクロソフトでテストの経験を積んだ後、私は小さな会社のSDETとして働いています。私はコンピュータサイエンスの学士号を取得しており、私の時間の約50%をテストツールの開発に費やし、約50%はそれらを使って製品コードをテストしています。開発者側を喜ばせるので、自分の仕事が大好きですが、非常に熟練したテスターとして雇用主の目を引きます。
テスト自動化をテストして作成できる開発者には大きな需要があります。あなたのバックグラウンドがあれば、レベルを下げることなく、テストの開発者として飛び込むことができるはずです。 Microsoft、Amazon、Google、および多くの小さなアジャイル企業が、テストできる開発者を探しています。あなたの経験と資格があれば、テスト開発者としてこれらの会社に簡単に就職できても驚くことではありません。
しばらくしてから、SDETではなくSDEとして作業したい場合は、テストツールプロジェクトを使用してコーディング能力を実証できます。その後、並行して開発に移行し、エントリレベルの開発作業を完全に回避できるはずです。 6年間のQA経験を持つSDETとして、SDETとして十分にシニア開発者と協力して、彼らから学ぶことで実際の開発スキルを大幅に向上させることができるはずです。少しお世辞を言って、設計上の決定について話してもらいます。上級開発者は、エレガントで保守可能な設計を評価するのに十分なコーディングが可能なテスターを愛しています。
あなたが自分自身に挑戦するための新しい方法を探しているとき、1つの役割で6年間、岐路に立つことができます。ですから、この岐路に立つのはごく自然なことだと思います。
自分が2つのオプションを見つめていることに気づいたときはいつでも、私は立ち止まり、3番目のパスが何であるかを考えます。私がこれを行う理由は、自分自身を既存のパラダイムの外で考えるように強いるためです。自分を2つの選択肢に制限することを「サッカーの選択」と呼びます。これは、この状況に関する興味深い記事です。 http://sourcesofinsight.com/2007/12/28/refuse-the-suckers-choice-4/
たとえば、ビジネスアナリストタイプの役割への移行を検討したことがありますか。 QA側で長い間働いていると、エンドユーザーとつながるための確かなスキルとバックグラウンドが得られます。この種のパターンは、純粋な開発を行う人には見られないことがよくあります。
あなたが本当にプログラムするのが面倒なら、私はあなたが今やっているテストを自動化するためのツールを探し始めることを勧めます。私が解決した最も困難な問題のいくつかは、テストを自動化する方法を見つけることから来ています。たとえば、負荷テストのシナリオで作業していて、負荷テストをランダムにできるようにVisual Studio Webテストを拡張する方法を考え出す必要がありました。
また、オープンソース開発チームに参加することをお勧めします。世の中にはたくさんのプロジェクトがありますが、自然にフィットするプロジェクトを見つけるのに少しの時間と忍耐が必要です。
幸運を