Ruby Association Certified Ruby Programmer

The Ruby Association Certified Ruby Programmer examinations are intended for engineers who design, develop, and/or operate Ruby-based systems, consultants who make Ruby-based system proposals, and instructors who teach Ruby.
Those who are certified are recognized for their skills as Ruby engineers and as having high levels of Ruby-based system development capabilities.
Those who pass the examination are certified by the Ruby Association as a Ruby Association Certified Ruby Programmer.

Overview and purposes of certification examinations

The overall purpose of the certification program is to:

  1. Set a standard by which goals can be set for studying and teaching Ruby
  2. Set a standard by which Ruby engineers can measure and prove their skill level
  3. Set a decision-making standard for companies and other entities seeking to hire Ruby engineers or outsource development projects

The certification examinations are linked to the different sets of qualifications required for certification as a Ruby Association Certified Ruby Programmer, and there is a certification examination that corresponds to each set of qualifications. The Ruby Association will issue a certificate to those who pass the examinations.

Names and levels of qualification (examination)

Ruby Association Certified Ruby Programmer examinations are designed to certify multiple levels of skill sets.


Ruby Association Certified Ruby Programmer Silver:

This is a basic skill-level certification of the knowledge on the background, grammar, classes, objects, and standard libraries of Ruby. The logo below identifies people who are certified.


Ruby Association Certified Ruby Programmer Gold :

Now Printing...


Ruby Association Certified Ruby Programmer Platinum (Tentative):

Under development

Outline of examination

Ruby Association Certified Ruby Programmer Silver version 2.1
Test time
90 minutes
Method Computer Based Testing  To Registrate
Number of questions 50 (multiple choice)
Passing score
Target version
Ruby 2.1.x



Built-in libraries


Object orientation

Examination fee


Ruby Association Certified Ruby Programmer Gold version 2.1
Test time
90 minites
Computer Based Testing To Registrate
Number of questions
50 (multiple choice)
Passing score
Target version
Ruby 2.1.x

Execution environment




Object Oriented Programing


Built-in libraries 

  • Well-used built-in classes(e.g., Object、Kernel、Module)
  • Well-used built-in modules(e.g., Enumerable、Comparable)
  • Numeric
  • Regular expression
  • Proc
  • Thread/Fiber

Standard Library

  • Well-used standard libraries(e.g., socket、date、stringio)
Examination fee
USD 150
 Notes Candidate must pass both silver and gold exams to earn the Ruby Association Certified Ruby Programmer Gold version 2.1


Once you pass the examination, you will be eligible to receive your certificate.
A certification will be sent to your
registered address in the next month via air mail.



Silver examination

Ruby Association official prep test (PDF)
New prep test for the Silver exam

Gold Examination

Prep test for the Gold exam
MetaProramming Ruby2

Exam success stories

 Daniel Pariente 
  I’m not a big fan of the certifications, but for some time now I decided to invest in myself. I had the great opportunity to get a free voucher and didn’t think twice since I could demonstrate my skills in ruby.

  I thought to take the exam immediately, but I held myself to a deadline of two weeks to study. For being a developer that works on ruby/rails everyday I had a good foundation, but decided not to take into account any prior knowledge and start from scratch like if I was just learning the language.

  I organized my time to study at least one hour each day. I took the prep exam and knew that it wasn’t going to be easy. I did a study plan and organized all the resources that I thought would be useful for my learning, starting with a book that is characterized by learning by doing called “Ruby the hard way”, with a series of exercises that touch different subjects of the language.

  I practiced each of the core classes and wrote over thirty files during this learning period. I also thought an additional approach would be useful, so I applied the same method of practicing writing the examples of one of my favorite ruby books “The Well-Grounded Rubyist”. This gave me a practical approach addressing real common problems.

  I set a goal to review all the built-in classes section and others that I wasn’t confident enough. After covering the first chapters I noticed all the new things were fresh and I easy to remember but some of them were fading out or at least didn’t come by reflex.

  So I thought of a way to remember what I had already studied or even go over the things that were not entirely clear and remembered how in the first school years we used flashcards to learn new vocabulary in another language.

  Thus I built a rails application that emulated those flashcards, with the methods or whatever I wanted to learn from one side and a snippet of code with a usage example in the other. To study the Enumerable module I took a different approach, thinking about how I would have written the different methods, using all my previous knowledge, then review the implementation in rubinius to see how they did it there.

  Having a moderately strong knowledge in the exam’s topics, I went to see the documentation to review and find something that I didn’t know yet to cover absolutely everything.

  The day before the exam I gave a quick read to all my notes and exercises I had written, solidifying further what I studied. I decided to sleep early because I had to travel at dawn to another city to take the exam. On test day woke up with a lot of energy and determined. Arrived early so I went to a coffee shop and checked once more the preparatory examination to get a general idea of how the questions would be.

  I went to the exam center as if I would be going to war, having as arsenal all the things that I studied during those days. Once there the preparation of the room took at least 15 minutes, enough to have negative thoughts, such as what will happen if I cannot pass the exam, which I took off my mind with a “everything will be alright”.

  The time has come, the room was ready, they took me to a sort of cubicle with a computer and a camera right in front of me, it was a little intimidating at first, but made up my mind of being monitored during the process. Before starting the test, I took a deep breath and said to myself. “Let’s do this!”

  I went through the questions without stopping, to have some time to review, in the end while pressing the button to finalize the test I visualized a high score and I was pleasantly surprised when I realized that all my effort gave a great result, I felt really happy to know that I had passed the exam, despite thinking that I didn’t study as I really wanted, since I had to balance my study time with my work. I did it and felt proud of myself.