Ruby Online Test
For jobseekers
Practice your skills and earn a certificate of achievement when you score in the top 25%.
Take a Practice TestFor companies
Screen real Ruby skills, flag human or AI assistance, and interview the right people.
About the test
The Ruby online test assesses knowledge of programming in the Ruby language. This test requires solving live coding problems in Ruby.
The assessment includes work-sample tasks such as:
- Serializing to/from JSON to handle web requests.
- Finding and fixing bugs, and handling exceptions.
- Extracting data from text using Regex.
A good Ruby developer needs a solid understanding of the Ruby programming language and knowledge of its data structures and language constructs to write robust and maintainable code.
Sample public questions
As part of a data processing pipeline, complete the implementation of the pipeline method:
- The pipeline method should accept a variable number of functions, and it should return a new function that accepts one parameter arg.
- The returned function should call the first function in pipeline with the parameter arg, and call the second function with the result of the first function.
- The returned function should continue calling each function in pipeline in order, following the same pattern, and return the value from the last function.
For example, calling pipeline(-> (x) { x * 3 }, -> (x) { x + 1 }, -> (x) { x / 2 }), and then calling the returned function with 3 should return 5.
Implement the filter method. It should accept a list of students and a variable number of filters. The filters will be passed in as lambdas, each of which will take one student record and return a boolean value.
filter should return a list of student records that have passed through all the filters.
If no filters are provided, the list of student records should be returned as is. If no students pass through all the provided filters (or if no students are provided), return an empty array.
For example, consider the following code:
students = [
{ name: 'Thomas Edison', gpa: 3.45 },
{ name: 'Grace Hopper', gpa: 3.99 },
{ name: 'Leonardo DaVinci', gpa: 2.78 }
]
honor_roll = ->(record) { record[:gpa] > 3.0 }
filter(students, honor_roll) should return:
[{:name=>"Thomas Edison", :gpa=>3.45},{:name=>"Grace Hopper", :gpa=>3.99}]For jobseekers: get certified
Earn a free certificate by achieving top 25% on the Ruby test with public questions.
Take a Certification TestSample silver certificate
Sunshine Caprio
Java and SQL TestDomeCertificate
For companies: premium questions
Buy TestDome to access premium questions that can't be practiced.
Ready to interview?
Use these and other questions from our library with our
Code Interview Platform.

19 more premium Ruby questions
Document Store, Ranges, Category Tree, Chain Link, Hobbies, Username, Crop Ratio, String Occurrence, Segment, Read Write Execute, Read First Line, Language Teacher, Log Patch, Numbers To Text, Paragraph, Greeter, Students, Date Transform, Shipping.
Skills and topics tested
- Ruby
- Bug Fixing
- Language
- Ranges
- Exceptions
- Hash
- Linked List
- Arrays
- Iteration
- Regex
- Strings
- Integer Division
- Stream
- Arithmetic
- Inheritance
- OOP
- Monkey Patching
- JSON
- Serialization
- Sorting
For job roles
- Back-End Developer
- Ruby Developer
- Web Developer
Sample candidate report
Need it fast? AI-crafted tests for your job role
TestDome generates custom tests tailored to the specific skills you need for your job role.
Sign up now to try it out and see how AI can streamline your hiring process!
What others say
Simple, straight-forward technical testing
TestDome is simple, provides a reasonable (though not extensive) battery of tests to choose from, and doesn't take the candidate an inordinate amount of time. It also simulates working pressure with the time limits.
Jan Opperman, Grindrod Bank
Product reviews
Used by
Solve all your skill testing needs
150+ Pre-made tests
130+ skills
AI-ready assessments
How TestDome works
Choose a pre-made test
or create a custom test
Invite candidates via
email, URL, or your ATS
Candidates take
a test remotely
Sort candidates and
get individual reports



