DIVE INTO CODE

2019年04月25日

JavaエンジニアからRailsエンジニアに転向するための3鉄則

Aws4 request&x amz signedheaders=host&x amz signature=d4ced574d0caf51efff9e84c9ca1e100753bf8464017a4efe8fda94b685ab0a6

【こんな方におすすめ】
・未経験からのエンジニアを目指している方
・プログラミングスクールを検討している方
・Javaエンジニア、Railsエンジニアについて詳しく知りたい方

【目次】
1.鉄則その1 趣味から始める
2.鉄則その2 業務ツールを作る
3.鉄則その3 定期的にコミュニティに参加する

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

鉄則その1 趣味から始める

JavaエンジニアからRailsエンジニアに転向するための3鉄則をお話していきます。
その3鉄則とは「趣味から始める」「業務ツールを作る」「定期的にコミュニティに参加する」です。この3鉄則を守っていれば、知らないうちにRailsエンジニアになっているというのが私の意見です。これらの背景や状況について話していきます。

Javaエンジニアは業務でJavaを用いてプログラムを書いています。Javaは厳密性が高いので、自然と厳密なプログラムを書く素養が身に付いているわけですね。そんな素養の身に付いたJavaエンジニアがRubyやRuby on Railsを始めると、気負って始めるというよりは「こんなに楽に書けるんだ!」と感じられると思います。そしてネット上にある文献などを見てちゃちゃっとプログラムを作ってしまう。RubyはJavaと比較すると開発する時のツール(道具)を揃えなくても簡単に作ることができるんですね。
JavaのツールにはEclipse(エクリプス)などがあります。Javaではそういったツールをインストールして画面上でここはファイルを見るところ、ここは実行するところ、ここは環境を見るところという具合に操作しないと確認できないんですよ。RubyやRuby on Railsだと一気に打ち込んで、そこだけで編集できるくらい非常にシンプルなんです。

JavaエンジニアがRuby on Railsを触ったら感動するんですかね?

「開発環境はこれでいいの?」っていう感動があると思いますね。黒い画面のターミナルで操作するんですよね。それがどんどん発展していくとVim(ヴィム)という黒い画面の中でファイルを編集するツールに到達していくんですね。Vimは黒い画面でファイルを編集するんですね。Vimは何か別途でWord(ワード)やAtom(アトム)などのテキストファイルの編集ツールをインストールしなくても全部ターミナルだけで行なうことができます。そういう方たちのことをVimmer(ヴィマー)と呼んだりします。Vimmerはかっこいいです。エンジニアからリスペクトされます。

Vimmerですか!なんかカッコいいですね。

JavaエンジニアはRubyを始める際に多くの文献があるので、気負わずに楽しんで始めてみるのが良いと思いますね。Rubyは直感的に書けますから。

カジュアルさがRubyやRuby on Railsの良さの1つですもんね。

鉄則その2 業務ツールを作る

鉄則の2つ目は「業務ツールを作る」ですね。社内で手がかかるけどあると便利な業務ツールをRubyやRuby on Railsで作ったりすると感動されたりするんですよ。

業務ツールが作れるんですね。

RubyやRuby on Railsだとちゃちゃっとできちゃったりするので、その業務ツールを見せて社内で人気者になることができると思うんですよね。社内のJavaエンジニアから「どうやってやるの?」と聞かれたりするかもしれません。それは面白いと思いますよ。

社内的評価も上がりそうですね!

Javaエンジニアを抱えている会社さんだと大規模で重厚なシステムを作るためにJavaを使っていたりするので、商売としてベンチャー企業向けのような事はやっていないと思うんですよね。そうするとRubyの案件はないんですよ。社内で仕事にするっていうのは無理だったりするんですよね。

なるほど、そうなんですね。

評価が上がるということについてもそんなに関係なかったりします。やったものを見せる相手がいるっていうのが大事なんですよ。Javaのエンジニアだからこそプログラムがわかる。だからこそ見て喜んでもらったりするわけです。

