ディープロ
2019年4月4日RubyエンジニアとRailsエンジニアって違うの?
「Rubyエンジニア」と「Railsエンジニア」の違いについて解説。
こちらの記事では「Rubyエンジニア」と「Railsエンジニア」の違いについて解説していきます。
【こんな方におすすめ】
・未経験からのエンジニアを目指している方
・プログラミングスクールを検討している方
・「Ruby」と「Ruby on Rails」の違いを理解したい方
【目次】
1.「Rubyエンジニア」と「Railsエンジニア」の違い
2.「Rubyエンジニア」と「Railsエンジニア」の使い分け
■話し手
ディープロ 代表 野呂 浩良
■聞き手
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エンジニア」って厳密な分け方はないので、所属意識やコミュニティによって使い分けする場合がある。