ど文系の私がエンジニアの卵になるまで
Published: 2020-09-15 10:13:54

###○はじめに
　初めまして。gramnのもりと申します。

　なんとこの度、gramn開発チームでテックブログが開始されることになりました！
CTOのウォン（通称ヨンさん）は「月1更新を目指す」と言っていたのですが早速ペースを乱しました！ごめんなさい！


　実は私は開発ではなく営業のインターンとして、大学2年生の冬にgramnに入社しまして、その後未経験のまま開発部に移籍。就職活動では他社選考も受けたものの、「やはりgramnで学びたい」という思いが強く、新卒第2号としてgramnへジョインし、現在1年目です。(こちらはテックブログなので経緯は省きます。)

　就活中は少しでも知見を増やせればと、技術職を目指している文系学生に向けて行われたイベント等に参加していました。技術者不足が囁かれる中、会社に入社してから技術者になる人も少なくないのでしょう。参加者の中にはこれから学ぼうという段階の方も多く、私は少しだけコードを書きはじめているということで*「何から始めれば良いのか」*聞いてもらうことが多くありました。

　技術者不足が囁かれる中で、会社に入社してから技術者になる人も少なくないのでしょう。そこで直面するのは**なりたいけど何から始めれば良いのだろう**という壁だと思います。


　そこで今回のブログでは、「私がエンジニアになろうと決めてから、最初にやったこと」をご紹介させていただきます。
**エンジニアになりたいけど何から始めれば良いのかわからない**という方の参考になれば幸いです。


###学習教材

####□HTMLとCSS

　いざ勉強しようと決意したはいいものの、「ところで一体何をしたら良いんだろう」と、私もはじめは悩みました。私の場合幸運なことに頼りになる先輩が周囲にいたため、最初はその方々からのアドバイスを参考に進めました。
　「とりあえずhtmlとcssの勉強から」というアドバイスを元に、まずは有名な下記を2周ずつ。

