🌊

プログラマーを目指してから仕事に付くまでの振り返り

2020/12/30に公開

経緯

世間ではコロナをはじめ、変化の激しい1年でした。同様に私の一年も3月に教職を辞め5月から本格的にプログラマーを目指し勉強を進め12月からウェブ系の企業に就職するという怒涛の1年でした。

企業に就職してからは自分の力不足に悩ませれ続けました(まだ一ヶ月しか働いてないですけど)。
そこでいろいろ思うところがあったので以下のような目的で今年一年を振り返ろうと思います。

  • 今年の反省を来年に活かすため
  • これからプログラマーを目指す方の参考になるように

振り返り

プログラマーを目指した理由

私がプログラマーを目指した理由は、昔からプログラミングが好きだったという前向きな理由と、教員採用試験になかなか受からないという後ろ向きな理由の二つがありました。

前者に関しては、元々中学生の時ゲームを作りたいという夢があり、また学校でもプログラミングを学ぶ機会があったというバックボーンがあり、これからのIT需要の高まりを感じたことも相まって仕事にしたいと思いました。

後者に関しては教員採用試験に受からないと契約社員のような扱いのままでありフワフワした身分のままであることに不安を感じたからというのが一番の理由です。また採用試験の勉強が手につかなかったというのもあります。

勉強

勉強

プログラミングスクール

勉強を始めたのは5月ぐらいからだったと思います。IT系に勤めている知り合いもいなかったので情報収集から始めました。

最初に行きついたのはいわゆるプログラミングスクールです。体験コースを使ってみてメンターの方にいろいろお話を聞きました。結果としてプログラミングスクールに通うことはしませんでした。
一番の理由は当時私はキラキラした技術に憧れており、一方でスクールさんからは就職のための堅実なビジョンを提示されてミスマッチを感じたからです。
今となってはスクールさんの示した堅実なビジョンは正しかったと思いますが、一方でスクールに頼らずとも就職にたどり着けたので良いとも悪いとも言えないです。

動画教材

プログラミングスクールを利用しないならどのように学習したかというと動画教材を使いました。私の場合はUdemyという動画教材のプラットフォームを利用しました。通常は数万円ですがセールの時は数千円で購入できるのでセールを使って教材を買っていました。
Youtubeにもあるのですが、Udemyの場合は体系的に学べるので私としてはとても勉強しやすかったです。

並行してProgateなどのプログラミング学習サービスを利用したり、Youtubeの動画を参考にしたりしていました。
2、3ヶ月立つと開発元のドキュメントが一番信用できる情報源だとプログラム言語やライブラリーの公式のドキュメントを読むことにも挑戦していました。

SNSの利用

Twitterに専用のアカウントを作成し、情報収集をしました。最初は技術に関する情報を集める目的でしたが、ある時チーム開発のメンバーを募っている方がいらっしゃりそこに飛び込んでチーム開発を経験することができました。
集まったメンバーはみんな素人でしたが、お互いが違う知見を持っていて世界が広がったのはとてもよかったです。また、一人ではなく複数人で行うことによって環境の統一や進捗の管理など一人でやっていると直面しない問題も考えることができて良い経験になりました。プログラムを書く意外のも学ぶべきことがたくさんあると気付けたのもこのチーム開発でした。

就職活動

就職活動
実家暮らしでありこれまでの貯金があったこともあり就職は焦ってはいなかったので年明けて4月から働くことを前提に動いていたのですが、田舎特有の近所からの圧力があり、「まぁ就職活動もやったことないしやってみるか。」と軽い感じで始めました。
とはいえ、企業も暇ではないので活動そのものは真面目にやりました。教員採用試験を受けるだけで就職活動をしたことがなかったので手探りでした。
よかったのはGreenというIT企業に特化した求人サイトです。ここは最初から応募するのではなく、まずカジュアル面談という形で企業の方とお話ができいろいろ聞くことができました。特に私のように企業というものを知らない人間にとっては、とても勉強になることが多く、またミスマッチを防ぐという意味でもとてもいい仕組みだと思いました。

実際に応募する段階になると、履歴書・職務経歴書が必要になりました。私が受けた会社でポートフォリオを要求する会社はなかったのですが、せっかく作っていたのでそれも職務経歴書の最後に付けました。

仕事

仕事
12月からウェブ系の企業で働き始めました。プログラミングの学習をしっかりやっていたからかそこについてはとても評価していただきました。
しかし、プログラミング意外のところで求められていることが多く力不足を感じました。
今回関わったプロジェクトの流れとしては、

  1. 今回作るシステムの概要の説明
    今回の依頼がどのようなもので、どのようなシステムを作るのかの説明。この時点で大まかな仕様は決まっておりフロントエンドの方でビューは出来上がっている状態でした。ディレクトリマップや依頼先から頂いた帳票は存在しましたが、仕様書などは存在せずデータベースの構造も決まっていませんでした。
    ※ 仕様書がどのようなものかも知らず、また仕様書の存在も当時は知らなかったのでもしかしたらあったのかもしれません。

  2. 自分が担当するページの決定
    このシステムではMVCモデルを採用しており、1ページに対してそのページの処理を記述した1モデルを用意する形で実装していきます。未経験者ということもあり処理が簡単な部分のページのモデルを担当することになりました。

  3. 担当ページの実装
    実際に担当になったページのモデルをコーディングしていきます。

という感じです。一つ一つの実装は簡単ですがとにかく速さを求められました。

反省

ここからは反省や振り返って思ったことを書きます。

勉強

勉強

  • 最初はProgateなどのサイトを無料枠で利用できる範囲でプログラミングをやってみるといいと思った
  • Progateなどのサイトはプログラミング言語等の書き方を学ぶだけなのでどこかで開発の流れを体系的に学べる機会があればよかった
  • 複数人で開発する機会は一人でコツコツやるだけでは体験できないことが沢山あり良かった、現場ではそちらの方が重要のようにも感じた
  • どのサービスで学習するのが良いかも含めて自分で考えていくことが大事

就職活動

就職活動

  • 初めて就職活動をしたが、とにかくアクションを起こすことが大事
  • 就職活動を初めて直ぐは「とにかく応募」というイメージを持っていたが応募する前に企業から話を聞く機会を設けた方が良いと思った
  • 未経験者として謙虚な姿勢は大事だが、未知の業界だからといって怖気づく必要はなくあくまで自分と受けた企業がマッチしているか、その答えを出す感じで受け答えをしていくスタンスが良いと感じた

仕事

仕事

  • とにかく早さが求められた
  • 早く仕事をするために段取りを決めて効率よく手戻りが発生しないように仕事をすることを求めれらたが自分にはそのスキルが全然なかった
  • これまでの仕事のやり方が「とにかくやってみよう」だったが「しっかり計画を立てて始めよう」が大事だと感じた
  • プログラムを書くこと意外の作業の方が重要だと感じた

まとめ

仕事を初めて時間管理と効率の良い作業が大事だと感じました。しかしこれは未経験者が個人でやっている上ではなかなか意識しにくいところだと思うのでこれからしっかり意識していきたいところです。
逆にいうとそこに集中できるようにプログラミングのスキルを磨けていたのは良かったです。

Discussion