こんにちは!!
株式会社Nexceed、WEBエンジニアの板垣です。
早いもので私がプログラミンスクールTECH::EXPARTを卒業、Nexceedにジョイン、開発業務に携わりちょうど1年経ちます。
私はTECH::EXPARTで学んでいたときプログラマーは言語の知識だけあれば良いと思い、ひたすらRubyやJavascriptの知識について詰め込んでいました。
しかしNexceedにジョインして開発していくうちに言語以外の問題に直面することが多くなりました。
特に私はAPIとはどういう技術なのかやデータフォーマットの種類といった知識を軽視し、先輩エンジニアの方々が丁寧に説明してくれても話が噛み合わず、結果壁にぶち当たることが多くり悩んで止まってしまうことも多かったです。
今回はこの1年で私がTECH::EXPARTを卒業する前に読んでおけばよかったと感じる
3つの本をご紹介致します。
1.「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか
TECH::EXPARTのおすすめにもあった書籍。
現場に出るとコード以外ではなくもっと深くWeb技術とはなんなのかという部分が必要であると感じ、早くこれを読んでおけばよかったと後悔しました。
現場ではWeb技術に関することは知っている前提で話が進むことが多く、よく理解していないとおいていかれます。
この本はWebの技術の成り立ちから仕組み、技術の種類の概要等が書かれており、現場で話についていくときに非常に参考となりました。
またAPIについてやWebサーバー仕組みは開発時の参考になりますし、サーバーの仕組みについては保守の際の原因切り分けに非常に役立っております。
2.増補改訂版Java言語で学ぶデザインパターン入門
Nexceedエンジニアの皆さんが必ずといっていいほど読んでる書籍。
デザインパターンというのはJavaやRubyなどのオブジェクト指向の言語で使われる設計パターンのことです。
デザインパターンを学ぶことによって再利用がしやすく、メンテナンス性に優れたコードを書くことができます。
現場の開発でもこれらを意識することが多く、自然と指摘されることが非常に多いです。
そのため本書を読むことで知識を入れておくと良いと思います。
尚、本書はJavaで書かれているためRubyしか書いていない人には少し難しいかもしれませんが、よく使われるのは最初の4〜5つなのでこれだけ覚えておくだけも現場で非常に役立ちます。
3.スッキリわかる SQL 入門 ドリル215問付き!
現場に行くと意外にも生のSQL文を使うことが多かったです。
勿論、TECH::EXPARTでも学ぶのですがあまり深くは学習はしませんでした。
現場ではデータベースからのデータ取得、scopeメソッド、処理内容の確認など使用し、その度にもっと深く触れてくれば良かったと感じました。
弊社の社長は”Rubyなどの言語はコードで書いているけどSQL文をわかりやすくしているだけ”というほどでに根幹の部分なのだな感じております。
本書の利点はdokoSQLという実行環境を用意してくれ、自身でデータベースを作る手間などかからずSQL文を実際に打ち込んでどういったデータの動き方を学習することができます。
現場にでるとエンジニアの皆さんがどんな技術が最適なのか、どうすれば処理が早くなるのか、どう書けば他の人も見やすいコードになるのか、などを四六時中考えており、単純にRubyやJavascriptなどの言語知識だけでは不十分だなと常々感じます。
皆さんが紹介した書籍を読んで、少しでも現場で役に立ってくれたら幸いです。