Igusan Blog

日頃の思考を書き起こします。記載されている内容は個人の見解です。

RailsでWEB開発する事に対してコンプレックスを感じるようになった

僕の持っている技術として唯一仕事上で使えるのがRuby on Railsを用いたWEB API開発技術です。

1年前、エンジニアになることを目指してから、Railsを用いたWEB開発技術を学び続けました。

そして最近では、WEB開発のアルバイトやインターンシップの機会を頂けるようになり、そこでRailsを使った開発をすることが多いです。

そして、夏のエンジニアインターンシップでのたくさんのエンジニア達との出会いがきっかけで、「Ruby on Railsしか使えない」「WEBしか開発できない」という現状に対してコンプレックスを感じるようになりました。いや、というよりは、元より感じていた危機感が膨れ上がってコンプレックスになりました。

まず、インターンシップに行くまでの自分は、新たなシステムを開発しようとするとき、扱ったことのある技術ベースでシステムの構成を考える事が多く、新たな技術に触れようとする姿勢に欠けていました。

おそらく、それは僕の考えるエンジニア像と相反する考え方だと頭の何処かで感じていたのでしょう。

では、僕の考えるエンジニアとは何か、あるべき考え方や心構えはどういうものなのか。

エンジニアとは情報科学に対する知識とクリエィティビティを駆使して付加価値を創りだす人の事。

  1. 現存する科学技術を常にリサーチし続けること
  2. 情報を発信し続けること
  3. 開発にかかる時間に制約があり責任が発生している場合は、「期間内でいかに高い成果がだせるか」に重点を置くこと
  4. 3に反しない限り、最適なシステムの構成を追求すること

問題のRuby on Railsは、Railsの規約に則った開発や周辺のgemの恩恵で複雑なシステムであっても思考を省くことで高速開発を可能にし、かつ安定性やスケーラビリティをある程度保つ事ができる仕事上で圧倒的に強いフレームワークです。

そしてそれこそが僕がコンプレックスを感じながらもRailsと切り離せない理由なのかもしれません。

ミシンを扱える人間が工場で衣服を縫う仕事をする事となんら違いがありません。

Railsでしか開発出来ないというのは、つまりWEBエンジニアなどではなく、WEB職人です。

こうして僕は、職人業を続けていたのでしょう。

エンジニアはもっとアーティストのようなクリエイティビティを持つべきで、そのクリエイティビティこそが、世に必要とされるものを作り出す事ができるのではないでしょうか?

僕のように、ただRailsのみを扱い続けることは、無意識の内にクリエイティビティを下げているのではないでしょうか?

夏に参加したインターンシップを終えてから、技術書を読み散らかしたり、様々な言語に触れるようになりました。そして、新規開発する時もRuby以外の言語を選択することが増えてきました。

これから先、真のエンジニアになるためにもエンジニアのあるべき姿と向き合うことを忘れずに開発していきます。