Contents
Ruby技術者認定試験とは
Ruby技術者認定試験制度は、Rubyベースのシステムを設計、開発、運用するエンジニア、Rubyでシステム提案を行うコンサルタント、Rubyを教える講師及びRubyを学ぶ学生などを対象とした認定試験制度です。認定者は、Ruby技術者としての技術力を公正に評価され、高い水準のRubyによるシステム開発能力を持つことを認定されます。
認定によりRubyベースでシステム開発を行ううえで必要な基礎的な知識と応用力をもつことをアピールすることができます。試験の合格者は、Rubyアソシエーションにより「 Ruby Association Certified Ruby Programmer Silver/Gold version 2.1」として認定されます。
2018年9月現在、試験形式はコンピュータ試験(CBT)であり、試験時間は90分、問題数は50問、合格ラインは75%、受験料は16200円となっています。合格すると電子と紙での合格証書が授与されます。
Sliver
Rubyの文法知識、Rubyのクラスとオブジェクト、標準ライブラリの知識について、基本的な技術レベルを持つことを認定します。
Silver資格(正確には、「Ruby Association Certified Ruby Programmer Silver version 2.1」)は、Ruby技術者認定試験の中で入門用の資格として位置づけられています。まずはこの資格を取得することを目指しましょう。
Gold
Silverで求められる範囲(文法、オブジェクト指向、組み込みライブラリ、実行環境など)を更に掘り 下げた知識に標準添付ライブラリ知識やアプリケーション設計に必要となるクラスやオブジェクトに関する知識を追加し、Rubyによるプログラム設計技術を持つことを認定します。
Gold資格(正確には、「Ruby Association Certified Ruby Programmer Gold version 2.1」)は、Silver資格の上位資格にあたるものです。
Silverと試験の傾向は変わりませんが、標準ライブラリや文法について、より専門的な知識を求められます。
先にSilver試験に合格していないと、Goldの認定試験に合格しても資格を取得できません。
Platinum
Sliver,Goldの上位の資格としてPlatinumという資格が想定されていますが、こちらはまだ策定中のようなので、受験することはできません。
資格名も「Ruby Association Certified Ruby Programmer Platinum (仮称)」となっています。
対策テキスト
「たのしいRuby」などの基本的なテキストで基礎を固め、ある程度理解できるようになったら資格試験に特化したテキストで集中的に試験対策を進めるのがオススメです。
「Ruby技術者認定試験合格教本」は、資格試験を実施しているRubyアソシエーションが出版している資格テキストで、これを何度も復習していくのが効率的でしょう。
Silver、Goldどちらを受験する場合でも、「Ruby技術者認定試験合格教本」一冊で試験範囲をカバーすることができます。
資格を取得するときの注意点
最新のRubyよりバージョンが古い
2018年9月現在、最新のRubyのバージョンは2.5.1です。
Ruby技術者認定試験での試験対象となるRubyのバージョンは2.1であるため、やや古いバージョンを学習しなくてはいけません。
メジャーバージョンだけ見ると同じ2系であるため、大まかな文法などに変わりはないですが、この資格を取得するだけで最新のRubyのすべてを理解したとはいえないため注意が必要です。
つねに最新技術の動向をウォッチしていくことが技術者に求められる一番重要な姿勢です。
就職に影響はあるのか?
資格は技術力の保有を第三者が保証してくれるもの
「ITエンジニアは現場での技術力こそが全てであるため、資格は必要ない」という意見もあります。この意見は確かに正しい部分もありますが、全く資格の勉強をすることが無意味かというとそういうことではありません。
エンジニアにとって手を動かすスキルがあるのは当たり前のことです。しかし、どの程度のスキルを持っているかを計るのには、資格は一つの目安になるものでもあり、最低限のスキルを証明するものでもあるのです。
他に「技術力の保有の証明」として企業の採用担当が検討する要素としては、やはり業務経験歴が挙げられますが、未経験からエンジニアを目指すに当たっては業務経験はそもそもないですし、他の要素でスキルをアピールするしかありません。
難易度の高い資格を持っていれば、真摯に技術に向き合い、そのプロセスが第三者機関が認めてくれたエンジニアだと説明することができます。
前述した「手を動かすスキル」は大前提となりますが、資格の有無によっても評価が分かれる会社は確かに存在します。また、企業によっては就職や転職、昇進、昇給の条件としても資格の保持を重要視している場合もあります。
高い技術力に加えて、スキルレベルの高い資格を保持していることは、他の社員との差を拡げてくれる差別化要因ともなりえるのです。
特に中規模〜大規模なシステムインテグレータでのキャリアにおいて資格の有無は影響しやすいです。
体系的な知識の整理に利用すると学習効率大
資格試験の勉強は、プログラミングの体系的な知識の整理に利用すると効果的です。
「紙の上での勉強より実務積んでナンボ」というスタンスのエンジニアもいますが、実務で学ぶだけでは、「こういう問題があってこうやったら解決した(なんでこれで解決できるのかは知らない)」という断片的な知識だけが蓄積してしまいます。
自分が習得したこと、できるようになったことを振り返る、理解しやすいようにまとめる、というのは絶対に必要な作業です。
資格試験で学ぶ内容というのは、先人エンジニアたちがこういった苦労を重ね、能力と多大な労力をかけて体系化した技術の結晶です。これを自分の脳内にインストールすることで、先人たちが辿った苦労を自分はせずに知識を習得することができます。
目的は資格の取得そのものではなく、プロのエンジニアとして実社会で通用する人材になることです。長期的な目線で見て、どういう学習をすれば良いのかを常に考えながら勉強していきましょう。