業界の第1人者になるために。

最近は晴れてphperとして働いています。
全然腕のたつプログラマとは言えないのに、プログラムの時間を与えられて、コーディングで飯を食っているというのは、非常に恵まれていると思っています。

年はもう24歳(来週なります)なのに、このレベルのエンジニアなのは、本当に救いようのない事実です。
30歳になる頃に業界の第一人者として君臨することが果たしてできるんだろうか。
大体の尊敬するプログラマが『自分はプログラムだけで、勝負はできない』と言います。
僕からしてみれば、『あなたほどのプログラミングのスキルを持っていながら…』と思うのです。

でも、考えてみれば上には上がどこまでもいる世界。
世界中にあらゆる言語をあやつるプログラマが居て、さらにその言語の新規の開発まで行われている。
僕らのように現場で叩き上げられたプログラマがそこまで行けるとは到底思えない。

とすれば、プログラミングスキルで勝負しても、この世界の第一人者になるのは難しいわけだ。
だから最低限の技術にプラスして、何かを得なければならない。

そのプラスアルファは何になるんだろう。
なんとなく『あれが欲しいな』ってものは頭に浮かぶ。
でも、それを今から取りに行くよりは、まず目の前のスキルを上げることに注力する。
おそらく下記はどんな仕事にも共通することだけれども、ここを業界の第1人者になるために最低レベルまで上げる。

・パッション(やる気、気持ち)

僕自身はこれが一番大事だと思っているし、ここで負けたら自分みたいなヘナチョコは何もできないと思っている。
そして、これがすべての土台。パッションがなくなった時点で、成長の速度は格段に下がる。

仕事に貪欲であることは、何よりも大事だ。
常に前へ進む姿勢を持つ、めんど臭いことでも必ずやり遂げる。

仕事は絶対にやる。絶対に成し遂げる。
例え、長時間かかってしまってもいい。その時間をかけて成長する必要があるのだ。

・ナレッジ(知識、経験、技術力)

技術者としては、ここが特に評価の対象になるだろう。
もっと改善できる点はないだろうか?ということをひたすらに考える。
そして、日々それぞれを改善していく。

そういう経験の積み重ねが知識となる。
そして、その経験を糧にしてアウトプットを作る力が技術力になる。

ひたすら知識をインプットして、アウトプットの数を増やす。
そのアウトプットを出せるという力というのが技術力なのだ。

・賢さ(効率、論理力、立ち回り力)

仕事は常にいくつかの要素が複合的に絡み合い、それを解決していく。
技術力だけでは解決できないことにぶち当たる。

そこでの立ち回りであったり、論理戦法であったり。
時には騙し騙しやっていくことも必要かもしれない。

そのためには賢さが必要だ。
複雑なものを単純化する力やコミュニケーション能力もそこに入ってくるだろう。

僕は賢さが明らかに足りない。
でも、それで良かったと思っている。

この賢さがないから、僕は『お客さんにとってもっとも良いもの』だけを目指してプログラミングをしている。
もし、無駄に賢かったらそういうことができないかもしれない。

ただし、今後はこれら上記3つを最低限身につけていかなければならないだろう。
業界の第一人者になるために。