　◎[「ドットインストール」](https://dotinstall.com/)
　　・「はじめてのHTML」
　　・「はじめてのCSS」
　◎[「プロゲート」](https://prog-8.com/users/sign_in)
　　・「HTML & CSS」
　　・「Sass」

　これで主要な部分はキャッチアップしてから某webサイトのviewの摸倣を作成して練習をしたり、実際に弊社WORKCANVASのLPのマークアップに携わりながら身に付けていきました。


　HTMLとcssのセレクタに関しては完璧を目指さなくても(正直調べたら出てくるしゴニョゴニョ)くらいの気持ちで勉強をしていました。それよりも大切なのは、ページの構造に配慮することなのではないかなと思います。その後の保守にも影響を与えるからというのももちろんですが、機械にちゃんと理解してもらえるようにという理由もあります。


####□javascript

　htmlとcssがそれなりにかけるようになった後、WORKCANVASでも採用されているJavascriptの学習をはじめました。まずはJavascriptの参考書を一冊を読み、その後ここでもまた「ドットインストール」と「プロゲート」を使いました。


　参考書に関しては自分の好みに合わせて選ぶのが一番だと思いますが、参考までに私は『確かな力が身につくJavaScript「超」入門』を読みました。


　ドットインストールでは、私は無課金の範囲で「はじめてのJavascript(全11回)」視聴しました。
　良かった点として動画コンテンツであるという点です。動画は自分の好きな速度で流せるのでペースを崩さずに集中して学習ができたり、通学時の電車に乗っている間や歯を磨いている時など、隙間時間にスマホで視聴ができました。
　その点では[Udemy](https://www.udemy.com)で良質な講座を視聴するのも良いのかもしれません。(有料なので私はケチりました。興味のある方はセールの時にでもどうぞ。)

　逆に悪かった点としては、動画の更新が遅く、古い情報も配信されているという点です。
　例えば私が視聴していた当時はすでにES6が策定されていましたが、const、letやアロー関数は動画になっていませんでした。現在は最終更新が2019年となっているようで、その辺は更新されているのかもしれませんが、私の経験を踏まえると更新頻度は低いのかなと思われます。ドットインストールだけではなく、こういったネットにある学習コンテンツを利用する場合は最終更新日と、補足情報を確認することが大切です。


　一方、プロゲートは有料版を利用していたのですが、テキストのように丁寧に解説実践を繰り返してくれる印象で、ドットインストールよりも基礎がかなり網羅されているので、0から始めるという方にはとてもわかり易いと思います。
　ただ私の場合、ドットインストールより後にプロゲートを使ったということもあり、少し知識がついてきてから使うと、かなり優しいところから教えてくれる点で逆に煩わしさを感じるほどでした。
　そういった点でも、プロゲートは0から始める方におすすめです。


　私は今回会社で使用しているからjavascriptの勉強から入りましたが、使用する言語は、求人に多いものを調べたり、自分の作りたいものベースで考えたり、学習コストで考えても良いと思います。自分にあったものを選んでみてください。


###○IT知識

　実際開発部に所属し、チーム開発に参加するようになって課題に感じたのは、自分のITに関する知識の圧倒的な少なさでした。ですがITと一口に言ってもアバウトすぎて手がつけられません。そこで私はまずITパスポートの資格と、基本情報技術者の資格の勉強をすることで、まずは全体感を掴みました。

　ITパスポートはITを活用する社会人向けの国家試験ですのでITの教養に近いのかなと思います。出題分野はストラテジ系(経営全般)、マネジメント系(IT管理)、テクノロジ系(IT技術)に分かれています。難易度もそんなに高くなく範囲が浅く広いので今後の学習内容の指針になるのではないのかなと思います。

　基本情報技術者試験はITパスポートをもう少し深掘った内容で、問題の問い方も難易度が少し高いように感じます。一番大きな違いは、午前と午後に試験が分かれている点で、午後の試験で出題される長文問題はより技術的な知識と思考が必要とされます。
　基本情報の中でもハードウェアに関しては普段開発をしているだけでは中々触れない分野ですが、技術者としては必須の知識になるので、少しでも触れられたことは良かったと思っています。


　資格に関して色々な意見があるとは思いますが、学校で勉強をしてこなかった私にとっては、資格の勉強は良いペースメーカーになったと思っています。
　目的はあくまで「知識を身につけること」だったため、資格取得を目的としないことは自分の中で意識していました。
今後はさらなる勉強を兼ねて応用技術者試験を受けたいなと思っているので、進捗がありましたらまたブログにしようと思います。(※予定)


　あとは、会社によってよく使われるIT用語などがあると思います。心の中で、略すな！日本語で喋れ！と思いながら、わからない用語が出てきたときは[こちら](https://wa3.i-3-i.info/)で影でこそこそ調べてリストアップしています。

###○おまけ

　最後におまけで先輩におすすめされて読んだ『「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか』は勉強し始めには少し難しかったので2周しましたが、開発の基礎の基礎であるサーバー・クライアント間のHTTP通信や、cookieに関して学ぶのにちょうどよかったなと感じます。解説でJAVAやPHPのコードが登場しますがそこに関して知識がなくても理解できるので初心者でも十分読めますよ！

###○おしまい

　まだまだ全てを掴み切れていませんが、私は基礎的な部分は以上のような感じでキャッチアップしていきました。初学者の皆様の参考になれれば嬉しいです。（きっとゴリゴリの技術系のお話は先輩方が書いてくださると思いますので、楽しみにしていてください。）

　ちなみにタイトルはキャッチーなので文系という単語を選んでいますが、実際文系理系は関係ないと思います！！私の就活のタイミングでプログラミングの勉強を始めた文系の先輩にも尊敬している方がいます。

　私もとりわけ頭が良い方ではないので毎日「私はなんてアホなんだ」、と凹みながらも日々精進しています。大事なのはインプットとアウトプットの量だと思います！！頑張りましょう！って書きながら自分に言い聞かせています！！！

　それでは次回からは私が入社するまでに取り組んだ自社の勤怠ツール開発について書いていきたいと思います。