Ruby Association Certified Ruby Programmer Silver / Gold
持っているだけで凄い!というような資格ではありませんが、最近周囲の人に取得した人が増えてきたので、自分だけ持っていないのも肩身が狭いなと思い、取得することとしました。
準備期間
Silver..2週間
Gold..1ヶ月半
試験予約の都合上、Goldが準備期間長めになりました。
試験対策
SilverではRuby技術者認定試験合格教本とREx
Goldではそれに加えてメタプログラミングRubyで勉強しました。
業務であまり使わない知識も出題されるので、試験対策せずに望んだら絶対落ちていました。
Silverは覚えゲー
Silverは知識を広く浅く問われる感じの試験でした。
平日は通勤時間はずっとスマホでRExの問題を解いて、安定的に9割取れるまで繰り返しました。
週末はRuby技術者認定試験合格教本を読んだり、RExで間違えた問題を実際にコード動かしてみたりしました。
RExとRuby技術者認定試験合格教本の知識を身に着けておけば合格点にたどりつけると感じました。
Goldはパズル感覚
GoldはSilverよりも馴染みのないライブラリ(Thread/Fiber/Socket/RDocなど)や大域脱出(throw/catch)などを覚えておく必要があるほかは、クラス継承、定数/メソッドの探索順、Refinementsを問われる問題が多かった印象です。
こちらも同じく平日は通勤時間を使ってずっとスマホでRExの問題を解いていました。
週末はメタプログラミングRubyを読んで、Ruby技術者認定試験合格教本を一通り読んで問題を解いたほか、
試験前日はずっとRExで出題されたコードを少しづつ変えてみて、出力がどう変化するかを考え、実行して答え合わせ、というのを繰り返していました。
Goldは、Silverのように「覚えておけば解ける」というよりは、こういう仕組みでRubyが動いているから、こういう出力になる、というのをしっかり考えられるようにしておく必要があると感じました。
ただ、考えられるようになっていてもなかなか自信が持てないので、いろんなパターンのコードを作って、実際に動かす、ということを行っておくと自信をもって回答できてよいかなと思います。