出来るプログラマの読んでる技術書が知りたい!!
一度は思った方も多いと思います。

メモ
大体多くのエンジニアも推している技術本も多々あるので、エンジニアとしての教科書と思ってすぐに購入することをおすすめします!
この記事でわかることは?
- 技術書ってどうやって選んでるの?
- 現役のWebエンジニアが昔勉強に使っていた良い本が知りたい
この記事を読むと良い技術本の選び方がわかり、第一線で活躍している現役Webエンジニアが昔読んでいた本を知ることが出来ます

目次
- 1 技術書の良い選び方・選ぶ際の注意点
- 2 初心者が必ず買うべき良い技術本:【プログラマのバイブル】リーダブルコード
- 3 初心者が必ず買うべき良い技術本:コーディングを支える技術
- 4 初心者が必ず買うべき良い技術本:プログラムはなぜ動くのか
- 5 クラス設計がレベルアップ出来る技術本:実践ドメイン駆動設計
- 6 クラス設計がレベルアップ出来る技術本:クリーンアーキテクチャ
- 7 データベースのテーブル設計をマスター出来る技術本:楽々ERDレッスン
- 8 ユースケースからデータベースのアンチパターンを学ぶ技術本:失敗から学ぶRDBの正しい歩き方
- 9 Webのインフラ運用の基礎が学べる技術本:24時間/365日サーバ/インフラを支える技術
技術書の良い選び方・選ぶ際の注意点
プログラマにとっての良い技術書とは?
- コードの書き方に詰まったとき
- 設計に困ったとき
- チームのプロジェクトの進め方で困ったとき
このようなときに何度も見返す大事なノウハウの詰まった本です。
ここに注意
技術書の選び方はとっても重要なので必ずここポイント確認しましょう!
本を選ぶ際の重要なポイント
- 後世に廃れない本を選ぶべし
- バージョンに依存する本は買うな、ネットで調べろ!
具体的な内容は以下の記事に詳しく書いてあります。参考にしてください!
初心者が必ず買うべき良い技術本:【プログラマのバイブル】リーダブルコード
ご存知の方も多いと思います。
プログラマのバイブルと言えばこのリーダルブコードです!
おすすめポイント
- プログラマとして大事なきれいなコードを書くためのノウハウが凝縮されていて、仕事をしていて実際になども見返す技術書。
- エンジニアとしてバイブル本なので必ず買うこと!
具体的には以下の記事に大事なポイントを書いています。買う際の参考にしてください!
初心者が必ず買うべき良い技術本:コーディングを支える技術
プログラミングの成り立ちをから学ぶことでプログラミング力がつきます!
言語に共通の知識を身に着けられる!
例えばJavaでもGoでもJSでも出てくるif文や関数、インターフェースなどがどうして出来たのか根本から知ることでエンジニアとしてレベルアップできます。
初心者が必ず買うべき良い技術本:プログラムはなぜ動くのか
ポイント
- プログラマを生業としていきたい人にオススメ!どの言語でも通用するソフトウェア開発の基本が詰まっている良い本です!
- もう第3版が出るほどなので、リーダブルコードと同じくらいのバイブル本です
- プログラムを機械はどうやって認識しているのか
- メモリ管理について
- 関数ってどうやって呼ばれる仕組みなの?
こういったプログラムの根本がわかります。実は多くのエンジニアは上記のようなことはちゃんと理解出来ていないです。
理解出来るとあらゆる言語に対応する力が身につきます。
クラス設計がレベルアップ出来る技術本:実践ドメイン駆動設計
昨今話題になっている設計本!
ドメインを中心に考えたアーキテクチャで、ソフトウェアとして大事な部分に腰を据え設計していく手法。
この本を読んで実践するだけで、ある程度ソフトウェアアーキテクチャが理解出来ます!
ここに注意
只こちらはエンジニア経験2~3年程度経験してから読んだ方が良いです。
理由は駆け出しエンジニアの頃だとなかなか読むのが難しいのと、アーキテクチャは経験しないと良さが理解できないこと多々あるためです。
参考
ちなみにこちらのエリック・エヴァンスのDDDの本もありますが、今回紹介した実践ドメイン駆動設計(iDDD)の本の方が概念だけでなくコードの書き方も解説されていて良いです!

