未経験からフロントエンドエンジニアになって2年経ったので振り返る

いつの間にかフロントエンドエンジニアになって2年経ってたのでいろいろ振り返ろうと思います。

自己紹介

入社する前は大学院で生物の研究をしていました。いくつか理由があって研究はスッパリと辞めひょんなことからフロントエンドエンジニアになりました(ひょんなことからって便利な言葉ですね)

研究に比べ短いスパンで定期的に成果を積み上げていくウェブ制作はこまめに達成感が得られ、精神的にも健康でいられるので自分には合っていたのではないかと思います。要するにただの飽き性ですが……。ただせっかく面倒を見てくれた大学院の方々には申し訳ないという気持ちです。

上記の理由で、基本的に就活は自分に合っていそうなウェブ業界に絞っていました。UIデザイナーかフロントエンドエンジニアどっちかになりたいみたいな舐めた就活をしていましたが、ひょんなことからICSというウェブ制作会社にフロントエンドエンジニアとしての将来性を見込まれ(?)拾っていただき、ありがたいことに2年間業務を続けさせてもらっています。

これまで10案件くらいフロントエンドの仕事をさせてもらいました。案件の種類も様々で、いわゆる実用的なウェブアプリケーションだったり実験的なコンテンツ、はたまたコーポレートサイトのリニューアルみたいな仕事にも携わりました。人数も2, 3人でやるものから4, 50人関わるプロジェクトだったりと様々です。

また、会社で運営しているメディアにも8つの記事を投稿しました。毎回テーマ選びには苦戦しています。。。

ICS MEDIA

技術的な経歴

入社前

学生時代のプログラミング経験はほぼありませんでした。Unityでチュートリアルのコードを切り貼りしてゲームを作るも公開方法を知らないからローカルで遊んでもらうだけ、みたいなレベルでした。

就活を始めるにあたってHTMLやCSS, JavaScriptを勉強し始めました。あとAdobe PhotoShopとかAdobe XDも少し。基本的にはドットインストールやUdemyの講座をひたすら見て復習する、みたいな感じでした。

動画教材は結構好みがわかれるみたいですが、話者の抑揚や操作のキャプチャといった情報量はテキストに比べ多いため頭に入りやすく僕は好きです。情報の取捨選択はテキストに比べて苦手なので、学習効率という面ではちょっと微妙かもですが。

この時点では簡単なカルーセルくらいなら自作できるよ、という程度です。XDの自動アニメーションが楽しくて、プレゼン用のスライドもXDで作って無駄に派手なアニメーションを盛り込んでました。

入社後

入社後は既存サイトの写経だったりVue.jsの本をフムフムと読みながらコードを書いて動かす、みたいな基礎をやっていました。幸運だったのはそのすぐ後にVue.jsを使った案件に参加できたことです。よく実務が一番成長できるって言われるのは、割とハイペースで繰り返しアウトプットする環境がすでにある、というのが大きいと思っています。

その後は冒頭でも書いた通り、いくつかの案件を、その都度必要な知識をヒーヒー言いながら仕入れてこなしていきました。

フレームワークとしてはVue.jsが大半で最近はReactも使ってます。よく使うライブラリはPixiJSとThree.jsでアニメーションにはGSAPを使うことも多いです。バックエンドは全然触らないので知識がありません……(危機感)

そんなこんなで気づいたら2年経ってて、それなりに開発もできるようになってきたかなと慢心しています。

大変だったこと

喉元過ぎればなんとやら、ということで苦しかったことは覚えていても、何が苦しかったかというのはだんだん忘れかけています。わからない人の気持ちがわからない人にはなりたくないとは思っているのですが、ちょっとずつそうなっていくのかな、恐いなという気持ちです。(もちろんまだまだわからないことは山ほどありますが)

技術

個々の技術に関しては、壁にぶつかるたびなんとか壊してきたものの記憶が曖昧です。。。

目の前にある作りたいものに対して、どうやったら作れるかドキュメントを読んで調べて、とりあえず書いて動かしてみて、うまくいかなかったらまたドキュメントを読んだりググったりを繰り返してきました。

それでも上手くいかないことは数多くあったのですが、なんやかんや乗り越えられたのは社内の文化の影響もあるかもしれません。

- 社内で丁寧にプルリクエストをレビューする文化が根付いているので、レビュイーのときは明らかな誤りでなくても指摘してもらえた。レビュアーのときは綺麗なコードはこういうコードなんだ!というのがよくわかった。コードを理解するためにドキュメントもちゃんと読み込んだ。
- Slackで自分のチャンネルにわからないことを放流するとどこからともなく助言が飛んできた。
- Slackでtipsを定期的に発信してくれる人がいた。

