Can you provide some perspective on interviewing for a Rails developer job today? I have not interviewed for a job since before Obama was in office. I am frequently asked for my advice on how to land a job. I had a friend reach out with the following message. >> Do you have any advice you can give, or perspective on what you would look for in hiring a mid level RoR dev position? We certainly hire people like my friend but with don’t currently have any positions open and I don’t think our interview matches what many people expect. I want to help them be successful. What advice would you share with this person?
I would heavily second what Dave Ott previously said. Since that has been most of my experience as well. One thing I would add is, get comfortable building an app that requires usage of hotwire and stimulus, live, on the spot with other people. Take homes are convenient, but also be prepared to go into another round to build some sort of extension of what you already did. Specially lately, employers seem to rely on a continuation of the take home assessment with a small pairing session to confirm the skill level. That confidence to perform decently or being able to discuss your decisions thoroughly during a live follow-up session is going to be the best bet for someone looking to land a mid-level RoR job.
I’d ask them to design a background job queue with fast (email) medium (background processing) and slow(reports) queues and ask them to describe 1.prioritization, 2. Testing, 3. Correct usage.
I’ve learned that resumes, leetcode, and applying for jobs online are tragically a waste of time. Go to conferences and local meetups and network and those relationships will pay dividends. Technically speaking most technical interviews for SEII are pretty foundational- so if they’ve made more than a few rails apps, and worked on a professional team I wouldn’t sweat it too much. The folks hiring SEII’s don’t expect them to architect their applications but to be eager, curious and driven.
Just dont ask generic questions from the recruiter book like "what is solid" or "what is the method for iteration for all records from query in batches" like many people do. Go with discussion about real problems, approaches and patterns/tools. Let people intervied speak, tell you what they are passionate about in their job and what they hate. Ask them about what you would find interesting in what you hear. That not only will tell you more about their knowledge and experiencr but also if they are good culture fit into your team. You will also get some info how stron-opinionated they are and if they can change their mind or approach if project/team needs that.
It's an interesting time for me to answer this question when I'm actively interviewing for Rails positions. My 2 cents of what my past interview experiences have taught me: - Think about your 'why' when applying to a company. Your why needs to be genuine & personal. How do you genuinely relate with their product, mission, vision? - Cover letters are a good place to talk about this - Be good with basics of Ruby, Rails - Practice Pairing for pair programming style interviews - Do mock interviews - Prepare a strategy in mind of how you'd like to go about a pairing interview - Prepare for what you'd do in the face of uncertainty in a pairing interview - Make some adjustments to interview prep strategy based on the individual company interview process & their JD - Prepare for behavioral interviews & culture interviews - Ask genuine questions related to the opportunity, the company, the culture, their values and more - Practice coding basic Ruby, Rails apps - Prepare with clarity about the work you've done so far if asked related questions of contributions to past work projects. - Talk in terms of the impact you've had in those roles - Highlight any places where you went above & beyond one's role - never ever give up
While I've also been more on the hiring end than the interviewing end for a while now...to echo Mohnish Jadwani's first point below, especially for mid-level once you meet the ability threshold the team is looking for, showing enthusiasm for the product or company, or better yet, actually being a user can really tip the scales in your favor. It can be surprising how low the bar actually is for this and how little time you actually need to devote to really stand out from other similarly-skilled candidates.
Watch this presentation https://www.youtube.com/watch?v=KLHYZT2I28k
Jim another one I really love is asking them to go on GitHub and show me a gem they like and walk through the gem and explain how it works from reading the code.
Engineering Leader - Ruby on Rails, Javascript/Typescript, React
6moTiger, I have interviewed for dozens of roles working with Rails from senior engineer to director level positions over the last year or so. I can’t say that I have been able to find a ton in the way of commonalities among these experiences. A fair amount of them have assigned take home assessments that have required 8 - 30+ hours. These were mostly “simple” apps that had a series of requirements to work through. Those were like a fair amount of crud and Hotwire. Some that pushed a little more into system design. Second round in those cases required explaining what you did and wandered into asking more advanced questions about what you might do to scale your solution. There were more than a few that used Leet Code sites like Hackerrank for a first round assessment. Some of the positions that were for senior+, staff, and management roles were pretty heavily geared towards performance and scaling. I’ve leaned a lot of Nate Berkopec’s book to study for those. The easier ones were just low level questions about how to do basic things with Ruby and Rails and a lot of questions about my own background, what kind of challenges I’ve solved with examples and then questions about my experience working with different kinds of teams.