大学で4年間国語教育を勉強して、非常勤講師を2年、就職支援企業の営業職を半年やっていたド文系の私が、2019年に25歳でIT業界に入ってHTMLを勉強し始めてから、もうすぐ3年が経とうとしています。
勉強し始めた当初、MicrosoftとWindowsの違いもわからないほどパソコンに疎く、またTwitterとYoutube以外のほとんどのwebサービスを使用していなかった私は、できることもやりたいこともなくこの業界にきました。
ですがSESとして参画した全ての現場で大切にしていただき、また現在もバックエンドエンジニアとしてtoG(行政向け)サービスの開発等を行ったりと、割合それっぽく仕事をやってきたのではと思っています。
そんな私が思う、「できることもやりたいこともない人」が、初学者時代にやってよかったことと、ハマりがちな落とし穴、また3年目を終えようとしている今思う、初学〜3年目に大切すべきことを、一人前のweb系エンジニアを目指す全ての同志にシェアできればと思ってこの記事を書きます。
目次
そもそも:web系エンジニアを目指した理由
私はずっと特にやりたいことがなく、長い間仕事を何にするか悩んでいたのですが、就職支援企業の社長からもらった
「やりたい仕事がないなら、やりたくないことをやらなくていい仕事にしなさい」
というアドバイスを軸に、以下の3つの理由からweb系エンジニアに目をつけました。
1. 在宅勤務ができる仕事
「親が歳をとった時に、介護もちゃんとやりたいけど、介護のために仕事を辞めたくない」という気持ちがあり、週3程度在宅で対応できるような仕事をしたいと思っていました。
2. 失敗をたくさん経験しなくてもスキルアップできる仕事
教員や営業職をやっていた時代、不安に弱い私は、授業やお客様訪問を数こなし、場数を踏んでたくさん失敗して成長するべし、という風潮が苦手でした。
「自分の努力次第で、失敗の可能性を減らせる仕事」と考えた時に、プログラマとかエンジニアは、調査や勉強がそのままスキルになりそうでいいなと考えていました。
3. 初期投資の低い職人的な仕事
「手に職」系の仕事は、どうしても初期投資や環境整備コストが高い印象だったのですが、お金がなかったので「ネットに無料教材がたくさんあるらしい」と聞いてweb系にしました。
見ていただいてわかる通り、web系エンジニアになってから活きる動機は1つもありません笑
初学者時代にやってよかったこと
上述の通り、私はweb系エンジニアを目指す段階では、やりたいこともできることもありませんでしたが、そんな私が今思い返して、「これはよかった」と思った行動や変化がいくつかあります。
1. 楽しいことだけ勉強する
「未経験者歓迎!」というSES企業に愛想だけで滑り込んだ何もできない私に、教育担当は「コーダー→フロントエンドが良いのでは」と考慮し、タスクとして「HTML&CSSのテキストにあるサンプルをノールックで作れるくらい繰り返し書く」という指示をくれました。
でもテキストの1周目を終えて「飽きたな」と感じた私は、会社にある他のテキストやProgateのレッスンを片っ端からかじりまくり、一番楽しかったwordpressからのPHP-MySQLに一番勉強時間を割くようになります。
結果3か月後、会社にきた「とある大学研究室のLAN内に簡単なテストデータの蓄積システムを立てる」という依頼を、「教科書に書いてあることでできそう」と言って全て1人で成し遂げ、その功績をスキルシートに書いて現場に入ることができました。
初学の時代はとにかく「この言語が儲かる」「この言語が流行っている」「現場はこのスキルセットを求めている」などの情報に右往左往します。ですがやりたいことがない皆さんは特に、初めにいろんなものを触ってみて、一番楽しいものを自分で選ぶ、という流れをおすすめします。
「これ楽しいな」繋がりが、何もできないあなたを徐々にユニークな人材にするからです。
2. レスポンスの速度を上げる
私が現場に入った時、一番功を奏した努力は「レスポンスの速度を上げる」ことでした。例えば以下のような感じです。
- 教えていただいたことを、ナレッジにまとめて次の日共有する
- おすすめの本を教えてもらったら、次の週に感想を伝える
- 仕事を頼まれたら、とりあえず手をつけて、困難になりそうな箇所や、完了めどを早めに報告する
初学の時代、早さは素直さ、一生懸命さとして評価されます。
そして早さを大切にできるのは、重要な仕事がたくさん来ない初学の時代の特権だと思っています。
結果「あなたは一生懸命だから教えていて楽しい」と言って、ベテラン3人がかりでgitを教えてくれたり、TDDが好きな社員さんにE2Eの拡充PJに呼んでもらえたり、オブジェクト指向に造詣が深い社員さんがインターフェースやDIを解説しながらコードをリファクタしてくれたりして、それらの全ては、今でも私の貴重な財産になっています。
3. 師匠を見つける
やりたいことのない人にとって、学習や努力へのモチベーション維持はかなり困難な問題です。その問題に対して個人的に一番有効だったのは、師匠=憧れの人の存在でした。
私が最初に参画した現場には、普段はあまり仕事をしないものの(言い方)、大きなシステムを3日くらいでつくり、痺れるくらい綺麗なコードを書き、緊急時には誰よりも頼れるエンジニアさんがいました。
私は今でもやりたいことがあまりありませんが、あの人のように何にでも詳しくて、痺れるくらい綺麗なコードが書けるエンジニアになりたい、あの人にもう1回会った時に同じレベルで話をしたい、という気持ちを思い出すたび、頑張ろうという気持ちは再燃します。
かっこよくて素敵なエンジニアさんは全ての現場に、あるいは今の時代ならネット上にもたくさんいます。やりたいことがないのであれば、そういった素敵な人を見つけて、真似をするところから始めてみるのも良いと思います。
ハマりがちな落とし穴
できることもやりたいこともない人がハマりがちな落とし穴もいくつかあるので紹介します。
1. ない夢を持とうとする
上記で「楽しいことだけ勉強すればいい」と言っていた私ですが、初めの頃は、学びたい技術も言語もなく、25歳で勉強を始めた焦りもあって、勉強すべき内容をYoutubeで調べたり、自分を追い込むためにオンラインサロンに加入したりしました。
そしてそこで「1ヶ月で作ったアプリが好評です」「大学生で勉強サイト運営してます」「年収xxx万です」というキラキラした人を見るたび、「なぜ私にはこういうサービスを作りたいとかタワマンに住みたいとかの明確な目標がないのか」と焦る気持ちばかりが募り、「頑張っても高が知れている」と逆にやる気をなくしたりしました。
あたり前のことなのですが、ない夢を無理に持とうとしたり、やりたくもないことを頑張ってみたり、必要以上の年収を急いたりする必要はどこにもないばかりか、かなり無駄な労力になります。
気持ちではなく仕組みで、無理なくモチベーションの高い人と同等の時間努力を積み重ねていける環境の設計に頭を使うべきだったなと思います。
2. 勉強しなきゃいけない(ぽい)ことを少しずつかじる
できることが増えてきて、チームにおける役割が拡がってくると、今度は「勉強しなきゃいけない(ぽい)こと」がぼちぼち発生してきます。
バックエンドならやっぱりインフラもわかるべきではとか、現場で使用されているCI/CDツールへの理解を深めなきゃとか、プロダクトの設計のためにIAの視点を学ばねば、とか。
現場に具体的な課題が発生していて、それに対応するために要所を学ぶのであれば別ですが、「なんとなくやらなきゃ」で始めた勉強は、意思がないためゴールがなく、ゴールがないため「やり終える」ことができず、何も終わっていないので自信にもつながらず、何も成し遂げていないのでエンジニアの価値としてのインパクトにもなりにくいのでおすすめしません。
私は2~3年目にAWSやk8sやセキュリティやデータベーススペシャリスト試験の勉強をなんとなくで10〜30時間勉強しましたが、何の実にもならず続きもせずほとんど忘れました。
できることを増やそうとした真面目さ故、そしてやりたいことがなかったが故の努力でしたが、サービスにあった方がいいと思う機能を仮実装してみるとか、開発の成果を証明するためにGAのディメンションをさまざまいじってレポートにまとめるとか、そういった意思と終わりのある小さな工程を設ける方がずっとずっとベターだったと思います。
3. 仕事を量こなそうとする
これは特にこの1年の反省です。
できることやチームにおける役割が増えてくると、仕事が無限に存在するようになります。
仕事はやればやるほど上長からの評価が上がったり、チームから頼られたりするので、できることもやりたいこともなかった私は嬉しくなって、すごく頑張ってたくさんの仕事をするようになりました。
ただその結果、レスポンスの速度は落ち、勉強のための体力や時間が減り、成長率は目に見えて勢いを落としました。
それだけではなく、これは個人的な考えですが、「頼まれた仕事」は、すでに自分の技量で対応できる範疇のものだったり、すでに対応方針の決定している課題がほとんどで、それを対応する人に求められるのは「決められたことを決められた通りにやること」、つまりやればやるだけ代替可能な存在に近づくものなのではと今は感じています。
経歴が長いわけでもないのに、ハードへの深い理解があったり、ビジネス視点での思いがけないソリューションを提示したり、多領域への実用レベルの知識があったり、そういった代替不可能でユニークなスキルを持っている人は皆、「頼まれた仕事」からは外れた、業務的には「無駄な」努力の時間があるはずです。
もちろん仕事をできるだけやるな、ということではなく、「頼まれた仕事」から得られる成長もめちゃくちゃたくさんありますが、意思のない仕事のために、自分の時間を削らない方が、結果としてあなたのユニークさと、あなたにしかできないチームへの貢献の幅が広がって、自分に自信が持てるのではと思っています。
これは最近めっちゃ思う。自分の思想がない激務をいくらこなしてもそれは本当の意味での自分のキャリアにはなはないと思う。ただ忙しかった人。よく耐えた人でしかない
— メン獄さん (@uudaiy) March 4, 2021
できることもやりたいこともない人が初学〜3年目に大切すべきこと
できることもやりたいこともないけど一人前のweb系エンジニアを目指して頑張っている人の多くが、【社会的に評価されるものを目指す】か【周囲から期待されるものを達成しようとする】のどちらかに陥りがちな気がします。
でもその先にあるのは、内的動機がないが故の頑張りの持続性なさだったり、代替可能なスキルセットだったり、それらが故の永遠の自信のなさだったりするかもしれません。
それよりはどうか、1つ1つの成果と楽しさを大切に積み上げて、皆さんらしいユニークな軌跡と到達点を目指してもらえるといいのかなと思います。
私は私にしか語れない話を増やせるよう努力しながら、皆さんが皆さんにしか語れない話を聞かせてくれるのを、楽しみに待っています。