JSTQB Advanced Level Test Manager に合格した気がする

JSTQB AL TM の合格発表がありました。
幸いにも受験番号が記載されていたので、よほどのことが無い限り合格した気がします。
AL TA の時にも書いた内容と重複するけど書いておこうと思います。

試験の感想

JSTQB AL TA の時と同じ試験会場でした。 一度行ったらなれてしまったので遠いともあまり感じなくなっていました。

試験時間は3時間ありましたが、2時間ちょっとで退室できるくらいのボリュームでした。
知識問題(用語を知っていれば良い)は少なく、具体的な事例がでてきてどうする?みたいな問題が多いのも TA 同様でした。
答えていて楽しい問題ばかりなので資格試験=退屈みたいな感じではありませんでした。

受験勉強

しませんでした。今回は意図的にしなかったです。
TA の時に書いたとおり、実務でしっかりと考えていれば勉強不要なのでは?という仮説を検証しようと思ったからです。
といっても現職ではマネージャーではないのですが・・・。

資格試験勉強は受験後にしたほうがいいのでは

もし受験しようとしている資格試験が実務に直結する資格試験の場合、初回受験は勉強せずにいったらいいのではないでしょうか。
特にケーススタディが多い試験の場合、自分の知識や経験がどれくらいスタンダードなのか客観的に判断できるのではないかと思います。

そして受験後、判断に迷った問題や答えられなかった問題についてシラバスや参考書籍を確認して補うことで自分の知識のブラッシュアップを行えばより効果的なのではないかと。
本当は試験問題を持ち帰れて正答が公開されていればより自分の判断が間違っている箇所を補正できるのですが・・・現状では問題は持ち帰れず正答も公開されていないので覚えておくしかないです。

資格合格はスタートでしかない

資格合格したといっても、それはその時点で水準に達しているよということに過ぎないです。 実務で活かしたり、新しい情報を仕入れてアップデートしなければ風化してしまいます。 なので、結局は常に勉強しないといけないんだろうなーと思います。

EPGStation のバージョンアップではまったメモ

EPGStation のアップデートを公式ドキュメント通りに実施したところ、なぜか起動しなくなった。 Github の issue をのぞいてみたけど現象は報告されていなかったので、自分だけかもしれない。 とりあえず自力でなんとかしてみたのでそのときのログを残しておく。

公式サイトの手順通りにアップデートを実施

git pull
npm update
npm update -D
npm run build

EPGStation を再起動

pm2 restart epgstation

なぜかアクセスできなくなったので困った困った。 とりあえずログを探してみる

less logs/Operator/system.log

それっぽいエラーはいてるけど何が何だかさっぱり。

[2019-07-07T16:00:55.276] [INFO] system - upgrade 8 => 9
[2019-07-07T16:00:55.324] [FATAL] system - upgrade error

もっと詳しいログはないのかなーと探してみたらあった。 pm2 show epgstation を実行するとこんな感じの記載があった

out log path      │ $HOME/.pm2/logs/epgstation-out.log

とりあえずのぞいてみたらそれっぽいエラーが見つかる。

Error: ER_DUP_FIELDNAME: Duplicate column name 'channelId'

エラーはこのファイルMigrationV9.tsで起きているらしい。 中身を見るとDBのMigrationで RecordedHistory テーブルに channelId カラムを追加しているだけっぽい。

実際に該当のテーブルを見てみたら、すでに channelId カラムが存在している。。。 追加に失敗しているんだったら該当カラムを削除しちゃえば動くんじゃない?と安直な考えをしてみた。

まずは該当カラムにデータが入っているかを確認。 以下のクエリたたいてみたけど、NULL以外のデータが入っているものがなかった。

select * from RecordedHistory where channelId is not null;

ならバックアップとってから削除してしまえ。

epgstation 停止

pm2 stop epgstation

データベースをバックアップ

mysqldump --single-transaction -u user名 -p table名 > バックアップファイル名

カラム削除

alter table RecordedHistory drop channelId;

epgstation 起動

pm2 start epgstation

無事起動。 よかったね。

QAエンジニアにソフトウェア開発の知識は必要か?

タイトル通り、QAエンジニアにソフトウェア開発の知識が必要なのでしょうか?というお話です。 今年の Jasst Tokyo でも少しだけ話題に上がっていましたね。

経緯

僕が今まで働いてきた多くの会社ではソフトウェア開発に関する知識がほとんどない方がQAエンジニアとして働かれていました。 一緒にお仕事をしてくださった第三者検証の方もほとんどの方が似たような考えをお持ちでした。 多くの方はソフトウェア開発の知識よりもソフトウェアテストに関する知識が大事とおっしゃいます。 第三者の視点で品質保証ができればよいうという考え方なのだと思います。 だけど本当にそうなんだろうか?と思ったのがこのブログのきっかけです。

市場の要求

試しにこれを書いている今、自社開発のQAエンジニア求人をざっと検索してみましたが「ソフトウェア開発に関する体系的知識」みたいな事項が必須要件に書かれているものはほとんどありませんでした。 具体的には15求人を確認し、4求人のみが「ソフトウェア開発に関する知識・経験」に類するものを必須要件としていました。 求人の文字だけを見て判断するのであれば、約75%の求人ではソフトウェア開発の関する知識を必須として要求していないという結果です。 実際に現場で働いている人も、市場もあまり求めてなさそうですね。。。。

ところがです、QAエンジニアを募集されている企業さんに実際に訪問して話を聞くと結構「ソフトウェア開発に関する知識がない人が多くて困る」みたいな話をよく聞きます。 よくよく話を聞いてみると、「QAエンジニアもエンジニアなんだからソフトウェア開発に関する知識はあるものだと思っていた」と。 なるほどなーという感じでした。 もちろん直接はなしを聞いてみても、ソフトウェア開発に関する知識がなくても問題ないとおっしゃる企業様もいらっしゃるので、全部が全部要求されているわけではないのですが。

個人の見解

僕個人の意見ですが、QAエンジニアにソフトウェア開発の知識は必要だと考えています。 QAエンジニアの価値は品質を保証するために何を確認するか?どうやって確認するか?そもそもどうやってプロダクトを作っていくか?等を考えて実行し改善していくことだと思います。 これらを考えるためにはソフトウェアがどのように作られているのか?どうやって動いているのか?どういった技術が使われているのか?が分からないと判断できないのではないでしょうか? だからこそ、僕はソフトウェア開発の知識はQAエンジニア全員に必要だと思います。

同じ業界にいる方はどうお考えなのでしょうか? いろいろ教えてもらえるとうれしいです。