DIVE INTO CODE

2019年4月4日

RubyエンジニアとRailsエンジニアって違うの?

こちらの記事では「Rubyエンジニア」と「Railsエンジニア」の違いについて解説していきます。

【こんな方におすすめ】
・未経験からのエンジニアを目指している方
・プログラミングスクールを検討している方
・「Ruby」と「Ruby on Rails」の違いを理解したい方

【目次】
1.「Rubyエンジニア」と「Railsエンジニア」の違い
2.「Rubyエンジニア」と「Railsエンジニア」の使い分け

■話し手
DIVE INTO CODE 代表 野呂 浩良
■聞き手
StartGate 永田 拓也

「Rubyエンジニア」と「Railsエンジニア」の違い

「RubyエンジニアとRailsエンジニアって何が違うの?」ということについてお話していきましょう。RubyエンジニアとRailsエンジニアって聞いたことありますか?

どちらも聞いたことがあるんですけど、そもそも違うものなんですね。

同じような意味合いなんですが、何が違うのかという点についてお話しますね。結論は「Rubyエンジニア」と「Railsエンジニア」って、「同じもの」でありかつ「違うもの」でもあります。
「Rubyって何だっけ?」「Railsって何だっけ?」という基本的なことをおさらいしていきます。Rubyは、まつもとゆきひろさんが開発したプログラミング言語です。Rubyでは「ゲーム」「Web アプリケーション」「組み込み系」「コンピューターの中だけで動くもの」など、さまざまなものを作ることができます。
RailsとはRuby on Railsの略称ですね。Ruby on Railsはデイヴィッド・ハイネマイヤー・ハンソン(David Heinemeier Hansson)さんが2004年頃にリリースしたRubyで書かれた「Webアプリケーションを作るためのフレームワーク」です。フレームワークとはテンプレートのようなもので、プログラムの集合体です。
Rubyエンジニアは、「Rubyで全般のシステムを作れますよ」っていうエンジニアですね。Railsエンジニアは「Ruby on RailsでWebアプリケーションを作れますよ」っていうエンジニアです。

・Rubyについて詳しく書かれた記事「Rubyでできることいろいろまとめてみた」はこちら
・Ruby on Railsについて詳しく書かれた記事「ルビーオンレイルズがいいよって聞いたけど何?」はこちら

「Rubyエンジニア」と「Railsエンジニア」の使い分け

「Rubyエンジニア」「Railsエンジニア」ってどういう場面で呼ばれるんですか?

Rubyのコミュニティに行くとエンジニア同士でお互いに「Railsエンジニア」と呼ぶ人はいないですね。「Rubyエンジニア」と呼んでいますね。またはRubyist(ルビースト)と呼んだりします。

RubyのコミュニティではRubyistって呼ぶんですね。

「Railsエンジニア」っていうとデイヴィッド・ハイネマイヤー・ハンソン一派という感覚です。Rubyのコミュニティにいる時はみんな遠慮するんでしょうね。デイヴィッド・ハイネマイヤー・ハンソンさんの前では「Railsエンジニア」って呼ぶんでしょうね。そういう文化というか、所属というか、 そういう意識があるかもしれません。

日本では東北弁や関西弁がありますが、みんなが集まると「日本語を話します」みたいな感じなんですかね。

ルーツとかを意識しているかもしれませんね。

そしたらRuby on Railsにすごい思い入れがある人は「Railsエンジニア」と名乗るかもしれないですね。

そうですね。採用の求人の募集要項に「Rubyエンジニア募集」「Railsエンジニア募集」って記載されていたりします。単純に意識していないで書いているケースと意識して書いているケースがあると思います。
意識して「Railsエンジニア募集」と書いているケースでは、流行っているRuby on Railsを使えるんだっていうのがありますね。
「Rubyエンジニア募集」って書くと、「あえてRuby on Railsを書いていないのかな?」「独自の書き方なのかな?」なんて思うかもしれないですね。そういうものを意識してるかもしれないです。これもまた考えすぎかもしれません(笑)

「Rubyエンジニア」という括りがあって、その中に「Railsエンジニア」っていう括りがあるんですね。

そうです。私はRuby on Railsから学んだのですが、今思うと「Railsエンジニア」よりも「Rubyエンジニア」と名乗りたいですね。なぜなら、そちらの方がプログラムの書き方がわかっていそうだからです。Ruby on RailsはRubyで書かれていますし、Rubyの方が広範囲です。基礎がしっかりできているという感じがしますね。

「Rubyエンジニア」と「Railsエンジニア」って厳密な分け方はないけど、そういう感覚で分けられるんですね。本日はありがとうございました!

まとめ

・Rubyエンジニアは「Rubyで全般のものを作ることができる」という広い意味合い。
・Railsエンジニアは「Ruby on RailsでWebアプリケーションを作ることができる」という意味合い。
・「Rubyエンジニア」と「Railsエンジニア」って厳密な分け方はないので、所属意識やコミュニティによって使い分けする場合がある。

DIVE INTO CODEのことをもっと知ってみませんか?