2021年のふりかえり
2021年もあともう少し。本当にいろんなことが変わった1年でした。
自分自身の振り返りも兼ねて、記事として残しておこうと思います。
完全な個人の記録なのでそのあたりはご了承ください。
2021年12月現在、エンジニアとしての実務経験は7ヶ月です。
エンジニアを目指している方や、エンジニアになったばかりという方の参考になればと思います。
月ごとにふりかえり
1月
転職活動開始。Wantedlyのプロフィールなど作ったり、自己分析しまくったりなどなど。自分がどんな会社で働きたいのかと同時に、自分のこれからについても考えるいい機会になった。
面談とか会社説明会にも参加して、業界のことについても少しずつ知る。
中旬頃から本格始動。応募しまくる。結果、末頃に面接決定。その企業から内々定(後述)が出る。SESを行いつつ、自社のサービスを開発しようとしているベンチャー企業で、開発の経験は積んでいけそうだなと感じた。
その後も転職活動は続けるが、他の志望度高かったところは書類とかで落ちる。
もちろん、できるなら複数内定をとったほうがいいと考えていたが、内々定もらった会社が素直に「自分に合ってそう」と直感で感じたので転職活動終了。
世間一般的な転職活動で考えてみたらギャンブルに近かったけど、結果としてよかったのでこの直感は信じてよかったなーと感じた。
この辺の面接時に感じたこと、選択した自分の基準とかはまたどこかで言語化して振り返ってみたい。
2月〜4月
内々定した会社は、経験者採用を行っていたフェーズ。未経験を採用するにあたっては「自社の教育事業を受講した後、正式に内定が出る」という条件を設定していた。
受講は完全に無料で、自分のタイミングで進めてOK。だいたいフルタイムで取り組んで3ヶ月くらいのボリュームとのこと。内容は主にWindows Formでクライアントサーバシステムのアプリを開発する。
「実践型プログラマ育成」と謳っているだけあって、課題は仕様書を読んでどんどんシステムを作り上げていくようになっていた。いち課題に対するコードレビューも結構な量返ってきて、自分自身課題を進めるにつれてレベルアップしている実感はあった。
ただ正直、この時期はしんどかった。自分自身、会社に対しての志望度が高かったので「やりきるぞ!」というやる気はあったが、周りでもあまり聞いたことのないパターンだったし、本当に内定が出るのか? 出なかったらどうする? みたいな不安も尽きなかった。
また、研修内容がWebに関連しないものだったので、実際の業務で使用している技術的な不安もあった。
5月
晴れて入社。SESでさっそく現場に入る。現場はC#(ASP.NET MVC)を使った業務系Webアプリケーションの開発、保守運用、新機能追加まで一貫して行っているチームで、人数は自分を含めて6人。
プロジェクト自体は立ち上がって2年ほどらしく、一通りの開発はできているがまだまだ要望はどんどん出てきていて随時機能追加している状況、ということだった。
また、SESということで参画したけど、開発は完全に自社内で行っていて、チームも全員社内の人間。面接時にもSESでの働き方については聞いていたが、やっぱり巷で聞いていたイメージもあったため、「ほんまにこんなパターンあるんや」と素直に驚いた。
はじめの1ヶ月はチームの方が用意してくれていたASP.NET MVC用の研修を進める。
去年8月〜12月、RaiseTechというスクールでJavaとSpring Bootを学習していたので、MVCモデルでのアプリケーション作成の流れはなんとなく掴めていた。そのため研修は割とスムーズに進められたのではないかと思う。
6月
マジなんもわからん期。
研修が5月末で終了し、プロジェクトの環境構築を行い、いざスタート!
「えっっ? テーブル多すぎ……フォルダ多すぎ……ファイル多すぎ……」
なんかずっとこんな感じだった気がする。
仕様もわからないし、機能についてもどこでどんなふうに実装されているのかまったくわからない。個人での学習と現場に入っての業務ってこんなに違うのか……と痛感し続ける日々。
1日の9割くらいはずっとコード読んでいた気がする。あと、入ったばっかりってこともあり質問もめっちゃ遠慮していた。チームの皆さんは「どんどん質問してきて〜」というスタンスで良かったけれど、それでも質問のたびにかなり緊張した。
とりあえずわからないことをひたすら書き出して、わかりやすく論理的に質問できるように文章化しまくった。文章化したものをベースに口頭で質問する、というように自分で決めてからだんだん質問しやすくなっていったように思う。
プライベートではひたすら勉強していたと思う(記憶があいまい)。
業務で使っているC#やASP.NET MVCをひたすら触っていた……はず。
この辺から結構、仕事後の勉強も習慣化できてきたように思う。
Qiitaにも記事書いたりしています
https://qiita.com/keitaUenishi/items/b09a34bcbf02ffff8e67
7月
あんまり覚えてない……。
質問の仕方とか、褒めてもらえたりした気がする。
業務に関しては、ちょっとした機能追加のチケットとかは振ってもらえるようになってきた。
とにかく、業務ができるようになるためひたすら業務に使うものを学んでいた。
TwitterとかのSNSから意図的に距離をとって、ひたすら目の前のことをやろうと決めたのもこの頃合いだったような気がする。
すぐ人と比べて落ち込む性格なので、目の前のことしか見ないくらいで丁度良かったと思う。
8月
500行くらいのSQLにはじめて触れる。
基本的にSQLはPMが書いていて自分たちが触ることはほぼないけれど、ちょっとした変更ならということでタスクが振られた。
しかし、まったく分からず爆死する。
SQLの難しさを知る。
このあたりでデータベース設計やSQLに関していろいろと勉強した。
主に「達人に学ぶ DB設計徹底指南書」はかなり参考になった。実務に入る前は読んでもまったくわからなかったけど、いざ理解が必要になるとこんなわかりやすい本があるのかと感動。
結果的にこのタイミングでDBの基本的なところへの理解が深まったのは良かったと思う。
あと、まだ受注確定はしていなかったけれど、自社の受託案件の開発に手を挙げた。
販売管理システムを開発するかもということで、経験として要件定義や見積もりなんかも関わらせてもらった。結果的に失注にはなったけど勉強になった。
あと、全然関係ないけど筋トレをはじめて1年。写真で見比べると自分の体が明らかに変化していてニヤける。
9月
新機能追加のタスクをまるごと任せてもらえるようになってきた。
あと、C#にも慣れてきて、コードを書くことそのものが楽しいなと感じることが増えてきた(多分めっちゃクソコード書きまくっているけど、あえて気にしない……気にしない……)。
振られたタスクの期限を1週間くらい前倒しで終わらせられて、めっちゃ評価してもらえた。毎日勉強していてよかったーと自己肯定感が上がる。継続ってほんとに結果が感じられるなと実感。
SESでの業務が一旦は進められるようになってきて、ちょっとだけ安心する。自社内での開発もどんどん関わっていきたいと思い、Reactやモダンなフロントエンド技術を勉強し始める。
10月
エンジニアになり、6ヶ月目。
会社にも慣れてきて、コミュニケーションもどんどん取れるようになってきた。
自社のオウンドメディア開発に参加。Gatsby.js, GraphQL, TypeScriptを扱っているのでプライベートでも勉強する。
そしてSESでの方も、フロントエンドをReactに書き換える計画が立ち上がってきた。
「これからはReactだ!」と思い、チュートリアル終わってすぐ自作のクソアプリを作り、Netlifyにデプロイ。こんなに簡単に公開できるのか……とモダンな技術に感動する。
実際のアプリ
https://jolly-ramanujan-636c00.netlify.app/
コードの質は終わっているけど、動くものが作れてモチベーションアップ。
フロントエンドの技術や、UIデザインなんかもいろいろ調べるようになる。
11月
エンジニアになって半年。
これもQiitaに記事書いたりしてます。
https://qiita.com/keitaUenishi/items/fe8dd958b13db09eb291
給料がけっこうup。
結構大きめの仕様変更タスクが振られる。
設計やプロシージャの作成はPMが行い、その先の実装はほとんど任せてもらう感じに。明確に半年前から成長しているなと感じられてきた。
あと、テーブル構成の理解もできてきたので、ちょっとしたSQLなら書けるようになってきた。
プライベートではGatsby.js, GraphQLでブログを作ったり(これの原型)。
C# & Reactでなにか作れそうかいろいろ触ってみたり。
Firebaseを触ってみたりなどなど……
12月
SESでの開発で、ほぼメインくらいな機能の大幅な仕様変更とUI改善がスタート。
前の月くらいから設計とかもチームで話し合いながら進めていて、設計→実装→テストまで経験できてかなり学びになった。
会社のカジュアル面談に参加する。去年を振り返ると自分が求職者の立場で、エンジニアになるため必死だったのを改めて思い出す。初心は絶対に忘れないようにしていきたいなと強く感じた。
現場の評価として、もうすでに歴2年くらいのレベル感と言ってもらえてテンションが超上がる。
来年は市場的な評価についても高めていけるように頑張っていきたい。
来年の指針
基礎固めをする
設計や実装手法など、エンジニアとしての基礎をしっかり身につけていきたい。
なんとなくで理解しているWebの仕組みや成り立ちも説明できるよう理解して自分に落とし込む。
学ぶ技術を絞る
いろいろとモダンな技術に触れ始めてから、一気に何を学ぶべきかわからなくなってきた。
いろんな技術を知るのは楽しいし好きだけど、身についているのかといえば謎。
今いちばんメインで使用している言語はC#なので、来年はC#を中心に理解を深めていければと思う(個人的にC#は好きだし、結構アツい言語だとも思うので)。
技術記事を書く
まずは「月1本」を目標に書いていく。
少ないけど実際にいくつか記事を書いてみて思ったのは、記事に書いた題材は定着の仕方が明らかに違う。
これも積み重ねていくものだと思うので、どんどんやっていく。
勉強会とかでのアウトプット
今まで参加するだけがほとんどだったけど、やっぱりどんどんアウトプットしていけるようになっていきたい。自分の学んだことや、エンジニアを目指す方に向けて自分にできそうなことはどんどんアクションを起こしていければと思う。
0から1の開発に関わる
もともとの希望であった、受託・自社問わず0からプロダクトを作っていく経験を積む。今の会社でも関わっていけそうではあるので、技術力も身につけてしっかりアピールしていく。難しそうなら、副業として経験を積むか転職なども視野に入れて動いていこうと思う。
まとめ
あくまで個人の感想ですが、エンジニアになれて本当によかったです。いろいろとキャリアについて考えることもありますが、まずは今の会社で、エンジニアとして活躍できるように日々成長していきたいと思います。
やっぱり「ものを作る」ことがなにより楽しいので、この楽しさを頼りに来年も過ごしていこうと思います。 来年も引き続き頑張っていきますぜ!