見出し画像

文系大卒からwebエンジニアになった話

今回は文系大卒の私がどうやってwebエンジニアになったのか、3年働いてみて実際どうなのかを赤裸々に書いてみたいと思います。
少しでも、同じように進路に悩んでいる学生さんやフロントエンドエンジニアを目指している方々の参考になれば幸いです。

【就活期】

外国語学部系の文系大学に通っていました。
第一希望は航空系、中でもCAや総合職を狙っていましたが、就活準備が本格的に始まる大学3年の2月ごろ、コロナ禍に突入しました。 世の中に混乱が包まれてきた最中、3月末で続々と採用中止の連絡が。。
ほぼ航空系しか考えてなかった私は、泣く泣く業界変更をせざるを得ませんでした。
「これからの時代は手に職だ!」「家でも働けて、今後のライフイベントにも柔軟に対応できるホワイトな会社!」と思い立ち、IT企業かつ未経験からでも入れる会社に絞り、就職活動を行いました。
運良く(?)web系の会社から内定を貰い、そのまま就職に至ります。

入社前にあった内定者インターンシップで初めてHTMLとCSSを触り、デザインカンプを元にページを作ってみるという課題を行いました。
HTML?CSS?何それ美味しいの?からのスタートで、何の知識もなく、とりあえず見様見真似でコーディングをしてみました。
今思い返せばかなりガッタガタで見るに耐えないようなページではありましたが、もともと何かを作ったりするのが好きだったこともあり、形になるのが嬉しかったのを今でも覚えています。

【1年目】

*業務について

入社後1ヶ月の新卒研修を経て、ECサイトを制作するチームに配属されました。
未経験者向けの講座・研修を同時進行で受けつつ、案件ではページに使用されるボタン等のパーツ制作であったり、既に運用のベースが作られていて初心者でも難なく回せるような案件など、難易度が低めの業務から徐々に入っていきました。
小さい部分でも、自分がコーディングしたものがwebサイトとして世に公開されるのが感動的でしたし、その感覚は今でも変わらずです。

入社前から分かっていた事ではありましたが、専門学校や高専等を卒業し、既にバリバリできる同期達が周りにたくさんいたので、スタートが既に遅れている焦りもありました。

とにかく1年目は勉強!1人でコーディングができるようになる、ということを目標にしました。

*自己学習

①インプット:色んなサイトを見まくる
これは今も続けていることではありますが、流行のwebサイトを知ること、自分のコーディングの引き出しを増やすことを目的として、色んなwebサイトやソースコードを見るインプットを行いました。
良いと感じた点や、どうやってコーディングされているか、自分だったらこう組むな等の改善点をスプレッドシートに書き出してまとめていました。

自分で書く実践も重要ですが、初学者はまず
・どうやってコードを組めばいいかを知ること
・先人達が書いたソースコードをたくさん見て、良いところを盗むこと
・勉強しながらある程度知識がついた上で、どこにもっと改善の余地があるか自分なりに良し悪しを判断できるようになること
がとても大事だと思います。
どのように勉強したらいいか分からない方、迷っている方に、ぜひやってみてほしい方法です。

②アウトプット:Progate・模写コーディング
Progateで触りの基礎を勉強し、その発展系として模写コーディングを行っていました。
業務の合間を縫って先輩によくコードレビューをしてもらいました。やはり実務を行っている先輩からのアドバイスがあることで、理解も深まりますし、1つのパーツを作るにも色んなコーディングの方法があるのだと知るきっかけになりました。

③資格
下記に記載しますが、1年でwebデザインやディレクション、情報基礎等色々なジャンルの資格を取得し、徹底的に基礎を叩き込みました。

色々やった結果...ある程度初心者に毛が生えた程度には成長したと思います。
自分が作ったページが少し動くだけでも嬉しくて、それだけで満足でしたね(笑)

*使用できるようになった言語

・HTML:レベル1(とりあえず基礎が分かったかなぐらい)
・CSS:レベル1(調べながらどうにかこうにか書ける)
・sass:レベル1(CSSと同レベルぐらい)
・node:レベル0.5(訳わからんが教えてもらってなんとか使える)

*1年目に取った資格

・Googleアナリティクス個人認定資格
・ITパスポート
・webデザイナー検定ベーシック
・webディレクション検定
・HTML5プロフェッショナル認定試験レベル1

【2年目】

*業務について

1年目とは異なる、記事を配信する運用チームに配属されました。
CMSという、コンテンツを管理できるシステムを使用してページを作成するので、コーディングはほぼ無い環境でした。
記事原稿(指示書)を元に、コピペでCMSにテキストを投入するというオペレーショナルな業務だったので、正直1ヶ月程で飽きましたw
コンポーネント(既に作られたテンプレのようなもの)を使用するので、ある程度HTMLやCSS等の知識は必要ですが、やっぱり自分でコーディングをする方が圧倒的に楽しかったです。