それは1つの喜びですよね。

反応してくれる仲間がいるところでやるというのがいいかなと思います。

趣味で作ってみることで、エンジニア同士の繋がりができたりするんですね。

鉄則その3 定期的にコミュニティに参加する

鉄則の3つ目は「定期的にコミュニティに参加する」ですね。コミュニティって何かと言うと、パターンとしては3つあります。1つ目はRubyの知見を共有するコミュニティがあるんですよ。各地の有志たちで行われています。誰かが認めているわけではないんですが、開発している人たちが任意でやっています。活動が大きくなったりするとRubyを開発した「まつもと ゆきひろ」さんがたまに個人的に来たりします。
2つ目は何か有料のセミナーとか単発の講座とかそういうのを運営していたりする人がいるので、そういうところに所属することですね。今でいうサロン的なものです。
3つ目がDIVE INTO CODEのようなスクールのコミュニティですね。これも一つのコミュニティの形態だと思います。そういうところに所属するというのは、ある意味学ぶ上で最適解を得やすいんです。

同じような悩みを抱えている受講生さんが多そうですね。

そうなんですよ。だからスクールによって特徴が違うと思うんですけど、 お互いに接点を持てるスクールなら、繋がる機会があれば是非行った方がいいですね。個別に学んでいると、そういった恩恵を受けられないかもしれないですね。教材はあるけど、教材が最適化されているかどうかは分からない。一緒に学ぶ仲間がいないと何が正しいのかもわからない。その辺はよく考えた方がいいと思いますね。

コミュニティというのはすごく大事だなと思います。最初は繋がりができるかどうか不安に思う方も多くいると思うんですけど、その点を工夫されていたりするんですか?

DIVE INTO CODEで言うと同期生で一緒にワークをしたり、振り返りをする時間や仕組みを作っています。それは会社とかと同じで話す機会がなかったら、だんだんと仕事の生産性が下がっていくことと似ていますね。一緒にワークや振り返りをしたり、授業を一緒に受けたり、ディスカッションしたり横の繋がりができるような仕組みを作っています。あとはイベントを開催して外部の人に来ていただいたり、 企業さんをお呼びしたりして定期的に行なっています。そういう繋がりから「こうやって学ぶと良いんだね」「ここまでやると良いんだよね」「ここはいらないのかもしれないな」など気づきがあったりします。それが大事なことですよね。

ネットがすごい普及しましたけど、 オフラインの繋がりって大事ですよね。

その背景で感じることは、インターネット社会と言われて久しく20年くらい経っていますが、ネット上に転がっている情報って意外とみんな見てるんですよね。ネット上に転がっていない情報にこそ差が出るんです。プログラミング言語で言うとネット上に公式のサイトがありますし、調べればあらゆる情報を見ることができるんですよね。理解するのが難しかったりするんですが、情報を書き集めれば自分でできなくもないです。だとすると本当に自分に価値があるものは、ネット上の情報だけじゃなく、文章にするのが難しい人の経験や意見とか成功事例とか失敗事例などに価値が宿ると思うんですよね。それを得られるのがコミュニティということですかね。
JavaエンジニアからRailsエンジニアに転向するための3鉄則は、「趣味から始める」「業務ツールを作る」「定期的にコミュニティに参加する」です。3鉄則を行なっていれば、知らない間に結果としてRailsエンジニアなっていますね。

まとめ

JavaエンジニアからRailsエンジニアに転向するための3鉄則
・鉄則の1つ目は「趣味から始める」。Javaエンジニアはプログラムを書く素養ができているため、気負わず楽しみながら始めてみると良い。
・鉄則の2つ目は「業務ツールを作る」。社内にあると便利な業務ツールをRubyやRuby on Railsで作って、社内のエンジニアとその知見を共有すると良い。
・鉄則の3つ目は「定期的にコミュニティに参加する」。コミュニティに属することでネットで得られない情報を得ることができる。

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