Learning Ruby as a way to kickstart an Elixir career

The Elixir job market is fairly competitive and non-senior roles are hard to come by. I’ve been thinking about learning Ruby and RoR since many companies that work with Ruby may eventually switch to Elixir. Problem is that I’d have to force myself to learn it, since I don’t think there’s any real advantage technically to learn Ruby when I’m already familiar with Elixir. Anyone had a similar experience?

I can’t speak to doing this exact route, but I just happened to switch my workplace from Ruby to Elixir because my background was Ruby and our needs heavily skewed in a direction where Elixir’s benefits became painfully obvious.

That said, I still consider that experience rather unique (in terms of my role and our needs and my knowledge level), and it doesn’t strike me as being prudent to learn a language you don’t personally see a use for with the explicit intent of maybe ending up at a company that maybe will switch to Elixir. This is just a way to further cloud an already murky job search process. If you want to learn Ruby to expand how hireable you are based purely on what languages you “know”, then that’s a separate question.

1 Like

I guess you’re right and I’m looking at it the wrong way. I’ve seen a couple of Ruby jobs that I could’ve applied to and I guess that was mainly what I had on my head: How can I get a Ruby job but still work with Elixir? Which is obviously not the best way of looking at things…

My impression is that there are lots of companies (including where I work now) with both – legacy-but-still-maintained Rails apps alongside newer Elixir projects. Some Ruby/Rails knowledge would certainly make you a more appealing candidate, so maybe that’s a “real advantage” financially :grinning:

And even a “pure” Rails shop may offer opportunities to write utilities in the language of your choice (stealth Elixir introduction!).

FWIW, and good luck!

There’s a lot of common knowledge between Phoenix and pretty much any similar framework in other languages; in my experience 80% of the job is figuring out what the user / customer wants independent of the technology, and most of the other 20% is technology-agnostic (like database design).

Build things, and learn from that - the language and toolchain are secondary, especially early on.