2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【読書感想】図解入門TCP/IP 第2版

Last updated at Posted at 2025-08-06

書籍タイトル:図解入門TCP/IP 第2版

読む時間:12:20

はじめに

これまでWeb系エンジニアとして、フロントエンド・バックエンド問わず、さまざまな開発に携わってきました。
その中でよくお客様から聞かれるのが、

「なんでこの画面、表示が遅いんですか?」
「なんでデータの取得にこんなに時間がかかるんですか?」

という質問です。

実際には、実装を見直すことで改善できるケースもあれば、そうでないケースもあります。
特に「そうでないケース」の多くは、通信周りに原因があることが多いと感じています。

これまで私は、こういった質問を受けた際には、MDNなどのリファレンスをその場で調べながら、なんとなく回答してきました。
ただ、毎回そうやって調べるたびに「通信の仕組みを一通り、きちんと自分の中で理解しておきたい」という思いが強くなっていきました。

そんな経緯もあり、今回、本書を手に取ることにしました。

📚 本書の詳細情報

印象に残ったポイント

1. ソフトウェアエンジニアでも、通信機器(ハードウェア)を含め、L1からL7を理解したほうがよい

これは書籍の内容というより、実際に私が読んで感じたことです。

業務中に物理的なハードウェアを触る機会はあまりなくても、L3(ネットワーク層)やL4(トランスポート層)、L7(アプリケーション層)といった言葉には、API設計やインフラ構成の中でよく出会います。
特に、AWSの Load Balancer や API Gateway を扱う際など、「L4って結局どこの話?」「このエラーってL7のどの部分の影響?」といった疑問に直面することもあります。

こういった場面で、通信レイヤーに関する基本的な知識が曖昧なままだと、結合試験時のエラーシューティングや設計の判断が難しくなります。
だからこそ、「一度だけでいいから、通信の全体的な仕組みを俯瞰して理解しておくこと」、そして「各通信レイヤーの役割を自分の中でざっくりでも整理しておくこと」が、将来的にかなり役立つと感じました。

2. 少なくとも、TCP・IP・HTTPの知識が必須

こうした知識は、私が新卒でエンジニアになったときの研修(前職)では、まったくカバーされていませんでした。
周囲のエンジニアに聞いてみても、「プログラミング言語だけ教えて、あとは自分で頑張ってね」というスタイルの会社は、決して珍しくないように感じています。

でも私は、TCP / IP や HTTP をしっかり理解していないと、Webエンジニア(フロントエンド・バックエンド・インフラ問わず)を名乗るのは難しい、と強く思っています。
このあたりの基礎が曖昧だと、技術的な会話が噛み合いにくかったり、設計・実装・テストの進行がバラバラになったり、一人で問題を解決できないケースが増えてしまうと思います。

本書では、通信レイヤーごとのプロトコルについて、かなり細かい説明があり、
「ここは重要」「ここは一旦読み飛ばしてOK」といった作者自身の補足も丁寧に入っているため、非常にバランスの良いテキストだと感じました。

まとめ・感想

これまで約5年間、Web業界で仕事をしてきて感じたのは、「エンジニア」と「作業員」の価値の差は、最終的に知識の深さや姿勢によって分かれるということです。

私の考える「エンジニア」とは、
日々の業務の中で自ら学び、公式ドキュメントや技術書を丁寧に読み込み、それらを自分の言葉で理解し直す力を持っている人。
そして、システムの全体像を設計できたり、他の人にも自分の言葉で説明・共有できたりする、そういう姿勢とスキルを持った人です。

一方で、「設計書をただ読み、なぜそう設計されているのかを考えず、HTTPの仕組みも理解せずに、先輩の書いたfetch文をそのままコピペして実装する」といったスタンスは、
正直言って、下流の“作業員”的な立ち位置になってしまうのではないかと感じています。

前職では、そうした後者のような姿勢の先輩が多く、技術的な会話や成長の機会がなかなか得られず、限界を感じて転職を決意しました。
いまの会社では、技術への探求心がある方々と働けており、自分ももっと学んで成長したいという思いが強くなっています。

そして現在、AIの急速な進化によって、単なる作業者のような業務は、AIによって一瞬で代替されてしまう時代に入りつつあります。
だからこそエンジニアは、より深い技術知識を内製化し、自分の武器として持つ必要がある。
AIにコードを書かせるのではなく、そのコードをレビューし、正しく導ける立場になることが求められていると感じます。

このような危機感から、今後はさらに、通信やプロトコル、インフラまわりを含めた基礎技術のテキストを丁寧に読み、
知識を「調べて分かった」ではなく「自分の中に蓄積された本物の理解」へと歩んでいきたいと思っています。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?