Joseph Izaguirre

How I got my first Rails job

I remember watching an interview with Mike Rowe from Dirty Jobs a few years ago. He recounted a day he had spent with the owner of a septic tank cleaning business. Standing knee-deep in other people’s waste, Mike asked the owner how he came to do the job that he does. He responded that he was a guidance counselor before, and knew that he wanted to change jobs. He then said something that always stuck with me:

When it came time to make the change, he just looked around to see where everyone else was going, and just went the other way.

Am I saying Rails is the equivalent of a septic tank? Obviously not! It’s a very powerful, mature framework backed by Ruby, a beautiful programming language. And somehow, almost 20 years after release, it continues to be dynamic and trend-setting, refusing to ossify into legacy software.

I’m saying that when it came time to choose which language and framework to learn, I looked where everyone else was going, and I went the other way.

Rails is no longer a “sexy” framework in 2023. It’s often overlooked in favor of Javascript frameworks like Next, Nuxt, SvelteKit, etc. I’ve been given the impression that the job market in Javascript is more “junior friendly” and that, if I wanted a job, I should learn React. Finding a junior Rails job sounded daunting!

I’m happy to report that the advice of the owner of the septic tank business is sound. As a matter of fact, Hired.com says that Rails is the most in-demand skill for software engineering roles, and this is in 2023!

Being a framework that’s been around for almost 20 years, a lot of the older Rails developers have seen trends come and go, and tend to emphasize boring vanilla web technologies. This is a big plus for employability! Server-side rendered HTML, CSS and Javascript aren’t going to disappear any time soon. Many of the communities forming around new Javascript frameworks are populated with young developers, many of whom go down unproductive paths that older developers have seen fail time and time again. Many of these communities are like the blind leading the blind. Being part of a community with many older developers is not a negative, it’s a plus!

Rails is Lindy; it’s been around for 20 years, so it’ll probably be around for another 20. A great sign for long-term employability!

This post is to reassure those looking for their first developer job in Rails, and to provide some resources to help in the job search. I strongly suggest reading Felipe Vogel’s blog post first, I learned a lot of tips that I used in my own journey.

The Background

I first started programming in high school way back in 2008, starting with C++ and then Java. I then went 8 years without programming, besides a semester of Python in undergrad. I picked it back up in 2020 when I started what would later become GroupUp. I started with Swift and iOS programming, then, when faced with the task of signing a user in, I learned about Rails. I went through Michael Hartl’s Rails Tutorial, built the backend and released the app in January 2023 as a hybrid Turbo Native app. I did all of this in the off time from my day job (not programming related).

The Resources

After three years of app building and launching, I began applying for jobs in mid-January 2023. I created profiles on the following sites:

Ultimately, I found the most luck by scouring job postings on message boards, Discord and Slack.

  1. Ruby on Rails Link Slack - I got the most responses from this one! Highly recommended.
  2. Stimulus Reflex Discord - Many responses here as well.
  3. Hacker News “Who’s Hiring” message boards - This is where I secured my job!
  4. Ruby Subreddit
  5. GoRails Jobs
  6. Techqueria Slack (for Latinos)

The Stats

I began applying in mid-January 2023 and was offered a job at the beginning of March. Over that time, I sent out about 5-6 applications a week. I had three interviews in total. The vast majority of applications, I heard nothing back from. I applied to any Rails job that didn’t say the word “Senior” in it.

The Takeaways

Getting a response is hard. Getting an interview is harder. But in those interviews that I did get, I was able to impress the interviewers with what I learned building GroupUp for 2 years. If you know someone at the company, that may be all you need to get an interview. Unfortunately, I didn’t know anyone at most of the companies that I applied to. The following tips are all geared to getting you to that interview, even if you don’t have a contact at the company.

Be Quick (but don’t hurry). Check each of the resources above daily. If you can be one of the first to apply, this goes a long way towards at least getting eyes on your application. I have personal experience hiring for a school uniforms store. If I created an online job posting on Monday, I would hire mostly from candidates that applied Monday and Tuesday. By Wednesday, I already had a large pool of applicants to choose from, and didn’t even check the dozens of applications coming in 4-5 days later. Don’t rush the application process though! If they ask for a cover letter, spend the time to write a custom letter for each job. Just don’t spend a week writing it.

Message the job poster. The great thing about Slack and Discord is that you can message the person that posted the job. That alone goes a long way towards helping you stand out amongst a sea of applicants. Just a quick message saying that you applied for the job might be enough.

For monthly job postings, apply on the 1st of the month. The Hacker News “Who’s Hiring” page is recreated on the 1st of each month. On this day, there’s a flood of job postings. After about a week it’s already stale and you have to wait for the next month. I’d suggest applying to as much as you can on the very first day when all of the job postings are brand new.

Have others look over your resume. My resume was terrible until I had multiple pairs of eyes on it. If one of your friends might be good at this kind of stuff, have them look over your resume. I highly recommend this Reddit post to start it off, but there’s no subsitute for having feedback from humans.

Build a community. Attend conferences, online meetups, in person meetups, participate in Slacks and Discords, or Twitter or Mastodon. You never know who may offer you a job, and you may end up making a few friends! I strongly recommend First Ruby Friend to find a mentor to walk with you in your journey. Having friends in the community makes the journey a lot less difficult.

At the end of the day, if you’re not strong in the fundamentals, getting to the interview is not going to mean much. You definitely don’t have to spend 2 years learning before applying like I did, but just make sure you know your stuff.

Good luck!

ABOUT ME

I'm Joseph Izaguirre, a web dev focusing on Ruby, Rails, Hotwire, and Turbo Native. If you'd like to get in contact, reach out to me on Twitter at @izaguirrejoe_ or email me at izaguirrejoe@hey.com