キャリアアップのためには本業以外も全力で
こんにちは。さくらインターネットで、フロントエンドエンジニアをしているダーシノ(@bc_rikko)です。
今は、本業に加えていくつかの会社で副業をしています。OSS活動にも積極的に取り組んでいて、2018年に開発したNES.cssというファミコン風CSSフレームワークは、GitHubのcss-frameworkトピックで4位のスター数を獲得しました。
出典:NES.css - NES-style CSS Framework
今回は、副業やOSS活動といった本業以外でのキャリアの形成について紹介したいと思います。私は時間ではなく技術を武器に世界と戦っていきたいと考えています。新人の頃に前職の部長に言われて強く心に残っている言葉があります。
「システムエンジニアは、肉体労働者ではなく知的労働者。だから頭を使って仕事をしなさい」
背景などをサクッと省略して説明すると、「仕事はコンピュータにやらせなさい、自動化しなさい」という意味です。この言葉を聞いてから「時間ではなく、技術を売る技術者になる」という目標を掲げていて、成果主義に身を置き続けたいと考えてきました。
成果主義は厳しい環境ですが、そこで生き抜くことこそがエンジニアのプライドだと思っています。だからこそ、キャリアアップのために副業やOSS活動にも全力で取り組んでいます。
世界4位「NES.css」を生み出したOSS活動
「NES.css」を作ろうと思ったきっかけは、苦手なCSSを克服しようとしたことでした。もともと「CSSが嫌い」「CSS設計わからない」というネガティブな意識を持っていたのですが、フロントエンドエンジニアとしてはCSSは避けては通れない分野です。せっかくなら楽しくCSSを学ぼうと思って開発したのが「NES.css」です。
ただ、実際に始めてみると、OSS活動で時間が際限なく溶けてしまい大変でした。1番多い時は一晩で30件もイシューとプルリクが送られてくるくらいです。
また、無視できないのが、お金の問題です。お金にならない上に運営工数だけ取られるため、一時期はメンタルがだいぶやられていました......。
とはいえ、「NES.css」が認知を得たことで良いこともありました。世界中のエンジニアから送られてくるイシューやプルリクはとても勉強になりましたし、自分の名刺代わりになるものができたので信用や評価を得やすくなりました。
今回の記事も「NES.css」を開発していなければなかったかもしれません。
あえて異分野の副業案件
私は、主に2つの副業をしています。
1つ目は技術記事の執筆。2016年に「Software Design」という雑誌でクラウドコンピューティングについて、最近では「エンジニアHub」で仮想DOMの記事を寄稿しました。自分で言うのもなんですが、フレームワークの裏側にまで踏み込んで丁寧に書いたので、仮想DOMについて学びたい方にはおすすめです(笑)。
2つ目はサービス開発です。フィンテック系のスタートアップで、Node.jsとTypeScriptを使ったサーバサイドでの開発を担当しています。
「フロントエンドエンジニアなのにサーバーサイド?」と思われるかもしれませんが、副業では本業ではできないものをやりたくて、あえてサーバサイドの仕事を探していました。同じ言語について、本業ではフロントエンドエンジニアからの視点、副業ではサーバーサイドからの視点を養うことができて、とても良い経験だと思います。
なぜ副業やOSS活動にも力をいれるのか?
本業以外の活動に力を入れるのはエンジニアとして成長するためです。
エンジニアとしての市場価値を高めるため
副業やOSS活動の一番の魅力は、市場価値を高められることです。正社員だと異動がない限り、同じ仕事をずっと続けることになります。それはそれで会社のドメインに強くなり、社内では重宝される人材になります。しかし、ひとたび外に出れば、社内での評価は関係ありません。
今でも覚えているのですが、現職の入社初日に社長から「いつでも転職できるようにスキルを磨いて、市場価値を高めてください。」と言われたこと。聞いたときはとてもびっくりしましたが、常に自分の価値をアップデートして必要とされる人材であり続けるべきという考え方は私も賛成です。そのような意識を持っておくためにも副業やOSS活動は役立つ思います。
最重要視するのは成長できるかどうか
単純な労働力の切り売りはしたくないので、副業した結果、自分が成長できる仕事のみを請けています。「お金」も大切ですが、自分がやってみたいとか成長できると思えるものは多少安くてもお請けするようにしています。
例えば、単発の執筆業は時給換算すると割の良い仕事ではないんです。人に教えるには3倍理解していないといけないですし、下調べや検証、再レビューに膨大な時間が必要です。しかし、大変だからこそ、自分の知識を再認識したり、足りない部分を補い深めたり、自分のことを知ってもらえるチャンスにすることができると思っています。
フロントエンド界隈のトレンドについて
変化の早いフロントエンド界隈でも最近は動きが落ち着いてきているのではないかと思っています。
2020年、トレンドは落ち着いてきている
ReactやVue.js、Angularは必須科目なので、どれかひとつは習熟しておく必要があります。加えてSPAの時代になってからクライアントサイドのコード量が増えており、TypeScriptもほぼ必須となってくると思います。
さらにReact、Vue.jsから派生してNuxt.jsなどありますが、こちらも注視していく必要がありそうです。
「フロントエンド界隈は流れが速くて」という話はあるあるだと思うのですが、2020年においては流れが比較的落ち着いてきており、さきほど挙げたように学ぶべきことの選択肢は限られてきたと思います。
今後ますます注目のキーワードは『インクルーシブ』
最近は、特にセマンティックマークアップやアクセシビリティに注目しています。
理由としては、WEB業界でパラダイムシフトが起こらない限り、長く使える知識であることに加え、インターネット利用者が増えていく中で、アクセシブル(インクルーシブ)なWEBサイトの必要性が今後ますます増していくからです。
2016年の総務省の情報通信白書では、インターネット利用者数は1億84万人、人口普及率は83.5%と発表しています。そして今後も利用者は増えていくと予測しています。
出典: 総務省|平成29年版 情報通信白書|インターネットの普及状況
利用人口が増えるほど、視覚障害のユーザも増えるので、その方たちにも開かれた、いわゆるインクルーシブなWEBサイトが必要です。これらの理由からセマンティックマークアップやアクセシビリティに注目しています。
付け加えると、セマンティックマークアップやアクセシビリティはW3Cの仕様書をガッツリ読む必要があり、難易度が高いです。これができる人の市場価値は、今後上がっていくと思っています。
市場価値を上げるための活動を!
個人的にはフロントエンドエンジニアになってからの数年は荒波に揉まれ消耗してしまいました。同じようにトレンドを追いかけて消耗しないように意識を低く保つことを心がけつつ、できるだけ寿命が長そうなものに注力しています。
ただ、エンジニアとして市場価値を上げ続けることは大切なことです。副業やOSS活動で、自分の市場価値を高めるための時間をとってみてはいかがでしょうか。