The most challenging part of onboarding new Ruby developers is, without a doubt, the technical interview. No matter how many candidates you’ve seen before or how many questions you’ve asked, it’s a process that never seems to get easier with time.
The process, of interviewing a Ruby developer, can vary wildly from talking to a senior engineer with 20 years of language experience to a recent graduate with 20 months total experience. But the qualities and core skills you’re looking for in both should be largely the same.
High-quality developers, in any language, should have a set of hard and soft skills that show a certain level of experience, knowledge, and due diligence coming into a firm. In ruby development these skills should, at a minimum, include:
These skills should make up the foundation of what you’d expect an incoming developer to come with. In addition, you should look for experience in previous projects and an opinion on the best frameworks, tools, and technologies for particular development problems.
This guide goes into detail on the skills, experience, and qualities to look for in an incoming Ruby developer, as well as the questions to ask to find out whether your candidate has the expertise you’re looking for to build successful Ruby apps.
Far from a rigid and immovable guide, these questions are a starting point—a way to open the door in a positive way to create a conversation between you and your leading candidates.
Should you still need assistance beyond this guide to build your team of developers, we are here to help. Just tell us what you need. We can do the work for you and connect you with up to 5 companies within 72h that match your need- all for free.
Soft skills don’t build applications or services, but they do build teams. A successful developer is one that is a key member within a wider group, able to communicate difficult problems and contribute towards a larger solution.
For a closer look at another aspect where soft skills come into play, make sure to read our guide on the management of outsourced Ruby on Rails development teams. Important soft skills you will be looking to assess in this stage of hiring will help make the management step go much smoother.
These questions should help the right candidate demonstrate these skills as they’ve used them in the past.
An opportunity for candidates to talk themselves up a little. A candidate may discuss one particular problem or challenge they solved which had a major impact on the firm, or talk about a more generalised approach they introduced to a company or team. Some good examples may be to encourage wider adoption of good testing practices, CI/CD, improved coding standards, or better communication practices.
A question that should give insight into how well a candidate is likely to work with others. The answer given here may tell you a lot about how a candidate will fit in with the team members already in place. A good answer may start a conversation about your teams and how they may fit into them.
A candidate’s communication skills can, at times, be as important as their technical skills. This question can be deceptively tricky, but an ideal candidate will know how to discuss the topic at a high level without getting bogged down in the details.
Adjusting to mistakes well is more important than aiming never to make them in the first place—an unrealistic goal. A candidate who can identify a previous mistake, re-evaluate their approach, and adjust how they’re tackling a problem is a very valuable asset to have in your team.
Generalised technical skills in software development are the single most valuable asset your team can have. They’re the kind of skills that are hard-won, only through previous experience, working with others and, very often, learning by trial and error. A developer with a strong foundational knowledge and years of practical experience, in any language or technology, can most often tackle previously unseen problems in many related fields and languages.
Looking for these skills can make the difference between average developers and high-flying teams working at maximum efficiency.
Being able to build applications and programs from start to finish is a great skill to have. What sets apart enthusiastic amateurs from professional developers, however, is the ability to contribute value to a much larger team. In real-world app development, it’s rare to have full-scale projects produced by only one engineer.
Being able to read production code from a variety of sources, learn and understand its structure, and go on to adapt and improve on it is a vital part of professional development. Look for and identify these skills in a candidate, and you’ll be more than 60% of the way to finding a strong new team member.
A great deal of time, effort, and costs can be saved by onboarding a developer with an understanding of the tools used in-house. By finding that ideal developer, you not only “hit the ground running” but reduce the likelihood of introducing errors and issues into the project too.
The software industry is, understandably, constantly changing. Technologies, languages, and supporting tools are in a continual state of flux and development. A large part of the job description of a software developer is keeping up with these changes, adapting to new ways of doing things, and picking up new skills as you go.
Ruby alone updates on an annual basis. A prospective new hire must be on top of these changes and capable of keeping up with new features and requirements.
Without a doubt, the single best assessment you can give to a developer is to find out how they code in practice. The ideal starting point is to look at their public contributions before they come in, but these only get you so far.
Repositories available on Github or similar services will tell you how well a candidate codes, but they won’t tell you about how a candidate solves and communicates a particular set of problems.
To do this, there are two ways of assigning problems to candidates.
Assigning a small coding task to be undertaken by candidates is a great way to find out how they respond to particular technical challenges. These should be small, discrete problems that take no more than a couple of hours to complete.
They should have some similarity to the day-to-day challenges of the role you’re hiring for and involve many of the same technologies and, if possible, the same tools.
Such challenges have been shown in the past to be one of the best predictors of real-world job performance.
Much like the work sample test, an Open Source contribution that you both agree to ahead of time is an excellent way for candidates to show their problem-solving skills and for you to see how they respond to real-world development challenges.
Having candidates choose an open-source contribution to make themselves is an ideal way to let them show their skills in their best light and see how they handle themselves under some real-world pressure. Unlike producing code for a toy example or simple demo, an open-source contribution has the potential to make a real impact and stick around for some time to come.
For the candidate, the advantage of this approach is that it can further their knowledge of a technology they’re interested in and boost their future ambitions in the open-source community.
Whichever method you choose, have candidates talk through their code and the solution they’ve developed. Offer up the topic as a point of discussion, ask questions about the work and find out about the challenges they encountered and how they overcame them.
As a real-world exercise, you’ll never get a better chance to see how a candidate performs.
We can help you with selecting the right candidates, just tell us what you need. We can do the work for you and connect you with up to 5 companies within 72h that match your need- all for free.
A question that may be used when testing their fundamentals of the language.
Ruby modules group methods and classes into a single namespace to prevent clashes.
Load and require both are used for loading the available code into the current code. It’s good practice to use after a change, or the URL is entered. Require is used when autoload is used.
You can’t talk at length about Ruby without also coming to the topic of Ruby on Rails. There will be very few developers who have worked extensively with the former and very little with the latter. Included here are some valuable questions that can give you insight into a candidate’s experience with rails and familiarity with the framework.
Rails is a server-side web application framework written in Ruby. Ruby on Rails provides a framework for developing web applications with Ruby.
Showing a candidate knows what values and qualities a framework brings to a project demonstrates a much deeper understanding. A good answer should discuss the advantages of the framework.
Some examples might include:
Any others a candidate may have worked with in the past could be a valid choice.
If you don’t know where to get started familiarizing yourself with available Ruby frameworks, take a look at our guide to Ruby development frameworks in 2021.
Ruby on Rails is a highly mature framework. It’s constantly innovating with new features, but the core framework has been relatively stable for some time.
Rails facilitates rapid MVP development with a large number of ‘gems’ and plugins to support the platform.
An open-ended question that invites further discussion on previous experience and applications previously produced.
DRY stands for Don’t Repeat Yourself. One of the main principles of rails development is generating concise code that doesn’t have to be repeated elsewhere in the codebase.
Take a moment out of your busy day to kick back and relax whilst we log you in to meet the top 7% of software vendors.
Launch your journey to unlock unparalleled transparency to the future of work!
You will find a curated universe of the world’s leading software development vendors that include over 4500 passionate designers and engineers.
Discover and explore in-depth vendor profiles with over 130 data-points, compare vendors side-by-side and engage vendors with a click of a button.
We would love for you to join us ⚡️
Accelerate your search by tellings us what you need. Share more about your requirements in our guided smart brief, and open the brief to our entire vendor community,
Vendors will receive an anonymised copy of your brief with no personally identifiable information to contact you directly. The anonymised copy simply aids the vendors in the application process of the contest and allows Pangea to recommend up to 5 suitable vendors based on a mix of our algorithm (beta) and human experts within 72 working hours.
How does that sound?