エンジニア一年目に読んだ本(上期)
転職して半年が経った。
転職して半年経ったので Facebook に近況報告を書いた。まだまだできることは少ないけど、半年という期間を考えたらまあ良しとしよう。
— Gengo Kikuchi | Drupal 開発者 (@gengo_k) 2022年8月1日
今回の転職と同時に「エンジニア」という職種に足を踏み入れた。社歴=エンジニア歴ということになる。
一年目の振り返りとして、入社して1年経った頃に読んだ本をまとめようと思っていた。が、せっかくなので比較できるよう一度ここで区切っておく。
読んだ本
期間は 2022年2月 〜 2022年7月。
ちょうど今読んでいる『理系読書――読書効率を最大化する超合理化サイクル』という本に「読了の定義は本から有益な情報を抽出できた時」と記載があった。
ここでも、はじめから最後まで完全に読んだ本だけでなく、役に立ったと思えるものは含めるようにした。 逆に業務に直接的に関係ない一般的なビジネス書は含めていない。
1冊ですべて身につくHTML & CSSとWebデザイン入門講座
HTML と CSS はある程度ドットインストールで勉強して、この本を手に取った。MDN も充実しているが、やはりとりあえず一冊は本を手に取るべきだろうと。
私の場合 CMS 専門のため、普通に HTML / CSS / JS で Webページを構築した経験が無い。 この点をある程度まとまった知識で解消できればと思ったが、やや基本的なレベルに留まり、これだけで現場で使えるという類のものでは無い。
とはいえ一冊やれば精神的に次に進みやすくなるので、「まず一冊」戦法はおすすめである。 よくある「入門編症候群」に陥らなくて済む。
WEB+DB PRESS Vol.109
CDN についてまとまった知識を提供してくれる貴重な書。調べてみると分かるが、少し具体的なトピックになる専門書が存在しないケースは多い。
『WEB+DB PRESS』は、そういったトピックの取っ掛かりとして良い。都市圏ならだいたい図書館で見つかるだろう。
これで CDN の超基本を押さえ、Fastly の管理画面が怖くなくなった。あくまで基本レベルなので、突き詰めたければネットワーク周りをちゃんと理解しなきゃなーといったところ。
Linux 基礎から順にやっていけば、もう少し分かるようになってくるのかな?
「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか
遥か昔にチラ見した本を再度手に取った。
基本的な MVCモデル とか、Web アプリケーションの仕組みを理解できる。JSP あたりをベースに書かれており、現在の Web ではあまり目にしないコードがメインになっている点は注意。
後半の方はやや難しくなってきて断念。また必要に応じて参照したい。
独習Git
なんといってもこれが一番大きな収穫かな。Git が普通に使えるようになった。
Git の概念はなんとなく知っていたが、まったく使ったことがなかった。
これもドットインストールでざっくり勉強して、各種 Webチュートリアル を見てみたりもしたけど、結局一冊書籍を通すのが最も良かった。
はじめは rebase に苦労したが、今はそんなに間違えることなくできるようになった。reset コマンドはすぐ忘れてしまうので、最近は VSCode の GUI で取り消しちゃうことが多いのは内緒。
Webディレクションの新・標準ルール 改訂第2版 現場の効率をアップする最新ワークフローとマネジメント
広告代理店のディレクターは、Webディレクター というよりはプロデューサーやプロジェクトマネージャー的な要素が強い。
そんなわけもあり、Web制作 のディレクターに必要なスキルセットやマインドを改めて確認。
ある程度基本的な進行管理やコミュニケーションができるようになってきたら、この本を読むと少しレベル上げできると思う。続編で開発に特化した書籍も出ているので、そちらも参照したい。
チケット駆動開発
あらゆる実装に対して、まずチケットを書いてからはじめましょうという内容。何とか駆動開発の中でもややマイナーだが、すぐに活かせるかなと思い読んでみた。
基本的な内容はほんとにこれだけなのだが、Redmine を駆使してリポジトリとチケットを同期させる方法なども書かれている。
この辺はややロマンかな。現代はツールの進化もすこぶる速いので、ガチガチに開発フローを作り込むのにはやや反対である。一つのツールが使えなくなると回らない開発現場はよろしくない。
ただ、「いきなり実装に入るな」はまあ正論だと思うので、これは意識したいところ。
結局レビューする際にもそのコードが書かれた経緯が無いとレビューしづらいし、ざっとでも書き出しておかないとそもそもの作り方からずれが生じてやり直しになるケースが多いな〜というのが最近の感覚。
カンバン仕事術
『チケット駆動開発』からの流れ。カンバンって当たり前に使ってるじゃないですか。でも活かすためには原理原則があるんだよということを教えてくれる。
カンバンでいう列はプロセスになっていて、ここにこだわることは非常に大事。業務毎に違うプロセスになるはずで、このプロセス設計が雑だとあまり上手くいかない。
To Do / Doing / Done の3つでも良いけど、実際にはもっと細かいステップがあるはずで、それを可視化してはじめてカンバンの意味が出てくる。
とりあえずはじめてみて、ボトムアップ的にプロセス改善ができるところもカンバンの強みである。
あとは「WIP の制限」の概念が非常に重要で、要は取っかかった仕事を終わらせることを優先して、あれこれ手を出してがんじがらめになるなということ。
これは普段仕事をする上でもそのまま活きてくる。アイドルタイムが出ない程度には並行して着手して良いが、自分持ちのタスクが積み上がってしまう時は気を付けよう。
WIP の制限を超えているアラートなので、すぐ終わりそうなタスクからどんどん片付けるべし。
情報処理教科書 出るとこだけ! 情報セキュリティマネジメント テキスト&問題集 2022年版
新人エンジニアといえば IPA でしょということで、情セキを取得した。
これは完全に逃げ。基本情報は結構勉強範囲多くてしんどいから、先に下位資格を取って少しでも楽に取れるような準備をしようと。
結果的にそんなに有効な資格では無いが、セキュリティの基礎が身に付いたから良かったかな。
人生長いので、毎年一個ずつくらい進めればそれで良いんじゃね?くらいの緩い気持ちで取り組んでいる。
次は基本情報。来年から受験形式が変わり、どうも簡単になりそうな予感がするので来年以降に受けようかなーと思っている。
基本情報の教科書で勉強するのも良いけど、各トピックそれぞれ別の方法でも並行して勉強を進めていくと、試験だけじゃなく活きた知識として身に付く感じがするよ。
WEB+DB PRESS Vol.123
最近話題の HTTP/3 についてお勉強。Web 上にドキュメントはたくさんあるけど、マイペースに読める書籍の方がやっぱり好きかな。
ついでに WAF も特集があって読めた。
振り返り
日々の学習に書籍を積極的に取り入れだしたのが遅かったので、一年目としては読書量はやや少ない印象。
この反省を活かし、最近は月に2-3冊くらいは購入して読み進めています。Kindle より紙。個人差あるけど、これも経験則で学んだこと。
残り半年、大きな目標はアクイア認定デベロッパー試験に合格すること。なんか正式に「デベロッパー」と名乗りやすくなるじゃないですか。
もちろん試験は通過点で、実際に実装できるかどうかが焦点であることは間違いない。
その先はまだよく分かっていない。とりあえずフロントエンド・バックエンド双方一人前レベルを目指しつつ、今は「用意されたものを使う」という感じのインフラや開発ツール周りを自分でも触れるようになっていきたいな〜と思っている。
効率化とか組織開発とか考える PM 的職種とも、相性良いのかなーと。
エンジニア一年生、半年ではまだ何とも言えないけど、好み的にはフロントエンド < バックエンド。両方一人前にできるようになった前提で、インフラできるようになりたいな〜というのが所感。
— Gengo Kikuchi | Drupal 開発者 (@gengo_k) 2022年8月1日
ミドルウェアとかクラウドとかサーバー監視とかCIとか。分からんだけにちゃんと分かりたい。
そんな感じ。