エンジニアの副業について、あるいは僕の感想と抱負
エンジニアとしての特性と向き不向き
いきなりですが、単純に同じスキルレベルでの比較です。
特化型のエンジニアは副業に向いています。
特化型とはフロントエンドを本業で触っていて特にReactをつかったSPA開発やチューニングができるとか
バックエンドをメインとして本業と同じ言語で書かれたAPIの開発をするという人をさします。
逆にいわゆるバランス型はあまり副業に向きません。(もちろん習熟度が特化してるエンジニア並みにとくいな領域があれば別)
ぼくのように節操なく様々な言語でAPIを開発し、自分のアプリのインフラを整え、フロントエンドもゴリゴリやる。
でも得意な言語は特になくカバー領域がひろいっていうタイプは副業エンジニアとしてあまり向いているとは言えないと思います。
なぜバランス型が副業にむきづらいのかを説明していきます。
有限リソースをどうやって運用していくか
人間のリソースって当然ながら有限です。
- 集中力
- コンテキストスイッチの回数
- 時間
- コミュニケーション
副業としてプロジェクトにかかわっていくにはこの辺が絶対的に必要です。
しかしながら、バランス型で問題箇所を積極的にジョインしてつぶすよってエンジニアは
コミュニケーションのコストが当然それだけ発生するしフロントからバックエンドにきたら言語的なコンテキストの変換が必須になります。
スペシャリティをもって限られた時間の中でバリューを出し、自分のメンタルやインプット時間を確保するのは
想像よりも大変です。
また、本業に振り回されにくい働きかたをしているかも重要です。
定時があったり、ビジネスサイドの都合に合わせてワーク時間を制限されるタイプの働き方が上記にあわせて襲ってくると
自分のメンタルや体力を保つことがとても大変になってきます。
この有限リソースの運用にどれくらい外的な要因やイレギュラーを挟ませないかがとても重要であり、成果に直結するといっていいでしょう。
まとめ
- 有限リソースを運用して今よりも技術とお金の両面が上がるなら副業は積極的にすべき。
- 前提本業でめしが食えることが大事。
- 特性にフォーカスしてしまったけど本当は環境なのかもしれない。
この1ヶ月の感想はこんな感じです。
結論からいえばもっと自分の軸足になる領域で出せるバリューの幅を広げながらカバー範囲を広げるべきだと思いました。
今のぼくには軸足にできる領域と自分が好きな領域、使える言語と需要が高い言語の4つがうまくかみ合わず失敗したなと思いました。
コードに向かう量は格段にふえたので問題の全体像を掴んで最短で解決することや
言語、環境へのアジャスト能力はあがったなとおもいます。
触れる言語の幅も色々な働き方も見られて個人的にはとても刺激的でした。
案件をうけなかったこの1ヶ月は心の平穏はもどってきたし、本業のつらみが爆発した時期に案件を抱えていなくてよかったなとおもいました。
副業になにを求めるのかって人それぞれだけど
- 出せる成果
- リソース
- 副業に望むもの
- 環境
この4つのバランスを上手に取るのが良い関わりかたなのではないでしょうか?
これから副業したい人、副業メンバを欲してる人の参考になれば幸いです。
ここからは自分が好きなサーバーの開発に軸を置きつつ副業にかかわっていければいいなと思います!
Ruby / Go / Java / Scala / TypeScript
での開発は大歓迎です。専門の人には適いませんがコンポーネントセットがあればReact/Reduxの開発もできますので興味があれば誘ってください。