記事

コードで周りを動かせるエンジニアになろう

CAREER HACKさんというWEBサイトに掲載されている、エンジニアのキャリア論レポートが盛り上がっていると聞いてやってきました。

で、盛り上がっている論点は「技術以外のことも出来るように vs ゼネラリストなんて目指すな」と、「汚いコードでも稼いだもん勝ちってそりゃあんた」っていう2点なので、その辺書いてみたいと思います。

ゼネラリストなのかスペシャリストなのか

自分で論点を立てておいて大変恐縮なんですが、結論から言えば、スペシャリティのないヤツがどうやってゼネラリストになれるんだっていうのが僕の見解です。

まずは、自分の得意分野を磨くことが全てだと思います。プロジェクトの成功という目的を達成する為に何をもって自分が貢献できるのかってことが一番大切ですし、その貢献できるポイントなんてそうそう多くない。ライバルはたくさんいるんだから。まずは出る杭にならないと始まらないと思います。そこで芽を出す。芽を出していく中で、自分以外の仕事の意味というのが、自分の仕事を通じてわかるようになる。自分以外の仕事の意味を自分の仕事を通じて理解しているから、他人のやっていることの凄さもわかってくるし、自分の引き出しも増えていく。そうやってゼネラリストってのは生まれてくるんじゃないかと思います。なので、まずは牙を磨けっていう意見には大賛成。自分が何を持ってチーム・プロジェクト・社外に知られてたいのかっていう視点を時々でいいから振り返りたいよね。

また、自分の作ったアウトプットでビジネスをしたいと思っているのなら、重要なことが1つあります。前にもブログに書いたのですが能力が高くても仕事を請けることは出来ない - GoTheDistanceっていうこと。自分の能力が高くても、能力を買ってくれるのはその能力が分かってくれる人だけ。つまり、同業だけ。同業だけを対象にビジネスをやっても先がないわけですから、問題は自分の能力を注ぎ込んだアウトプットを自分を知らない人に売ることができるかどうかになります。スペシャリティがあるだけでは足りなくなる。なので、けんすうがその点を強く補完して話してくれている。アウトプットの技術的難易度・高度さっていうのは、さしたる意味を持ちません。それが問題になるのは、アウトプットが受け入れられてから。マーク・ザッカーバークが「Done is better than perfect」って言ってるじゃない。そーゆーことなんじゃないかなぁ。

汚いコードでも動作させることが勝ちなのか

スタートアップに焦点を絞れば、その通りです。PythonだRubyだなんてことはどーでもいい、目の前の道を開いたヤツが勝ち。なので、金山さんというチャラい社長さんに賛成です。

僕の事例で恐縮ですが、昨年の夏頃に利用していた徒歩圏内の倉庫が使えなくなり、色々あって10月末に某所に物流センターを構えることになりました。10月末には40ftのコンテナが数本入ってきます。1週間弱で本社と物流センターとの間で仕事が出来るシステムを作らなきゃ行けなくなり、確信犯的に非常にドブ臭いコードを書いて1週間で仕上げました。何がこれから求められるかわからないし、そこで仕事を回さないことにはこれからのことも決められないので、スピード重視で動くモノを用意しました。わかっているものだけを先ず作って何を改善するかを考える。Whatがブレるのが当たり前なら、スピード命でしょ。品質?そんなのWhatが変われば全部変わるから考えるだけ無駄。他人に納めるなら話は別。

その後、年明けから弊社の取り扱いアイテムが爆発的に増えてしまい「倉庫だけじゃなく複数の仕入先から商品を引く」ことを行うようになりました。倉庫にあるモノを出せば良いってもんじゃなくなり、業務の複雑さは飛躍的に上がりました。元が元なんで大改造も出来ずひょうたんツギのようにパッチを当てて運用でカバーという呪文を唱えて逃げていたのですが、今年のGWちょい前にこのままでは崩壊することがわかりました。ここまで聞くと「ほらみたことか、汚いコードを書いたからだ」って思うかもしれません。でも、求められるモノが違えば綺麗でも動かないコードになり、会社から見ればゴミにしかなりません。

ということで、これらの課題を解決して新しいステージに登るためには、ヒョウタンツギのコードを捨てて設計からやり直して全く新しいものを作るしかなかったので、GW明けから着手を開始して7月中頃に原型が出来ました。求める動作がほぼ確定したので、それから1ヶ月かけて徹底的にリファクタして機能は一緒だけど内部は別人のものを作り、8月にリリース。様々な仕入先からなる顧客の注文を今のメンバーで確実にデリバーできるようになり、売上もあがりました。

なので、僕は常々思うのはコードの汚さが問題になるのはコードでまわりを動かしてからでしょってこと。お仕事でやってる以上、自分の仕事の成果を元に誰かが動くわけです。誰の得にもならないものを綺麗なコードで作っても会社は回らない。自分が満足するだけなら額縁に入れて飾ればいい。でも、それって仕事とは言わない。

自分の価値を決めるのは自分以外の方々なので、エンジニアならば自分のコードで周りを動かしてみんなでハッピーになろうぜって思います。

あわせて読みたい

「エンジニア」の記事一覧へ

トピックス

  1. 一覧を見る

ランキング

  1. 1

    架空情報を使いワクチン接種予約した朝日新聞出版&毎日新聞 岸防衛大臣の抗議は筋違い

    諌山裕

    05月18日 14:25

  2. 2

    早くもウーブン・シティ開発に着手 にわかに信じがたい豊田章男氏の経営スピード

    片山 修

    05月18日 08:11

  3. 3

    マリエさんの枕営業告発が一瞬で話題から消えた2つの理由

    PRESIDENT Online

    05月18日 16:25

  4. 4

    「ワクチン大混乱」を招いたのは誰? 河野太郎の“突破力とスタンドプレー”に現場は困惑 - 辰濃 哲郎

    文春オンライン

    05月18日 10:23

  5. 5

    コロナ禍で取り残される「好きなこと」が無い人 誰かを責める前に行動せよ

    かさこ

    05月18日 09:02

  6. 6

    『週刊さんまとマツコ』はなぜそっちへ行った?残念な理由

    メディアゴン

    05月18日 08:21

  7. 7

    アドバイザリーボード・分科会と感染研は信頼に足るのか?

    青山まさゆき

    05月18日 08:20

  8. 8

    「オリンピックは中止すべき」の調査結果は正しくない〜統計はウソをつく

    新井克弥

    05月17日 14:16

  9. 9

    負傷者数半減は嘘?交通事故を物損事故として扱う警察の怠慢

    紙屋高雪

    05月18日 08:42

  10. 10

    「週6で働いて手取り15万円」「23時まで残業して月16万円」 低すぎる手取りに疲弊する人々

    キャリコネニュース

    05月18日 16:08

ログイン

ログインするアカウントをお選びください。
以下のいずれかのアカウントでBLOGOSにログインすることができます。

コメントを書き込むには FacebookID、TwitterID のいずれかで認証を行う必要があります。

※livedoorIDでログインした場合、ご利用できるのはフォロー機能、マイページ機能、支持するボタンのみとなります。