We have a saying on one of our office walls that reads, “A company is only as good as the people it keeps”. Not only do we find that to be true, but we consider it to be of the utmost importance, and that’s why we try hard to have only the best.
With this in mind, we don’t limit ourselves to candidates with professional experience in Ruby when hiring. We really don’t care what programming language you have a background in, be it Java, PHP, .NET, and so on. What matters to us is that you’re talented and a good fit within our company culture.
In order to further assist you in becoming one of the best, we have outlined an onboarding process enabling you to learn everything you need to know before becoming a team member on a client project.
As with all of our processes, we release an initial version and then iterate and mature them over time. The same happens with our current onboarding process: it’s still far from perfect, but we’re confident that it will continue to improve.
Basically, the primary purpose of the onboarding process is to prepare you to work comfortably on one of our projects. There are many aspects to it, but roughly speaking it seeks to ensure the following:
- that you understand and act according to our values
- that you understand agile methodologies and the processes our teams follow
- that you have the technical knowledge that’ll allow you to develop a story from a project backlog
- Ruby, Ruby on Rails
With that goal on the horizon, let’s review our current process and how it seeks to achieve the above.
First steps: welcome to WyeWorks!
Our onboarding begins even before you set foot into the office. The week before you start, we’ll send you an email describing exactly how your first day will be. It’s natural to feel anxiety on your first day, specially driven by the uncertainty over what is going to happen. By doing this, we try to remove as much of that as possible.
On your first day, I’ll be there to receive you and have some breakfast, while we talk about anything but work; just relaxing and getting to know each other better.
After that, we’ll go over everything you might want to know about WyeWorks. We usually cover the history of the company, talk about our vision and core values more in-depth, the kind of clients we want to work for, etc. We wrap up this meeting by going over your next steps for the following couple of months. You’ll also be touching base with our founders and other people of the team so you start getting to know everyone and what they do at the company.
Since we don’t expect you to know the technologies we use beforehand, you’ll be spending your first weeks learning them. Everybody learns in a different way, we know that, so we’ve gathered a list of amazing material to suit any style: there are books, links, screencasts, online courses; you name it. Your goal here is to get the foundations of the tech stack we use and become comfortable with using it. You can practice what you learn either in our internal tools or building an app from scratch. So roll up your sleeves, you’ll get your hands dirty with code.
After that, you’ll spend some more weeks learning how we work. There is no better way to accomplish that than to witness it, learning by example and doing it yourself. You’ll join your teammates on pair programming, code real user stories, get your code reviewed by others, participate in a team’s planning or retrospective, etc… We expect you to be working side by side with your teammates, but without clients demanding things from you yet. Only when you feel comfortable with that, and the rest of the team members agree that you’re ready, we will negotiate with our clients your addition to the team. The purpose behind this is twofold: for you to ramp up in a controlled environment until you feel comfortable with the workflow, and for us to ensure the quality of the service we deliver to our clients.
There will be a couple of people that will walk with you throughout the entire process and answer any questions you may have during all these weeks. We’ll hold daily meetings to see how you’re going and how we can better guide you until it’s no longer necessary.
Final step: reflecting on the process
After this 2-3 months of onboarding, the journey ends with a retrospective meeting where you and all others involved provide feedback on how we can continue to improve the process. That way, we can better prepare the next person and make them feel even more comfortable.
Professional and personal development is one of the most important aspects that show that you care about the people on your team, and for someone new it all begins with their onboarding. That’s why we put a great deal of effort into making it what it is, and why we invest all that time making sure everyone achieves their best.
If you haven’t already, you can read our piece on continuous learning, one of the things we do to allow people continuously improve themselves.