あと、わからないことがあるときはどこを調べるか、という選択肢を早いうちに増やせたのが良かったと思ってます。検索能自体は学生時代に人並みに鍛えられましたが、正しい情報が集まりがちなプラットフォームというのは知らないと正しい情報にたどり着きにくいものです。まずドキュメントを読むとか、英語でも臆せず読むっていうのが正解と早めに知れたのは大きかったです。

知識

技術に関しては独学でもなんとかなる場合が多いですが、「ウェブ制作一般常識」みたいななものは業界に入らないとほぼ身に着かなかったと思います。メタディスクリプションって何?みたいな。僕も結構知らなくて恥ずかしい思いをしたことがありました。まぁ恥ずかしいで済めば御の字なのでどんどん恥かいていきましょう。

言うまでもないですが、知識マウンティングは知らないより恥ずかしいのでやめた方がいいでしょう。

実務が一番成長できるってホント?

「実務が一番成長できる」とよく耳にしますが、これに関してはその通りかなと思います。ところで成長ってなんでしょう?

「エンジニアになりたい」と目標を掲げる例は数多く見ますが、これは「立派な人になりたい」と同じくらいの曖昧さだと思っています。

ゴミが落ちていたら拾う、お年寄りに席を譲る、そういった行動をすれば立派な人になれるみたいな知識をいくら身に付けてもそれは「立派な人に詳しい人」でしかありません。落ちてるゴミを拾ったり、その他立派な行動を積み重ねたらいつの間にか立派な人と呼ばれる人間になっています。

エンジニア、というか資格の要らない多くの職業は同様だと思います。人間は行動によって規定されます。例えばエンジニアはJavaScriptが書けてDockerが使えて~みたいなことを知っていてもエンジニアに詳しいだけの人なので、実際に目的をもって何かを作り始めるのがはじめの一歩かなと思います。

その上で、興味があったり要件を満たすような、より具体的な個々の技術に関して広く、深く使えるようになっていくというのがエンジニアとしての成長なのかなと個人的には思います。

ちなみに基礎をおろそかにしてでも実践に行け!ということはまったく言っておらず基礎はさっさと終わらせて実践の中で身につけろ!ということなので、何の知識もないけど実務やらせてください!はお互い不幸になるのでNGです。

……と偉そうなことを言っていますが、最近趣味で始めたblenderもYouTubeでtipsを見て満足しているだけなので自戒を込めて書いています。

閑話休題

ある程度の技術を身に付けることができたのは、実務に以下の縛りがあったからだと思います。

- 強制力がある点
- 期限が決まっている点
- ゴールが明確に決まっている点

恥ずかしい話、僕は理想のエンジニア像みたいのがあんまりないので、どの技術も目の前のことを一つ一つこなしていたらいつの間にか身についていたという感じです。望む望まないにかかわらず、何かを完成させる作業というのはそれだけの威力があります。

逆に言えば、上記の縛りを人工的に生み出すことができれば効率よく技術を身に付けられるでしょう。例えば学生なら仲間を集めてゲームを作ったり(コミケなどのイベントを目標にしたりしてもいいかもしれませんね)、サークルのホームページや身内用のツールを作ったり。もし一人でもTwitterで○○をいつまでに作る!と宣言して逐一報告してもいいかもですね(報告用のブログを作ったりすると一石二鳥でしょう)

自分は意志が弱いから……とクヨクヨしてしまう人もいるかもしれませんが、何かを始めようと思った時点で意志レベル100くらいあるすごい人だと僕は思うので、あとは仕組みや環境を工夫すればなんとかなるかもです。レッツトライ。

今後の展望

理想のエンジニア像がないというのは結構致命的だな~、と思いつつもスペシャリストタイプではないと自負しているので、今後どういった方向に進んでいこうかというところで岐路に立たされている3年目です。

もちろんフロントエンドの知識も全然足りてないので必要に応じて補充しつつですが、フロントエンドの仕事だけでなく、それと組み合わせてじわじわと領域を広げていかないとドン詰まりそうな気はしています。具体的なプランは皆無ですが。

ひとまずは目の前のことを着実にこなしつつ、いろいろなことを経験して好きなものを増やせるような生き方ができればいいなぁと思っています。

まとめ

いろいろ偉そうなことを書いてきましたが、現状があるのは運と環境がめちゃくちゃ良かったからだと思っています。神と周りの人々に感謝。

こんなことを言うといろんな人に怒られるかもしれませんが、人生において環境というのは死ぬほど大事なので、間違ったと思ったらサッサと変えてしまうのが理想だと僕は信じています。

「未経験」とはともすればそれまでの人生をなかったことにして新たに始めるみたいに思われがちですが、それまでの人生の蓄積というのは必ず活きてきます。仕事でも、趣味でも、未経験という呪いに臆さないようにしましょう。

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