どうも。みずかず(@mizukazu_1)です。
今回は未経験からIT企業に入社して1年半で出来るようになったことを書いていこうと思います。
正直、1年半という期間は世間一般から見たら短いと思います。
たった1年半で何を得たんだお前はとか偉そうに言ってんじゃねーよとか思われそうですが。。。
自分の中では結構得るものが大きかったと思っています。
入社時の自分
2018年に新卒として前の会社に入社しました。
文系大学出身だったのでプログラミングやITの知識はほとんど持っていません。
元々ネトゲをやったり、ブログを書いたりしていたのでPCの操作に関しては問題はありませんでした。
プログラミングに関しては少しだけ勉強をしていたのでHTML、CSSがちょこっとわかる、JSの変数とif文が分かるくらいのレベル感でした。
同期には工業大学出身でバリバリコードを書いてた人もいたのでその人に比べると全然使い物にならないようなレベルです。笑
研修期間
研修期間が約3か月程ありました。
前の会社はいわゆるSESだったので案件が決まった人は研修の途中で抜けていきます。
工業大学出身の彼は約1週間くらいで現場に出ていきました。。。笑
私は未経験だったこともあり3か月丸々研修をさせていただきました。
研修期間で行ったこと
研修ではC#を使用し、WindowsFormというデスクトップアプリを作るフレームワークで簡易的な勤怠管理システムや、単価計算のツール等を作成しました。
前の会社のスタンスなのかそれとも単に研修講師が足らないのか分からないのですが基本的にツールの作成に関しては新人に丸投げでした。
なので、各自がネットで調べつつ時には同期で力を合わせてツールを作っていきました。
この方法が良いのか分からないのですが、個人的には自分で調べながら作っていくというスタイルはとても良いと思っています。
受動的より能動的な方がやっぱり知識としては定着すると思うんですよね。
そんなこんなでツールも無事完成し、C#を通してプログラミングの基礎知識が身に付きました。
入社時には変数とif文しか分からなかった私ですが、研修が終わった頃にはfor文やswitch文といった基本構文から配列やリスト、クラスについてなども習得出来ました。
この時点ではオブジェクト指向についてはまだあやふやでした。(正直、今でも完璧に説明は無理かもしれませんが。。。)
ちなみに前の会社ではHTML、CSS、JSといったいわゆるWeb制作をするための技術はほとんどやってないです。
後々出てくるWebシステムの構築案件で使用していたくらいです。
Web制作の案件が少なかったので社内にも精通している人がほとんどいませんでした。
研修が終わってからの社内待機
SESで働いたことのある人は分かると思うのですが、案件の参画のタイミングによっては社内待機が発生することがあります。
私も社内待機の期間があり、研修が終わった8月から10月までの約3か月間を自社の中で過ごしていました。
社内待機での業務内容
その間何をしていたかというと。。。
社内で受託開発を行っている先輩の手伝いをしていました。
とは言っても未経験で入社してたった3か月研修を行っただけの新人がすぐガリガリコードを書けるわけもないので、当時の業務内容と言えばPCのキッティング作業や社内の掃除、その他雑務です。
最後まで研修をして、その後も案件に参画できないものだから結構悩みました。
このままだと同期との差が広がるばかりで自分は置いて行かれるのではと。
ただその当時お手伝いをしていた先輩がとても良い人&すごい仕事の出来る人でGitやMarkdownなどの技術はその先輩に教えてもらいました。
フリーランスになった今、GitやMarkdownをバリバリ使っているので当時お世話になった先輩にはとても感謝しています。
仕事が終わってからWeb制作の勉強
話を戻しまして、当時の自分は結構な焦りと不安を抱えていました。
幸いな事に定時ピッタリで帰れていたので家に帰ってからHTML、CSS、JS、PHP、WordPressの勉強をコツコツやっていました。
その時にこのブログも始めて、覚えたことをアウトプットする為に合間に記事を書いたりしていました。
上では勉強と書いているのですが私自身あまり勉強をしているといった感じはないんですよね。
好きだからやってる、楽しいからサイトを作ってるといった、ゲームやスポーツをしている感覚と同じというか。
なので8時間仕事してその後にWeb制作をするといった生活を続けていても全然苦ではありませんでした。
それは今も同じです。
初めての案件参画
社内待機の期間も約3か月で終わり11月から初めての案件に参画しました。
業務内容はネットワークの保守をサポートする業務です。
4月入社した時点から開発がしたいと言っていたのですがその夢は儚くも崩れ、最初の案件はネットワークの案件に参画になりました。
正直、不本意ではあったのですがネットワークの知識も今後必要になるだろうと自分に言い聞かせて業務を行っていました。
業務内容
業務内容としては客先のネットワークの保守担当です。
社内のネットワークに不具合が起きたらすぐに現地に行き、障害を解消させる。
またある時は新規にネットワークを構築する為にスイッチやハブの設置、LANケーブルの配線をしたりと。
他にもスイッチの設定をしてVLANを作ったり、アクセスの制限をしたりと。
そんな感じの業務です。
ネットワークの知識は本当に一切持ち合わせていないので勉強しながら手探りの状態でした。
その案件には上司がいたのでほとんどの作業はその方がメインで、私はサポート要員という形になります。
ただほとんど残業は無く、基本は定時で上がれていました。
なので当時も家に帰ってWeb制作の勉強したりコードをとにかく動かしてみるといった事をしていました。
業務中にVBAに手を出す
ネットワークの業務なのでコードを一つも書きません。
せっかくプログラマーとして入社したのでコードに触れられない現状にかなりモヤモヤしていました。
PCを支給されていたのですが、スペックはそんなに高くありません。
せいぜいメールとExcelくらいが使えれば良い程度なので。
無断でプログラミング言語をインストールするわけにもいかないので当時の自分は無い頭を必死で回転させて考えていました。
どうにかコードを書きたい。と。
そこで思いついたのがVBAです。
Excelに標準で搭載されているプログラミング言語でベースとなっているのはBasicです。
C#とも書きっぷりは似ているのでこれはコードを書けるぞと期待していました。
上司に作業効率化を名目にVBAの使用を許可してもらえたのですぐ書き始めました。
が、すぐに案件移動の話が浮上したのでほぼほぼ書くことなく終わりました。
すごい中途半端な状態でもしかしたら今も眠ってるかもしれません。
案件移動
ネットワークの案件も半年くらい携わりました。
ただ、どうしてもコードを書ける現場に行きたいという気持ちが強くなっていたので上司に相談して案件を移動させてもらおうとしました。
なかなかOKが貰えず、ずっとこの案件にいるくらいなら退職しようと考え始めたのもこの辺りからでした。
だいたい2019年3月くらいです。
なかなかOKが貰えなかったのですが、退職を伝えた辺りからかなり急ピッチで上の人が動いてくれるようになったんですよね。
正直、そこに不信感を抱いてしまい結果案件移動させてもらってもすぐに退職をしてしまったのですが。。。
Webシステム開発の案件に参画
ネットワークの案件から移動して次にWebシステム開発の案件に参画させてもらいました。
AngularとJavaを使った業務システムを構築する案件で、HTML、CSS、JSも書くことが出来ます。
Angularを触れると聞いてかなりワクワクしていました。
業務内容
業務内容は主にフロントエンドの部分で、Angularで画面を構築していくのがメインの業務です。
業務システムなので画面も結構使いまわしの部分が多く、既存のコードをコピペしてくる作業が多かったです。
でもモダンなJSフレームワークに触れることが出来ていたので業務内容に不満はありませんでした。
むしろ楽しみながら出来ていたと思います。
この案件の参画中に退職
上司からはこの案件には結構無理をして入れてもらったからなるべく長期で頑張ってくれとお願いされていました。
ですが、結局案件に参画して約4か月程で会社自体を退職してしまいました。
研修が終わってから社内待機になった事、案件移動の話の件で会社への不信感が少しあったのが原因なのと
この頃からもっとWeb制作寄りの仕事がしたいという気持ちが芽生えたのがきっかけです。
この辺りはまた別の記事として1本書こうと思っているので割愛します。
まとめ
もっと簡潔に書くつもりだったのですが職務経歴的な感じで結構ダラダラ書いてしまいました。
すみません。。。
ここで簡潔にまとめたいと思います。
習得した技術
言語
- C#
- Oracle
ネットワーク系
- スイッチとHUBについて
会社から教えてもらったことを記載しています。
あれ?こうやって見ると受動的に学んだことってかなり少ない気が。。。
あと書き忘れていたのですが研修中にOracleを使ってDBを使っていたので書いておきました。
Web制作の技術に関しては独学で学んだものなのでここには書いていません。
Angularに関しては身についたと言えるレベルかどうか怪しいので省きました。
プログラミングの基礎、考え方を学べた
正直、ここが一番大きいと思います。
大学生の時に少し自分でJavaScriptを勉強したことがあるのですがその時は変数の使い方とif文の使い方くらいしか身につけることが出来ませんでした。
頭も全然良くないので当時の自分にはあれが限界でした。
ですが会社に入って研修を通して、自分で調べて作る、物事を論理的に考えてロジックを組むという力が身についたことでプログラミングの理解が格段に早くなったと感じています。
ずっと独学だったら恐らく今でも基本構文を覚えるのに躓いていたかもしれません。
会社への不信感を抱いて退職したのは事実なのですが、こういった土台を作れたという意味ではとても感謝しているし入社して良かったと思っています。
一番効率的な勉強方法
プログラミングの経験、年数はまだまだ浅いのですが一番効率的な勉強方法はこれだと胸をもって言える方法があります。
それは「自分の作りたいものを作る」ことです。
自分の作りたいものを作る時って自分で仕様を決めて好きなように作れます。
誰にもとやかく言われないのでとにかく楽しいです。
実装方法を調べてる時も楽しいしコードを書いているときはなお楽しいです。
この楽しさを持って何かを作れる、コードを書けるというのが上達への近道なのかなと思っています。
好き放題作るのでもちろんコードは酷いし、セキュリティなんて考えることもないです。
ですが、最初はそれで良いです。
どんな小さなものでも良いのでとにかく自分が考えたものを作っていく。
座学や写経よりもかなり効率が良いと実感しています。
最後に
今後未経験からIT業界に転職する方の参考になればという思いで記事を書きました。
文章能力が高くないのでかなりの駄文なのですが、ここまで読んでいただきありがとうございます。
後々リライトとかしてもう少し読みやすくできればと思っています。
スポンサーリンク