が、やっていくうちに作業が爆速になったり、2年目になると余裕が出てきて今までは気づけなかった指示書のミス・日本語の原稿のチェック等も合わせてできるようになりました。
業務の合間には、勉強がてらExcelで作られた指示書をVBAで自動化してみたり、スプレッドシートの関数などもかなり使えるようになりました。

半年ほど経った後、運用チームと同時並行で、CMSのコンポーネントを構築するチームでウェブアクセシビリティ(簡単にいうと、ウェブサイトを使用するすべての人が支障なく利用できるようにすること)の対応も兼務するようになりました。
W3CのアクセシビリティレベルA, AAの準拠が必要だったので、JavaScriptでaria-label等の必要な属性値を追加するとか、tabキーを押すことで意図した順にフォーカスが移動するようにするとか、細かな修正対応を行いました。

今思えば2年目になると、色々なウェブに関する知識がついたり、誰が見ても分かるコードを書くとか、今後の運用を考えて保守しやすいコードを意識するなど、1年目と比較するとより視野が広くコーディングができるようになりました。

*自己学習

2年目の前半は1年目より少し難易度が高い模写コーディングを行ったり、最低限資格の勉強は続けました。デザインにも興味があったので、Photoshopの資格も取得し、そこそこ使えるようにもなりました。

特に2年目の後半は複数のチームを兼務していたのでとにかく業務が忙しく、自己学習に時間を割く余裕はそこまでなかったですが、業務を通して周辺知識等を学び、スキルアップをしていたように思います。

↓その結果...そろそろコーダーと言えるかな?レベルには成長したと思います!(完全に筆者の体感です)

*使用できるようになった言語

・HTML:レベル2.5(タグの意味が分かった上で無駄のない書き方ができる)
・CSS:レベル2(たいていは自力で書ける)
・sass:レベル2(関数とかも使いこなせる)
・node:レベル1(どこに何が書いてあるかなんとなく分かる)
・ejs:レベル1.5(HTMLとほぼ同じ感覚)
・JavaScript:レベル1(自力では書けないが、何が書いてあるかなんとなく分かる)
・PHP:レベル0.5(ちょっとだけ触れた)
・正規表現(検索と置換が使えるように!)

*2年目に取った資格

・ウェブデザイン技能検定2級
・Photoshopクリエイター能力認定試験エキスパート

【3年目】

*業務について

色々な事情で毎年異動を重ねていますがw 3年目は1年目とはまた別のECサイトの特集ページを制作するチームに配属されました。
そこでは日本語サイトだけではなく、様々な国のサイトも一緒に量産する各国展開系の案件も実施しており、物量が多い上に納期が短く、スピードと正確性も求められましたし、実際にこなせるレベルにもなりました。

デザインやアニメーション等のギミックが凝ったページの実装も、ある程度1人でできるようになってきました。

年次が上がるにつれて、運用案件の制作リーダーや新卒へレクチャー等々業務範囲はどんどん広がりましたが、スキル的にもできることや自分で裁ける量が増えましたし、mtgではお客さんの相談にも乗れるようになりました。また、今や下の子に教えることができるのも自分の成長に繋がっているなと実感しています。

*使用できるようになった言語

・HTML:レベル3(人にも教えられる)
・CSS:レベル3(人にも教えられる)
・sass:レベル3(ファイル管理の方法等運用のしやすさまで考えられる)
・node:レベル2(カスタマイズとかできるようになる)
・ejs:レベル3(HTMLとほぼ同じ感覚)
・JavaScript:レベル2(ある程度解読できる、簡単なものは自力で書ける)
・PHP:レベル0.5(進化なし)
・正規表現(作業効率化にフル活用)

*3年目に取った資格

・ウェブ解析士

【まとめ】3年働いてみて

全く違う畑に思い切って飛び込んでみましたが、案外やっていけるものだな、というのが今の正直な感想です。(笑)
黙々と作業できる仕事が自分には合っていた、というのもあるかもしれません。

初手からゴリッゴリにプログラミングをするエンジニアを目指す場合は、論理的思考やアルゴリズムなど基礎知識が無いと結構大変かも(筆者はまだまだ苦手分野です...苦笑)しれませんが、
webの基礎であるHTMLやCSSはプログラミングとは異なるマークアップなのでパズルのような感覚でコーディングができるという点では難易度はそこまで高くなく、比較的とっつきやすいのかなと思います。

もちろん現状でもスキル的にはまだまだ足りないですし、これからもエンジニアとして働くためには日々勉強し続けなければいけないなと痛感していますが、まあそれはどんな職業にも共通して言えることだと思います。

この記事が、ウェブ業界を目指す方やキャリアに悩んでいる方の視野を広げられるきっかけとなれば幸いです。

最後まで読んでいただき、ありがとうございました!

この記事が気に入ったらサポートをしてみませんか?