Ruby技術者認定試験に受かるまでにやった3つのこと
Ruby技術者認定試験を受けたので、試験までの期間にやったことをまとめました。
はじめに
ある日、会社の同僚のDくんに「Ruby認定インテグレーターになりたいから資格とってきて」と言われました。
Rubyアソシエーションのページにも記載されているように、企業が「Ruby Association Certified System Integrator」として認定されるためには、5名以上が正社員として所属している必要があります。Dくんはなぜかこれが欲しくなったようです。不思議な人ですね。
でも誘われると自分としても欲しくなってきたので、Ruby技術者認定試験を受けてみることにしました。
前提スキル
自分のRubyスキルは以下のような感じです。
- Ruby歴3~4年くらい。
- 独学。
- Railsでの小〜中規模webサービスの開発経験あり(業務/趣味含めて6~7サイトくらい)
- ここ1〜2年は業務内容が変わって、会社では開発自体をあまりやってないです。
という感じで、そこそこRubyはさわっているのですが、独学なことや、最近プログラミングから遠ざかっていることもあって知識の抜け漏れが心配でした。
基本戦略
あまり時間もかけられなかったので、Ruby技術者認定試験 公式ガイドだけを勉強することにしました。結論から言うと、これだけで十分でした。
その1 : 公式ガイドブックの輪読会に参加
最初にやったのがこれです。Dくん主催の輪読会が週に1度開催されたので、それに参加しました。章ごとに輪読を行い、その後巻末の予想問題から関連する問題を抜き出し、解くスタイル。週に1時間、業務をはなれて他部署のメンバーと勉強するのはなかなか楽しかったです。
これでRubyの基礎知識の抜けはだいぶカバーできました。
その2 : 公式ガイドブックの予想問題を繰り返し解く
体系的に覚えたら、つぎは予想問題です。公式ガイドブックには100問の予想問題が載っているので、試験1週間前からこれを繰り返し解きました。
その3 : 間違えやすい文法をまとめる
予想問題を解いていると、試験に出やすいメソッドがわかってきます。
- String#chompと String#chopの違いについて
- Array#shift, Array#unshift, Array#pop, Array#pushの違いについて
- Array#detect, Array#find, Array#select, Array#find_allの区別について
これらの予想問題に出ているメソッドをGoogle SpreadSheets にまとめて通勤の電車の中で読むようにしました。
終わりに
自分の結果は100点中86点(合格ラインは75点)。正直あまりぱっとしない結果*1でしたが、勉強に費やした時間から考えるとまあまあといったところでしょうか。
定期的な輪読会以外は1週間前からの勉強でなんとか合格点までもっていくことが出来ました。独学だとなかなか使わないメソッドについて学べたりと試験によって得られるメリットもわりと大きく、かける時間と得られる効果のバランスも悪くないと思います。
新年に新しいことに挑戦したいと思われている方は勉強するきっかけとして試験を利用してみるのもといいと思いますよ!
*1: 同じような勉強法で満点だった人もいます