プログラマみたいなことして20年
僕のプログラマの始まりが初めて自分用のパソコンを買った(買ってもらった)1998年にあるとしたら、今年で25年ということになります。ただ最初の数年は独学でホームページみたいなものを作っていただけだし(掲示板のソースコードを読んだり、PHPに移植しようとしたりといったことはしてたけどその程度)、仕事になったのは概ね2003年から。そう考えると「20年」という方が盛り具合は少なくて済むかも知れません。
そんな20年を振り返ってみるに、最もプログラミングに興味があり最もモチベーションが高かった時期は前半の10年間にありました。今興味がないということは全くありませんし日々新しいことを学習し続けてはいますが、知識欲は以前ほどではない。出来れば持ってる知識と技術だけで仕事をしていきたいけどそんなこと出来るはずもなく必要なので学習している、そんな感じ。
モチベーションに見合わない自分
そしてそのモチベーションが高かった時期が、プログラマとしても社会人としても最もダメだったというのは我ながら非常に痺れることだなあと思っています。もちろんその時たくさんあがいたから今の自分がいるのだという考え方も出来るけれど、それは歳を取って長いスパンで物事を見ることが出来るようになったからであって、当時の頑張っても頑張っても報酬もスキルも上がらないという感じは、端的に言って泥沼だったなあと。
そもそもチームでの開発が今ほど出来るようになったきっかけは2017年に一緒に働いた同僚のおかげであって、それ以前の自分、「泥沼」当時の自分がやっていたことは今から見ると大変稚拙で頼りないものでした。地方都市で適切な環境や人に出会う機会がなかったというのが大きかったんだよなあ、、
後半10年で変わったこと
変わったことは色々ありますが、飲食店で「学ぶ」ことを学んだのは大きかったかも知れません。以前は自分が良いと思ったものだけを取り入れるスタイルでしたが、飲食店で働いたあとは「良い」と言われたことはまず取り入れてみるというスタイルに変わっていきましたし、そのことが組織やチームや人への馴染みやすさや仕事のしやすさに繋がっているのは明らかでした。プログラマとしての経験のおかげじゃないってのが面白い。
そうして余裕を持った状態でプロジェクトを見てみると、基本的な事を押さえつつ必要とされていることをその都度アップデートしていけば大抵の状況に対応していけるということがよくわかりました。テストを重視する環境ではテストを、スピードを重視する環境ではスピードを。特に最近はフレームワークベースで開発することが多いのでプログラミングの哲学的な部分は省略出来てしまうし、わかっているエンジニアとならコミュニケーションもしやすい。好みの衝突もおきにくい(そもそも僕は好みを主張しないようにしている)。
フリーランスとしていろいろな人と仕事をするようになってから、そういった感覚はさらに研ぎ澄まされるようになって、多くの人に評価される現状に繋がっていると思います。スキルや知識はプログラマとして絶対に必要な要素だけど、仕事をする上で本当に必要な要素はそれではなかったんだよなあ。なぜならスキルや知識は走りながら取得することもそんなに難しくないけれど、プロジェクトやコミュニケーションに関する考え方はその人そのものに直結していることだから。
これからもこの仕事を
「35歳定年説」とか言われているエンジニアの仕事をいつまで続けられるか自信ありませんが、かといってFIRE出来るほど収入があるわけでもなく、自分が出来ることを出来る限りやって出来る限り長く求められるようにするしかないわけです。あと10年ぐらいは働きたいなー。それぐらい頑張って貯蓄したら、住宅ローンを返して、小さな飲食店を開くぐらいの余裕は出来るかなあと夢想しているんですけど、どうかなー。人生そんなに上手く行った例しがないからなー。ま、ぼちぼちやっていきます。自分が出来ることを誠実に。結局、それですよね。