新人プログラマ、SEにおすすめしたいIT書籍

こんにちは!

春からSI系の企業に入社した新卒社員の方々はそろそろ研修も終わって、GW明けからいよいよ仕事を始める時期ですかね?

みっちり3か月くらい研修するところ。
社内の部署を回ってOJTでゆっくり育ててもらえるところ。
いきなりSESで現場に出向させられるところ(←私はこれだったorz)。
色々あると思います。

悲しいかなこの業界、プロジェクトや案件によって使うツールやプログラミング言語、エンドユーザーの業種・業界が違うことが当たり前なので、研修で習ってないことをやることがほとんどといっていいです。

研修で学んでないことは自分で学習するしかありません。

勉強の仕方は、Webサイトを使ったり、勉強会に参加したりなど色々ありますが、私は王道の書籍を勧めます。

Webの情報は断片的なので、ある程度前提知識がないとちゃんと理解できません。
書籍の情報は体系的に整理されており、ベースを固めながら学んでいけるためです。

ただ、良書を見極めるのは難しいです。
私は探すときはよくブログのレビューを参考にして買いますね。

というわけでいつもお世話になっている分、私もSIer時代、新人のとき助けられた本、新人のうちに読んでおけばよかった本を紹介しようと思います。

コンピューターの基礎知識

最初はコンピュータやプログラムそのものについての基礎知識を固めることが大事だと思っています。
特定の言語やミドルウェアに特化した本ではなく、コンピュータについての本を読みましょう。
どんなプログラムも結局はコンピューターの上で動くのですから。

コンピュータはなぜ動くのか~知っておきたいハードウエア&ソフトウエアの基礎知識~

プログラムはなぜ動くのか 第2版 知っておきたいプログラムの基礎知識

この2冊は是非最初に読んで頂きたい本です。
コンピュータの動く原理、プログラムの動作する仕組みを初学者にもわかりやすく伝えてくれます。
ネットワーク、データベースの話も出てくるので最初の基礎固めにはもってこいの良書です。
基本情報技術者試験を受ける人なんかも試験範囲が被るので読んでおいて損はないです。

この日経BP社が出している「~はなぜ~」系シリーズはどれも分かりやすいのでお勧めです。
オブジェクト指向プログラミング言語を使うなら是非こちらも読んでみてください。

オブジェクト指向でなぜつくるのか 第2版

データベース・SQL

どんな業務系システムでもRDB(リレーショナルデータベース)を扱わないことはほぼ皆無といってよいです。

今時のプログラミング言語が分からないシニアSEでもSQLだけは矍鑠と書けるものです。

色々なデータベース製品がありますが、SQLの書き方とデータベース設計のノウハウはある程度パターン化できます。
設計、開発、保守・運用あらゆるシーンでSQLは活躍するので、基礎からしっかり押さえましょう。

SQL 第2版 ゼロからはじめるデータベース操作 (プログラミング学習シリーズ)

この本はミックさんという有名なデータベースエンジニアの方が書いているSQLの初学者向けの本になります。
PostgreSQLをインストールするところから書いてあるので、初学者でもSQLを実行できる環境を用意できます。

↓著者サイト
Mick’s Page

ミックさんは、SQLやデータベース設計についての本を何冊も出しており、どれもとても分かりやすくておすすめです!

プログラミング

プログラミング言語ごとのおすすめの書籍は勿論あるのですが、特定のプログラミング言語にとらわれない良書を紹介します。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

本書は「美しく、読みやすいソースコードとはどういったものか?」とがテーマで、ソースの例を示しながら分かりやすく説明してくれます。

綺麗なコードというのはプログラマによって一家言あるとは思いますが、誰にとっても見やすいパターンというのは実際あって(例えばインデントを綺麗に揃えるとか)、そいういったパターンを抑えることができます。

綺麗なコードは書いた後の自分の身を助けます。
コードは書くことより読まれることの方が圧倒的に多いのですから。

設計・業務知識

SIerで働くSE、プログラマにとって業務知識(いわゆるエンドユーザーの仕事や業界に対する知識)はとても重要です。
業務知識が分かると、エンドユーザーと対等に話せるようになります。
また、仕様理解の助けにもなりますし、仕様の穴を発見して先読みして対処することができるようになります。

システムは作ったら価値があるのではなくて実際に使われなければ価値がありません。
SIerの売上が納品基準ではなく検収基準なのもそのためです。

業種によって勉強することはまちまちですが、比較的どの業種でも知識として使える“商売”について学ぶのが私はとっかかりとしてよいと思います。

グラス片手にデータベース設計 販売管理システム編 第2版 (DB Magazine Selection)


グラス片手にデータベース設計~生産管理システム編 (DB Magazine Selection)


グラス片手にデータベース設計 ~会計システム編 (DB Magazine Selection)

販売管理システム、生産管理システム、会計システムそれぞれをテーマに、業務を追いかけながらそれをデータベース設計に落としていく形で説明してくれるのが本書です。

商売において、モノを売り買いすること(販売・購買)、モノを作ること(生産)、カネを管理すること(会計)は切っても切り離せません。
エンドユーザーの業務支援システム開発がSEの主戦場です。
どのような業種のシステムを担当してもこれらの知識は役に立つことでしょう。

本書は株式会社システムインテグレータの代表取締役社長 梅田 弘之さんが書いており、SI業界で何年も生き残ってきた実績に裏づけされた、システム設計の現場の生きた知識を学ぶことができますよ。

IT業界

IT業界(特にSI業界)の構造について新人のうちに(というか本当は就職する前に)知っておくことが大事だと思っています。


SIerの教科書

IT黎明期からのSIerの歴史を説明しながら、現在のSIerビジネスの課題とビジネスモデルの問題点を指摘し、クラウド技術を積極的に利用することを提言しているのが本書です。

なかなか新入社員にSIerの成り立ちやビジネスモデルについて説明してくれるSI企業ってないと思います(←なんでだろう)。

本書の前半部分はSIerの歩んできた歴史を学ぶのにうってつけなので是非読んでみて下さい。

本当は中堅以上のSEやSI経営者に読んでほしい本でもあります…。

購入するなら絶対に電子書籍がおすすめ

最後に、
私はほとんど、書籍を紙で買いません。
AmazonのKindle本を買って電子書籍端末やPC、スマホのアプリでいつでもどこでも読めるようにしています。

特にIT書籍はPCを使いながら読みたいものです。
家のPCがデュアルモニタなら片方で表示しながら読むことができますし、PCの横にKindle端末やタブレットを置いてもいいです。

携帯性と学習効率が良くなるので技術書は絶対にKindle本で買うことおすすめします!
紙の本よりちょっと割安ですしね!
Kindle Paperwhite 電子書籍リーダー 防水機能搭載 Wi-Fi 8GB

Kindle for PC (Windows) [ダウンロード]

最後に

以上。
まだまだ紹介したい本はありますがそれはまたの機会にします。

私はもうSIerを離れてしまいましたが、SEはとても面白い仕事だと今でも思っています。

早く効率よく保守性の高いコードを書き、
無駄のない設計をし、
エンドユーザーと要件・仕様について丁々発止のやり取りをし、
無事、顧客に喜んでもらえるシステムを納品できる。

そんなSEになるにはたゆまぬ努力が必要ですが、自己実現ができる仕事だと思います。

新卒SIer社員に限らず、この投稿を読んだ人の助けになれば幸いです。
それでは。