また上記の本はかなり分厚く難しいので、DDDについて学びたい方は
こちらの本がオススメです!
著者は普段いくつかのメディアで設計やDDDブログを書いているnrsさんという方です。
サンプルコードやユースケースがわかりやすく書かれていて読みやすく、こちらは少しエンジニアをやった初心者の方でも読めます。
クラス設計がレベルアップ出来る技術本:クリーンアーキテクチャ
おすすめポイント
- この本も今どきのWebアプリケーションの設計を理解する上で良かった本です!
- オブジェクト指向のSOLIDを正しく理解して、実際に実装する具体的なアーキテクチャについて書かれています
- 何故アーキテクチャが必要なのか?アーキテクチャの本質から学べる本となっています!
初心者にとっては少し難しいですが、少しずつ紐解いて読んでいくと読めると思います。
この一冊を読むとオブジェクト指向(SOLIDなど)の部分も丁寧に解説されているので、基本的なクラス設計の大筋は理解できます。

先程も出しましたがコード設計を覚えて未経験から複数企業に内定をもらっている方がいます。
設計を覚えることは内定への近道です!(詳しくはこちらの記事)
データベースのテーブル設計をマスター出来る技術本:楽々ERDレッスン
おすすめポイント
- テーブル設計の基本から、設計する際の手順を細く解説し、RDBのSQLを考慮した設計や何度も重いSQLに問い合わせているときの対処法など、実務でよくあること解説しています
- またユースケースを題材にテーブル設計について解説しているので、とてもわかり易い本です
Webやモバイルアプリを開発していると必ずでてくるデータベースの存在があります。
データベースのテーブルははサービスを運用していくとなかなか変え辛くなっていくので、サービス立ち上げ時のテーブル設計は非常に大事になってきます。
この本があればテーブル設計のいろはがわかるので、いつもテーブル設計に関して聞かれたときはこの本をオススメしています!
ユースケースからデータベースのアンチパターンを学ぶ技術本:失敗から学ぶRDBの正しい歩き方
おすすめポイント
- RDBでよくある失敗例を実際にありがちなユースケースを想定して、その問題点と解決方法が詳しく解説されています
- 実際に僕も出会ったことのあるユースケースが多々あり、実践向きの良い本です!
Webやモバイルアプリを運用しているとよくある例をユースケースとして、それの問題点、解決方法が解説されています。
実際によくあることなので、仕事をしている時に何度も読み返したりしてました。
実践向きの本なので、少なくともデータベースを触ってテーブル設計やサービスを運用している人向けの本です。
似たような本にSQLアンチパターンという
エンジニア界隈で有名なt_wadaさんという方が翻訳しているこの本もオススメです!
書かれているのは結構昔ですが今でもエンジニアのバイブル本として読まれています。
Webのインフラ運用の基礎が学べる技術本:24時間/365日サーバ/インフラを支える技術
おすすめポイント
障害が起きてもリカバリするフィエルオーバーについて、
冗長構成を取るときの方法のメリットデメリットサーバのチューニングするべきパラメータについて、
データベースやキャッシュサーバに関するインフラの対応方法も載っているので、
インフラに関して学びたいならまず読んだほうが良い本!
僕もまだあまりインフラを触ったことがないときこの本で勉強しました。
今やクラウドがある程度勝手にやってくれている部分もありますが、根本の部分をどうやって解決しているのかを知るのはエンジニアのどの領域でも重要なことです。
例えば冗長構成と言ってもDNSラウンドロビンやロードバランサ、リバースプロキシでの対応などやり方も様々です。
根本を知って、クラウドでもVPSでも応用出来るようにしましょう。