Ruby on Rails (RoR) is a powerful and quite popular framework for web development. It’s chosen by many start-up companies to create web applications. Why do they like this framework? Due to its power, you’ll be able to build, deploy and maintain your applications without great effort.
While the technology is becoming more and more popular, to hire a Ruby on Rails programmer can be quite challenging. Not all of them are of high quality and have the required expertise. In this article, we’ll provide you with a few tips on how to find and hire a good developer for your RoR development project.
What skills should a Ruby on Rails developer have?
To hire a Ruby on Rails developer, pay attention to the following:
- are they able to work with a huge amount of information;
- do they think analytically and structurally;
- are they attentive to every detail;
- do they constantly self-educate;
- are they reliable;
- do they know all the aspects of Ruby and Ruby on Rails development;
- do they know how to work with all popular databases including MySQL, Postgre, Redis, MongoDB, PgSQL, and others;
- can they create complex queries;
- do they work with Git or similar systems;
- can they set up and configure the working environment and use the latest development tools;
- are they able to work with various testing frameworks such as integration, functional, and unit testing as well as 3rd-party APIs and mocking services like Capybara, WebMock, MiniTest, RSpec shared_, Cucumber, VCR, database_cleaner, mocks, and others;
- are they familiar with DevOps skills;
- do they know how to build and develop a high-load system, interfaces, and applications, and have practical experience.
Based on the current projects of the company and the expertise of our specialists, we compiled the following up-to-date portrait of a typical Ruby on Rails developer:
- Understands object-oriented programming and Design Patterns. This is the theoretical basis, without which a Ruby developer has a higher chance of making an architectural mistake, and would then have to rewrite some or all of the code.
- Knows not only RoR development but also clear Ruby, without frameworks. In spite of the fact that Ruby on Rails is used in most projects, it is almost never enough to solve all the problems that arise without knowing how to use it with and without frameworks.
- Understands Ruby gems. Most web projects require a heap of trivial tasks, and they’re most easily solved with the help of ready-made Ruby-libraries (for example, gems).
- Writes autotests. The practice of covering the entire code with autotests proved to be so effective that individual testers in our company are only involved in solving non-standard QA-problems.
- Applies modern approaches to development. This refers to Agile methodology, XP practices (TDD, BDD, planning poker), Git flow, Ruby and Rails programming techniques, knowledge of tools, etc.
How to hire a Ruby on Rails programmer?
Does the candidate have a well-formed opinion?
Ask the candidate a question about one of the top topics in programming (for example, why do you prefer Ruby on Rails?). The nature of the answer and explanation will tell you a lot. When people have a strong position regarding certain things — when they are able to talk about something for a long time — this is a good indicator that they are passionate about the topic.
How much do they contribute to open source projects?
Pay attention to their contributions and work in open source. Even if you’re not a programmer, you can still tell if there is a line of code in the right place. The fact that people “put an idea” for something in their work is already a good start. This means that they’re not sitting still. They go into something that they think should be improved: they go into the problem and solve it on their own. This is a very good indicator.
How much does the candidate like to program?
They do not need to spend every free minute doing hacking, but you need to see a certain level of enthusiasm from the candidate.
Do they really do working projects on time?
Learn how they organize their work. The software often fails — find out how they manage it. Ask about the case when they created a working project on time and specify what approaches helped them with this. Or learn about the lessons they learned from overdue projects. It’s very important how they distribute their tasks and how they approach each of the components of the project work.
What did they succeed in? What is their skill?
Randy Nelson of Pixar argues that success in one area is a good sign of future success in other areas. So, when you hire Ruby on Rails developer, look for masters in your business. Is the candidate a wonderful chef? A mountain bike master? Do they have any other outstanding skills? This is a signal that they’ll be extremely effective in the work and on your project. The fact that a person, for example, can easily reach the top of the mountain, profitably distinguishes them from other candidates. Conversely, there is a very small chance that someone will master the work if before that he did not succeed in anything.
How clear can they understand complex things?
The less you are familiar with programming, the more you will rely on this person in the process of work, on their explanation of what is happening from a technical point of view. That’s why hiring good writers is a great idea, no matter what position they are going to take. If programmers know not only how to program well, but also speak a language understandable to non-programmers, your project has a much better chance of success.
Really, to hire Ruby on Rails programmer can be quite a challenging thing especially when your project has the specific needs. However, at Dedicated Developers, we have a team of experienced developers who participated in many huge projects and can provide the highest quality results. Contact us right now and we’ll work to solve your problems.