転職したらスマレジだった件

スマレジのエンジニアやまてのテックブログです。マジレス大歓迎です。

ひと月の振り返り - 2022年10月

こんにちは!

スマレジ・テックファームのWebエンジニアやまてと申します。

はじめに

Web関連の自習について、学習効率を高めることを目的として、月に1記事、振り返りのブログ記事を投稿しています。(2022.5〜)

ryamate.hatenablog.com

半期目標 Goal

半期目標 Goal

自己成長についての半期(2022/05/01~2022/10/31)の目標ですが、以下の内容にしています。

1.DB設計の習得

2.PHPオブジェクト指向の習得

3.Webアプリケーションのセキュリティの習得


「習得」のレベル感としては実務で求められる業務に食らいつけるくらいのイメージです。

読んでいただく方にとっては参考になるかはわかりませんが、どんなことを考えながら学習を進めているかを書き出していけたらと思います。

今回は、先月 10 月を振り返っていきます。

目次

計画を立てる → ひとまずPDCAサイクルを回していこう!ということで、記事構成としてもPDCAの順に書き出していきます。

PDCAの中身は以下のイメージです。

  • 計画 Plan → 何をするの?
  • 実行 Do → 何をしたの?
  • 検証 Check → やってみてどうだった?
  • 改善 Act → 今後どうする?

計画 Plan - 10月

以下のとおり、先月の計画を立てました。

計画 Plan - 10月

1. SQL、データベース

  • ログ解析システムの作成
    • 10月末までに完成させる。

2. PHPオブジェクト指向の習得

  • 独学エンジニアの動画講義、課題
    • 最新更新分について動画試聴と課題を進める。
  • ポートフォリオの振り返り
    • 一つの機能の解説をブログ記事化するための振り返りをする。

3. Webアプリケーションのセキュリティの習得

  • 徳丸本の通読
    • 下記、残りの章を必ず10月末までに読了する。

      4.Webアプリケーションの機能別に見るセキュリティバグ

      5.代表的なセキュリティ機能

      6.文字コードとセキュリティ

      7.脆弱性診断入門

      8.Webサイトの安全性を高めるために

      9.安全なWebアプリケーションのための開発マネジメント

4. 技術系のブログ記事投稿

  • ブログ記事投稿(週一ペース)

    ※ 今後のブログ記事の題材案

    • ログ解析システムの作成過程
    • 転職活動時のポートフォリオとして作成したWebアプリの「振り返り」と「これまで学習してきたことを踏まえての深堀り」
    • 徳丸本学習の振り返り
  • Qiita記事投稿(月 1 記事)


ちなみに、2022年10月末時点で、Webエンジニア経験は 11 カ月になりました。もうすぐ 1 年…


1. SQL、データベース

具体的な行動計画は以下の通りです。

  • ログ解析システムの作成

1-1. ログ解析システムの作成

10月末までに完成させる。

実行 Do

dokugaku-engineer.com

Web開発についての動画学習教材 独学エンジニア の「PART7 データベースとSQL」については、残すところ下記のプロジェクトを自作する集大成の課題のみで、9月末に着手したところです。

  • レッスン43: 【プロジェクト】ログ解析システムを作ろう

検証 Check

  • 10月末までに完成させると工数が未知数ながら決めていましたが、無事完成しました。

  • テキストファイルからMySQLにデータをインポートするところで詰まりまくりましたが、この詰まってたときのインプットは良質!だと思っているので、良い時間でした。

改善 Act

  • 今回のログ解析システムの課題は、優先的に取り組んで、目標通り完了させられたので満足しています。どのくらいの工数がかかるか取り掛かるまでは未知数でしたが、始めにタスクにばらして、工数のイメージをしながら取り組み始めるようにしました。その点を意識して、実行できたことが良かったです。
  • ログ解析システムの課題に取り組んだ様子について、ブログ記事としてアウトプット予定です。



2. PHPオブジェクト指向の習得

具体的な行動計画は以下の通りです。

2-1. 独学エンジニアの動画講義、課題

最新更新分について動画試聴と課題を進める。

実行 Do

dokugaku-engineer.com

Web開発についての動画学習教材 独学エンジニア の「PART8 フルスクラッチでWebアプリケーション」の下記の講座(動画視聴、課題)を受講しました。

  • レッスン44: PHPでシャッフルランチサービスを作ろう(最新講義)

検証 Check

  • 「レッスン44: PHPでシャッフルランチサービスを作ろう」は、キーワードとしては以下で、これらをPHPフルスクラッチで作っていくところです。
    • MVCモデル
    • ルーティング
    • コントローラー

改善 Act

  • ルーティングは、これまで言語フレームワーク(Laravelなど)でやってくれている機能を使用するのみだったので、作ることで理解が深まるのを感じました。ただ、結構難しかったので、要復習です。


2-2. ポートフォリオの振り返り

一つの機能の解説をブログ記事化するための振り返りをする。

実行 Do

  • まずは、どの機能をブログ記事にするかを選定するために、ポートフォリオとしてのWebアプリ開発時に書き溜めていた Notion のページを整理しました。

  • Notion には、設計や手順をまとめていたので、そのページを整理していき、オリジナルの機能として作成した「家族ユーザー招待」機能を選択しました。

ryamate.hatenablog.com

「家族ユーザー招待」機能は、自身が招待した他のユーザー(夫婦や祖父母などの家族を想定)と、絵本の本棚の共有を開始する機能です。

検証 Check

  • Webアプリ開発に関する Notion のページを整理することには結構な時間を使いましたが、忘れていたことの復習に役立ったと思います。振り返ることで、当時はわかっていなかった部分の理解が進んだ感覚もあります。

改善 Act

  • 「家族ユーザー招待」機能を振り返っていて、直した方がいい点なども発見したので、記事にするまでにバグを修正したいと思います。バグ修正も学ぶ材料と考えて取り組みます。
  • 振り返りを通して Laravel の復習をしていますが、下半期(2022/11〜2023/04)で作成しようとしている Laravel のWebアプリ開発で活かしていこうと思っています。

2-3. その他

  • 9月まで取り組んでいた「PHPで作ったコンソール画面で操作するブラックジャックゲーム」について、社内の教育担当の方にレビューをしていただき、改善すべき点がいくつかありましたので、折を見て修正しておきたいと考えています。



3. Webアプリケーションのセキュリティの習得

具体的な行動計画は以下の通りです。

  • 徳丸本の通読

3-1. 徳丸本の通読

  • 下記、残りの章を必ず10月末までに読了する。

    4.Webアプリケーションの機能別に見るセキュリティバグ

    5.代表的なセキュリティ機能

    6.文字コードとセキュリティ

    7.脆弱性診断入門

    8.Webサイトの安全性を高めるために

    9.安全なWebアプリケーションのための開発マネジメント

実行 Do

5月に読み始めた『体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践(徳丸 浩 (著))』(通称「徳丸本」)を読み進めました。

wasbook.org

検証 Check

  • p450〜688を読んで、ようやく読了しました!

改善 Act

  • 読書というインプットだけでは身についている感覚がない、というのが正直なところです。記事としてアウトプットに結びつけるか、個人開発でWebアプリを作る時に、今回学んだチェック方法などを実践するか、セキュリティのことは引き続き習得するための課題を用意していきます。
  • 出社必須の現場なので、電車での通勤時間があるため、読書時間を確保するには最適だと感じています(出社必須はとても残念なことですが)。11月以降は『良いコード/悪いコードで学ぶ設計入門―保守しやすい 成長し続けるコードの書き方』を読んでいきます。

gihyo.jp


4. 技術系のブログ記事投稿

具体的な行動計画は以下の通りです。

  • ブログ記事投稿(週一ペース)
  • Qiita記事投稿(月 1 記事)

4-1. ブログ記事投稿(週一ペース)

※ 今後のブログ記事の題材案

  • ログ解析システムの作成過程
  • 転職活動時のポートフォリオとして作成したWebアプリの「振り返り」と「これまで学習してきたことを踏まえての深堀り」
  • 徳丸本学習の振り返り

10月の記事の内容はポートフォリオの振り返りにしました。

実行 Do

  • 毎週、ブログ記事を投稿しました。記事の内容は下記の通りです。

ryamate.hatenablog.com

ryamate.hatenablog.com

ryamate.hatenablog.com

ryamate.hatenablog.com

ryamate.hatenablog.com

検証 Check

  • 「2-2. ポートフォリオの振り返り」で触れた通り、 Notion に書き溜めていた詳細設計部分を整理して記事としてまとめる、という作業をしました。再現できる(もう一回同じ機能や、似たような機能を、作ろうと思えば作れる)ようになることを意識して取り組みました。(料理で言えば、レシピを作るイメージ)

改善 Act

  • ブログ記事はポートフォリオの振り返りの記事を11月以降もしばらく投稿していきます。

4-2. Qiita記事投稿(月 1 記事)

実行 Do

  • Qiitaには下記の記事を投稿しました。

qiita.com

検証 Check

  • Qiita 記事については、下記のイベントに合わせて記事を投稿しました。

qiita.com

  • イベントに合わせた題材選びをしましたが、今自分が復習しておきたい題材でもなく、執筆に時間がかかったので、あんまりコスパのよくない時間だったと感じています。

改善 Act

  • Qiitaに投稿する際の反省点として、振り返って知識を強化したい、新しいことをやってみた、というような自分にとって技術力向上というリターンのある題材をなるべく書いていきたいと思います。

その他(習慣化など)

朝活の継続

  • 一日1〜3時間程度の朝活を、4月8日に開始して以降毎日継続更新中です(10月31日で、207日継続)。

学習時間の確保(月120時間)

  • 118時間学習しました。10月は実務では残業がほぼなかったので、おおむね120時間学習時間を確保できました。
  • これまで5ヶ月は100時間/月だったので、10月は20時間プラスしてみたわけですが、当然やった分だけ多くやりたいことが進む(笑)ので、続けられる限り100〜120時間の学習をめどにします。

実務

  • システム改修の設計段階ですが、資料作成(詳細設計書の作成)について、ひたすら作業しています。9月に引き続き、詳細設計、データベースのテーブル設計、排他制御、WebAPI、AWS、Docker といったことについて、実務では当面考えていきます。

  • 実装できてないことへの焦りが周期的にやってきます。自分が進みたい方向をしっかりと見つめ直して、そこに進んでいく行動をとる、それしかないと考えてはいます。今の案件は実装経験は積めないけど、設計などについては経験を積めているので、案件が終わる来年3月までしっかりと向き合います。


計画 Plan - 11月

11月の計画については、会社の下半期(2022/11/01~2023/04/30)の開始月ということもあるため、来週の投稿で下半期の目標、11月の計画を投稿します。

10月の振り返りは以上です。


ありがとうございました。



遂に明日!…