しばらくMLOps周りを耕そうかと思ってる

世間はコロナは終わったことにして、何事もなかったかのように動き始めた。それに合わせて少しずつ日常が戻ってきた。

2023年もいろんなことがあったが、個人的に精神的に一番ダメージが大きかったのは、8月にHashiCorpのライセンス変更により、TerraformがOSSでなくなってしまったことだ。なんだかんだOSS活動であるというのはアイデンティティであり、自分の中では思っていたよりも重要だったらしい。プロプライエタリなものにボランティアで貢献するというのは説明が難しい。とはいえお仕事でOpenTofuにコミットするほどの必然性もなく、突然道が途切れてしまったような感覚で、これを書きながらも、自分はなんだかんだうまく消化しきれてないんだなと思う。OpenTofuはフルタイムコミッターを雇っているが、もちろん国内にはそんなお仕事はなく、去年も書いたとおり、国内からやるには時差と業務委託の話から先には行けない。そこで道が途切れている。昔は専門性を極めるほどキャリアは広がると思っていたのだが、実際には専門性を極めすぎるとそれを活かせるキャリアというのは狭まっていくんだなということを再確認した。

2023年は世間的にはもちろん猫も杓子もChatGPTの年であった。私が言うまでもなく、一過性のブームではなくあきらかにキャズムを超えた。今のお仕事は構造的にAIに食われていく分野であることや、社内で主席という肩書が付いて色んな人から意見を求められる立場になったことで、AIを専門外として無視することは難しく、少なくとも今の仕事を続けるのであれば向き合っていかざるを得ない状況となった。他の選択肢として、SREの先はPlatform Engineeringなのだが、これも今の会社の規模では過剰で、とはいえメガベンチャーに行ってやりたいかというと、結局は社内政治のような仕事にしかならんよなというのがやる前から見えてしまっており、あんまりPlatform Engineering方面を耕そうという気にはなれなかった。

本当はOSS活動をもうちょっとやりたかったんだろうけど、前述の通りなかなかそれも難しい状況で、消去法的に年の後半はMLOpsを耕すことにした。いきなり生成AIに行かずにMLなのは、生成AI界隈をウォッチしてるとやってみた以上の成果を出しているのは、これまでMLに何年も投資してきた人や会社だし、多少遠回りでも順番にある程度体系化されているMLを先に学んだほうが応用が効きそうという判断である。とはいえデータサイエンティストやMLエンジニアになる気はあんまりなく、SREの知見を活かしやすそうなMLOps周りから攻めるのがよいかなぁと思ってる。データサイエンティストは大学から供給されるが、ソフトウェアエンジニアリングはできないので、実際のシステムに組み込んで運用していく部分は勝手には供給されない空白地帯である。またML関連を勉強し始めてわかったことに、かなり前提知識が必要で、参入障壁が異常に高く、日米の情報格差も大きく、技術力が競争力につながる分野である。あと高い給料をもらうのに、守る仕事よりも付加価値が分かりやすく、会社の方向性にアライメントしやすいというのもある。次の10年何しようと考えたときに、AI/ML関連への投資は続くだろうし、アーキテクチャ的な仕事をするにしても、自分で作ったことがないと勘所がないのは厳しそうというのもある。自分に配られた手札と戦況を見ると妥当な結論というかんじなのだが、まぁこんだけ理由を並べないといけない程度には、まだ自分を納得させられてないというか、純粋なおもしろさをまだ見つけられてないんだろうなと思う。

ただML関連はまったくの専門外で、すぐに成果が出ないのもわかってる。なので、最近は社内では技術顧問のような仕事をするなどして、過去の信用貯金を切り崩しながら、余った時間で新しいことを学ぶというかんじでバランスを取っている。

そんなこんなで年の後半はだいたいPythonを書くなどしていた。個人的にPythonあんまり好きではなかったのだが、どうやらその理由はググって出てくる記事の民度の低さだと気づき、ちゃんと公式ドキュメントやらGitHub Issueなどの一次情報を見に行けば、そこまで毛嫌いするほどでもないかなと和解しつつある。過去の歴史的経緯による微妙な文法は、慣れればまぁそういうもんだと思うようになるだろう。

というわけで、しばらくMLOps周りを耕してるうちにそのうち楽しくなってくるのかなというのに期待しつつ、とりあえずインプット偏重で行こうかなと思ってる。

メモリダンプ

毎年恒例の生存報告のような年賀状のようななにかを書く。

世間はどうやらコロナとの戦いには終わりがないらしいということに気づいて、アフターコロナではなくウィズコロナなどと言いはじめ、なんとなくで対策を緩和し始めた。生きてるだけでエライはずだったのに、どうやらこの状態で何某か前に進まないといけないらしい。人生はつらくきびしい。自分一人ならなんとでもなるが、家族がいるとなかなかリスクが取りづらいのだが。子供ができてからここ数年、時間的、精神的、体力的な余裕のなさで毎年しんどいと書いてるが、どうやら今年もまだピークは折り返していないようで、とりあえず体調を崩さないようにだけ気を付けている。

仕事は相変わらずだが、今年はOSS活動ではかなり無理をしていろんなことをやった。HashiCorpのCore Contributorに選ばれたのはどちらかといえば去年までの成果がようやく認められたという側面が大きいのだけど、目に見える成果としての象徴的なものでうれしい。それと前後して海外のいろんな人から声をかけてもらえるようになった。表向きのOSS活動としてはAWSプロバイダv4のアップグレードツールを書いたことだが、ちょうど本業の忙しい時期と重なってしまい、前半はほぼ睡眠時間を削ってやってたので、なかなかタイムリーに提供できなかったことが悔やまれる。こちらがフルコミットできない状況では、なかなかAWSプロバイダチームの中の人との距離感も掴みづらいかんじで、もっとうまくやれなかったのかなぁというのが正直なところである。あとアップグレードツールの話の日本語の解説記事を書いたら予想通り反応が薄くて、日本のコミュニティ向けに積極的に情報発信するモチベーションも失ってしまい、イベント登壇のお誘いも断ってしまった。ごめんなさい。自分の興味関心事がマニアック過ぎて、まじで日本では需要がなく、時間は有限なのでもうちょっと自分のために時間を使おうと思った。

ちょうどこの頃と前後して、OSS活動を評価してくれたいくつかの海外の会社から声をかけてもらい、そのうち1社のお手伝いをちょっとだけしてたのだけど、そもそも絶対的に時間がない中で、基本睡眠時間を削って短時間かつ英語で設計とかコードレビューをするのは本当にしんどかった。ちょっと無理しすぎて体調を壊した。DeepLとGrammarlyを課金して英語の読み書きのスピードは多少上がったように思う。ただ体力的に相当厳しかったので、あまり長くは続けられなかったのはちょっと申し訳なかった。英語の環境で働くとこんなかんじなんかなというのがわかってよい経験ではあった。

いろんな人から打ち合わせしようぜというお誘いをいただくことも増えてきて、そのたびに、わし英語読み書きはなんとかやってるけどしゃべれないんだわーというのが申し訳なく、オンライン英会話もちょっとだけはじめた。とは言っても基本的に現在の生活サイクルに全然空き時間はないので、仕事の合間を積み上げてなんとか週1回20分捻出するのが限界で、毎日ではなく週1でそんなので上達するはずもないのだが、とりあえず何もしないよりかはマシかぐらいの気持ちで、しばらく低空飛行でやろうとは思ってる。とはいえ、働く上でしゃべれなくても読み書きできれば十分だよと言ってくれるところもいくつかあり、英語がしゃべれる凡人よりも、特殊な専門性を持ってるほうがチャンスはあるんだよなというのも実感した。なのでコーディングテストのための勉強みたいなのは全然やる気が起きないままで、こちらは進捗が無だ。

あと英語は結局スキルなのだが、日本に住んだままグローバルな仕事をするための課題はもっと他にもあり、時差と法律はどうしもないなという思いを強くした。多くのソフトウェア企業はリモートワークを認めていても、USやEUタイムゾーンで働けることが条件になっていることも多く、日本からだと昼夜逆転してしまうので体力的にかなり厳しい。タイムゾーンの指定がなくても、現実的にメールが1日1往復みたいな環境だと、なかなかスピーディーに物事をすすめることはできない。あと日本に現地法人がないと正社員として雇うことが難しく、業務委託契約みたいな形で個人で受けることは可能なのだろうけど、そろそろ家も買わないとなとか思っていることもあり、個人事業主になってフリーランスとかになっちゃうとローン組むのが難しくなっちゃいそうだよなとか、いろいろ思うところはあり悩ましい。日本法人があると言ってもセールスしかないみたいな会社も多く、それなりに大きな会社じゃないとそもそも日本でソフトウェアエンジニアを雇っていないようだし、最近は不況でリストラしまくってるしで普通に日本資本でグローバルなマーケットと戦っている会社の方が現実的なような気もしてる。まぁその場合は給与水準も日本並みになってしまうので、あんまり意味ない説はある。

前半かなりストイックにOSS活動してた反動で、後半はほとんど何もやる気が起きず、ちょっと燃え尽きていた。代わりにもうちょっと家族のために時間を使おうと思って、10数年ぶりにペーパードライバー講習を受けてきて、カーシェアを借りて週末だけたまに車を運転するようになった。都会の移動は大人だけなら車なくても困らないのだが、ちびっこが2人もいるとさすがに厳しいなと思うこともあってなのだが、結果として行動範囲が広くなったのはよかった。まだ恐る恐るなのでそんなに遠いところまでは言ってないのだが、選択肢を増やせたのはよいことだ。とりあえず人にぶつけないようにだけ気をつけている。

あと時間がないからこそ仕事と関係なさそうなことも勉強しないとつまんない人生だなとなりそうなので、年末はWebAssemblyの本とかを読み始めた。何に使うのと言われても正直よくわからん純粋な好奇心なのだけど、最近効率を求めがちだったので、こーゆーのなんの役に立つのかよくわからんものを学ぶのも久しぶりだなという気もしてる。仕事はやんないといけないことと、できることと、やりたいことが一致しなくて久しい。周りから見ると好きなことやってるように見えてるかもだけど、これでも本人はだいぶ気を使っているつもりだ。そもそもWebサービスを作りたいのかと言われてもそれすら怪しく、Webサービスを構成する上の要素技術に興味があるだけで、この界隈にいると無限に新しいおもちゃが出てくるので居心地がよいだけで、Webサービスそのものにはあんまり興味もない気もする。こーゆー生き方をしてると、会社の評価軸と個人のモチベーションが同じ方向を向かなくて悩ましいのだが、そんなん知らんしぐらいの気持ちが必要なんだろうなと思う。

絶対的な時間がない事実は変えられない以上、他者と比較するのはつらいだけだ。というわけで、今年は自分は本当に何に興味を持てるのかをよく観察し、好奇心をもっと大事にしたいなと思うのでした。と雑にまとめる。

生存報告

毎年恒例の生存報告を書く。と言いつつ、どちらかというと自分に当てた手紙のようななにか。ちょうどさっき去年書いた記事を読み返してて、1年前の自分とびっくりするぐらい課題意識が変わってなくて、成長が感じられない。というか時間が止まっている。できるだけ去年との差分について書いてみる。

私生活は上の子が幼稚園に上がり、下の子が保育園に入り、奥さんが仕事に復帰した。都会で共働きで子供二人育てるのまじで無理ゲー感があるのだが、コロナのせいでいろんなことが制約されてさらにつらい。リモートワークじゃなければ破綻している。毎年時間がなくてしんどいということを書いてる気がするが、もちろん去年よりもさらにしんどくて、まじでこんな生活続けてると体壊すわーというかんじである。あまりにしんどすぎて月1で仕事を休んで平日に近所のスーパー銭湯でマッサージを受けるぐらいの適当さでなんとか生き延びてる。ただ下の子が小学校に上がるぐらいまではしばらくこんなかんじな気もするので、人生の中で今はこーゆー時期なんだと自分に言い聞かせて受け入れるしかない。通勤がなくて運動しなさすぎなので、もっと休んでお散歩した方がよいかもしんない。

仕事はというと、相変わらず人の出入りが激しく、結果的に自分の守備範囲は増えていく一方で、やりたいことよりもやらないといけないことに追われててなんだかな感はある。それぞれのテーマに絞ると何某かの楽しみは見いだせるのではあるが、果たしてそれが自分のやりたいことかと言われるとどうなんだろうみたいな。立場上、意見を求められることも多くなり、意見を求められると基本的に正論を言いがちなので、結果的に自分の首を締めているような気もする。思ってることの半分ぐらいしか言わないのがたぶん大人だし、もっと意識低い系を目指したほうがよいかもしんない。

OSS活動は細々と既存のものをメンテしているが、あんまりまとまった時間が取れず、まじでモチベーションを維持するのが難しい。自分が何に楽しみを見出すのかそろそろ新しいネタを模索した方がよいかもしんない。

無理やりまとめると、要は気持ちの持ちようで、解釈は自分の側にあるってことが救いである。まぁ死なない程度にゆっくり行こうぜ。やっぱり去年と同じことを言ってるような気もする。

Slow down everyone. You're moving too fast.

このブログも1年に1回更新みたいな頻度になっており、誰かに向けた生存報告の年賀状のような、1年後の自分に宛てた手紙のような感じである。それでも過去分を読み返したりすると、このときこんなこと考えてたんだな〜と興味深いので(?)今年も書いてみる。

今年は二人目の子供が生まれたり、新型コロナウイルスパンデミックがあったりして、本当にいろんなことがあった。というか正直疲れた。それでも家族みんな大きな病気もせずに、なんとか生き延びた。それだけで100点満点である。それ以外は全部誤差である。

3月ぐらいちょうど下の子が生まれるタイミングでコロナやばいみたいな雰囲気になってきて、当初の予定を変更し、実家に頼らずになんとかすると決めて、下の子が生まれたタイミングで育休を2ヶ月ほど取った。子供2人というのは2倍じゃなくて体感3倍ぐらいしんどい。次から次から休みなく育児や家事に忙殺され休憩時間が全然ない。慣れない料理をしたり自分ができることはなんでもした。4月になって緊急事態宣言が出て、上の子の保育園も閉鎖され、下の子のために育休をとったはずなのに、なぜか毎日上の子の相手をしてた。といってもずっと家にいても退屈するし、どこかに遊びにいけるわけでもなく、毎日来る日も来る日も近所の公園で遊んでた。完全に時間が止まってた。何か勉強をしようにも、断続的に割り込みがあって、とてもなにかやろうという気にもなれず、完全に世間から取り残されていた。子育て中のママってこんなかんじなのかなって思うなどした。

6月になって緊急事態宣言が解除され、仕事にも復帰して、ようやく時間が動き出した。会社は基本フルリモートになったので、情報格差みたいなのがなかったのはよかったことかもしれない。ただずっと家にいるので、仕事終わったら休みなくすぐに育児と家事というのは気持ち的にも体力的にも正直しんどい。あと通勤がなくなった結果、英語や読書のインプット時間がなくなり、代わりに寝る前にちょっとだけコード書く時間ができたのは思わぬ誤算だった。7,8,9月ぐらいは完全にアウトプットに倒していて、寝る時間を削ってtfmigrateというツールを書いた。これは自分史上すごい勢いでスターが増えており、それ自体はうれしいことなのだけど、このペースで続けるとたぶん体を壊すのは明らかだった。10月以降ちょっとペースを下げたけど、今見たら賞味4〜5ヶ月ぐらいで、14,564 ++ / 3,521 --も書いてて、こんな規模のコードを睡眠時間を削って趣味だけで書いた自分を褒めてあげたいが、インプットとアウトプットのバランスは難しくて、今でも悩み続けている。複数のツールを書き散らかしていると、issueやらpull requestが飛んできて、興味を持ってくれること自体はうれしいのだけど、すべての期待に答えることができず、どうしても限られた自分の時間をどこに割くのかというのが難しい。基本真面目な性格なので(?)、issueを無視したり、Noという心理的な負担が大きくて、一方で自分の必要ない機能に自分の限られた時間を割くモチベーションがなくて、OSS活動との距離を測りかねている。12月後半はインプットに倒して久々に読書したりしてるとやっぱり楽しいし、誰かのために自分を犠牲にするような構図だとどうしても長続きはしないだろう。

英語に関しては、通勤がなくなったのが結構厳しくて、TOEICの勉強してたのとかもやめてしまった。そもそも休日は子供の相手をしていて不確実性が高すぎて受験自体が困難であり、モチベーションが維持できない。OSS活動が活発になった結果、issueのやり取りで英作文への抵抗感はだいぶ減ってきたのは進歩だと思うが、長文を書こうとするとまだまだ時間がかかってしまうし、こんなのではたぶん仕事にはならないだろうと思う。リスニングに関しては、通勤がなくなった代わりに寝る前にPCをちょっとだけ触れるので、最近はyoutubeで海外のカンファレンスやら英語勉強方法の動画を英語で見るみたいなのを目標もなく気分次第でやっている。海外のカンファレンスやら英語勉強方法の動画は基本的に平易な英語でスピードもゆっくりなので、ほぼほぼ理解できる。一方で、gotime.fmのようなネイティブが雑談しているようなやつはまだ半分も理解できない。たぶんこのレベルが聞き流して理解できるレベルまではいけないと厳しいんじゃないかと思う。TOEICみたいな数値目標がないとわりとモチベーションを維持するのは難しい気もするんだけど、特にノルマを決めずに、気の向くまま適当に英語でしゃべってる動画を見るというので、しばらくはとりあえず量をこなそうと思う。都会で子供2人育てるというのは結構お金がかかって、たぶん今の会社だと、これ以上給料増えなさそうだしなーみたいなのもあって、かと言って英語に全振りするほど時間も取れないし進捗が亀のようということ自体がストレスかもしれない。

来年は下の子も保育園に入れる予定で、奥さんも仕事に復帰する予定なので、さらに時間がなくなるだろう。睡眠時間を削ると命を削ってるかんじがあって、限られた時間をどこに投下するかということを考えること自体が最近ストレスになってきてるように思う。OSSのメンテが心理的な負担になったり、インプットとアウトプットのバランスを見失ったりしているのは、結局のところ時間のなさから来ている。遊びがない。ここで言う遊びというのは、心のゆとりみたいな。何かすぐ役立つわけでなくても、自分の楽しいと思えることにもっと時間を使えるようになりたい。SNSを見てると生存バイアスの塊みたいな人がいっぱいいたり、知人が好きなだけ勉強をしてるのをみると、精神衛生上あんまりよろしくない。他人と比較しても仕方がないことなど分かっているのだが、人間なので仕方がない。毎日がしんどすぎて、なんのために生きてるのかなーみたいな哲学的なこともよく考えてしまうんだけど、いまのところ答えはない。結局人生など暇つぶしなのだから、毎日面白おかしく生きることを目標にしたい。

相変わらず考えていることをつらつらと書きなぐると、まったくまとまりがないのだけど、いまのお気持ちをダンプするとそんなかんじ。とりあえず時間がないことに思った以上にストレスを感じてるんだなということが再認識できたので、もうちょっと気楽に行こうぜって思いました。Slow down everyone. You're moving too fast.

2019年の振り返り、あるいは2020年の抱負のようななにか

今年の年末年始は諸般の事情でめずらしく実家に帰らなかった。なので、この記事は、育児と家事のスキマ時間に書いている。 さっき2018年の振り返りを読んだら、去年よりも自分の自由時間は減ったみたいなことが書いてたが、2019年はもっと減った。 2020年はさらに減るだろう。年を取るというのはいろんなものを背負いながら生きていくことだなと思うなど。

2017,2018,2019とエンジニアとしての成長の問題意識はあんまり変わっていないが、1年前と比べると少しずつは前には進んでいるように思う。 Terraform v0.12のバグ修正やら、vim-terraformの0.12対応やらまとまった意味のあるOSSコントリビュートできたし、tfupdateという新しいツールを作ったり、そのためにHCL2のパーサに新しいAPIを生やしたり。 tfupdateも趣味コードなのにちゃんとテスト書いてあるし、リリースは自動化されてるし、ちょっとずつの積み重ねでできることのレベルは確実に上がってる。 もっと時間があれば、もっといろんなことができるのにと思うことは毎日だが、ないものねだりをしても仕方がない。 子供が小学校に上がるまでは諦めるしかないのかなって毎日思うが、諦めてはいけない。承認要求を捨てること。他人と比較しないこと、昨日の自分と比較すること。

最近は育児で平日満足に8時間働くのも難しくて、足りない時間を半休で埋めたりしてる。時間と成果が比例するような自分の時間を切り売りするような仕事はしないと決めた。 仕事でいうと、そこそこの規模のproduction環境のインフラをDocker化するお仕事をしてたのだけど、アーキテクチャ変更を伴うような大規模な改造はたぶん私しかできなかっただろうと思う。 とは言ってもそれも所詮は今いるメンバーの中ではという意味で、本当の意味で自分にしかできない仕事などというものはないようにも思う。 この仕事を進めるためにいくつかの大きな仕事を断った。関係者にはそれぞれ思うところはあるだろうけど、表立って何かを言うことは避けた。みんなそれぞれに一定の確からしさがある正義があるからだ。 やるべきことなど無限にあるので、最終的には結局何がしたいかそれだけなんだと思う。他人のための時間を生きてはいけない。

あえて反省点を上げるとすると、うまくやろうとしすぎたことかもしれない。もっとバカな失敗をいっぱいしてコンフォートゾーンを抜ける必要がある。 丁寧にやりすぎず、quick & dirtyでリスクを最大限に取るバランス感覚が必要。 時間をかければ大抵のことはできる自信はあるが、裏返せば時間をかけないとできないのは、結局のところその程度のスキルしかないからだ。

去年の振り返りで、Emotional Intelligenceこそが2019年の個人的なテーマって書いてたけど、1年を振り返ると、Self Awarenessというニュアンスの方が強いかな? 睡眠時間を削ったり、スキマ時間に勉強したりすると、パフォーマンスが落ちることがわかった。なので自分がどれくらい疲れてるかを認識して、適度に自分を甘やかすことも大事だと学んだ。 疲れてるときは帰りの電車でdアニメを見たりしてる。自分が何をどう感じるかに敏感になることに注意を払うようになった。

英語についてはTOEICを受けに会場に行くのすら育児の不確実性が高くて大変厳しい。(勉強会やその他飲み会も行かなくなった) まぁ受けても劇的にスコアは伸びないだろうし、もう1レベル上げるには圧倒的に語彙力が足りないので、朝の電車でちょっとずつ単語の勉強したりは続けてる。 OSSの英作文は抵抗感は減った。数をこなすと多少文法が怪しくても通じてる気はする。量は質に転化するので、もっと日常的に英作文する機会を意図的に増やすほかない。 リスニングは全然だ。Podcast聞いても聞き流すだけで内容はあんまり頭に入ってこない。こんなレベルでは外資で働くのは難しいだろう。まだもうちょっと時間がかかりそうだ。

あいかわらず特にまとまりもないが、今のお気持ちは時間がないことをあきらめないこと、うまくやろうとしすぎないこと。今年のテーマはStay hungry, Stay foolish. って感じかな? 時間もないので、特に推敲もせずに投稿。

2018年の振り返り、あるいは2019年の抱負のようななにか

年末年始ちょっと時間ができたので、重い腰を上げて古き良きはてなダイアリーからはてなブログへの移行をやった。 はてなダイアリーはサービス終了しちゃうらしい。データの移行で過去の記事を見たら学生の頃の2005年ぐらいから合計2000記事ぐらい書いてたらしく、最近はちっとも書いてなくて、1年に1投稿ぐらいの頻度になっちゃったけど、むかしは日記ぐらいの勢いで毎日書いてたのを思い出してなんだか懐かしい。 というわけで、この記事ははてなブログ移行後の初投稿である。

で、これを書くに当たり、1年前の新年に書いた振り返り、あるいは抱負のようななにかを読み返してたのだけど、問題意識はあんまり変わってなくて進歩してないのかもしれない。というのが第一印象ではあるが、英語やコードを書いたりする力が突然どうにかなるものでもないので、コツコツ積み上げた分だけは何某か前には進んでるんだろうと思う。

今年は去年よりも子育てに使う時間がさらに増えた。3月まではまだ奥さんが専業主婦で子供の面倒を見ててくれたのだけど、4月から運良く保育園に入れてたので、奥さんも働きに出て共働きになり、子育てと家事を分担してやらないと終わらないかんじで、自分の時間はゼロどころかマイナスである。朝が苦手な自分が6時過ぎに起きて洗濯物を干して、7時に子供を起こしてご飯を食べさせて、着替えさせて保育園に送って、そのあと仕事に行き、仕事から返ってきたら、ご飯を食べて、子供を寝かしつけて、お風呂に入って寝るという生活を毎日繰り返しているなどと想像できただろうか。なんかこんなことを書くと、平凡な生活を送ってるように見えるかもしれないけど、毎日生きるのに精一杯である。平凡な普通の生活は尊い。たまに体調を崩したりして一家が壊滅的な状態に陥ったりすると、毎日の健康に感謝するし、健康であればそれ以外のことは大体おっけーぐらいの気持ちになったし、人生を生き急がずに、人に優しくなった。健康であることに感謝できるようになると、幸せのベースラインがそこなので、大抵のことは残り全部プラスであるというのは発見だ。

英語については引き続き勉強してる。最近は朝の電車でTOEICの勉強をして、帰りの電車で洋書を読むみたいなかんじ。TOEICの勉強をしだしたのはいろんな複合的な要因はあるのだけど、技術文章って文法が単純でこればっかりやっててもビジネスレベルの実務能力付かんなこれって思い、いまのところすぐに転職する予定はないが、子供がもうちょっと手間がかからないようになったら外資系の企業で働いてみたいなと漠然と考えているというのがある。前職をやめたときお金だけがすべてじゃないなーって思ってやめたけど、子供ができるとお金も大事だなーって思うようになった。国内のWeb系企業よりもやっぱり外資系のソフトウェア企業の方が賃金水準のベースが高いってのはある。あと、英語で開発の仕事ができた方が仕事の幅は広がるよなーってのもある。ただ給料に関しては、仲の良い同僚がいっぱいやめちゃった影響なのか(?)さしあたり困らない水準まで上げてもらえたので、いまのところ困らないぐらいにはもらえるようになった。ただ、仲の良い同僚がいろいろやめちゃって、ジュニアレベルのエンジニアが増えて、相対的に古株になってしまい、すごい人みたいに遠巻きに見られるのは個人的にはなんだかなー感はある。マサカリを投げてくるような人もいないし、成長の機会を意識的に社内ではなく自分と社外に求めないといけない。

OSSについては、1〜3月で作ってたtfschemaは寝る時間を削って作ってたけど、4月以降の子供の保育園の生活リズムの変化でそんなこともできなくなった。一方で会社でOSS活動やってみたい人の背中を押すという名目で、業務時間中にOSS活動する空気感を作ることに成功したのはよかった。寝る時間を削るのはつらいし、本業の中で一定やりたいことに時間が割けるように口実を作る活動は大事だ。

あと今年の一番個人的な大きな変化としては、科学的にメンタルを鍛えることに興味を持ったことだ。きっかけはたまたまQiitaの記事かなにかで引用されてた「嫌われる勇気」というアドラー心理学の入門書を読んだことで、アドラー心理学の目的論によると、「自分が変われないのは、変わらないと決心しているからだ」ということらしい。若干文言は違うかもだけど、よーするに変わらない方が楽で、変わらないと決めてるのは自分だということだ。この気付きは直視するのがキツイ。 結果として、怠けてないでもっと勉強せねばと思って睡眠時間を削って、当然の帰結としてちょっと体調を崩した。どうやら私の体は6時間ぐらいは寝ないとダメっぽい。 で、そこから健康のありがたみを再認識し、科学的に最高の睡眠方法と休息方法を学び、マインドフルネスを学び、ストレスを力に変えるためのレジリエンスについて学んだ。 で、いま絶賛読んでる本は「Search Inside Yourself」というGoogle社内のマインドフルネス研修について書いてる本を英語の勉強がてら原書で読んでるんだけど、Emotional Intelligenceこそが2019年の個人的なテーマかなという気がしている。

今年でついに35歳になるのだけど、プログラマを定年する気はないし、マネージメントする気もないし、現場で幸せにコードを書き続けるための何かを探している。幸せっていうのはすごく相対的なもので、事実は変えられないけど解釈は自分次第だ。解釈は自分次第っていうのは、たぶん何者にもなれないだろう平凡なエンジニアとしては、非常に救いのある考え方で、自分が何に楽しみを見つけるのか?その過程も含めて楽しめるようになりたい。そのヒントがマインドフルネスとEmotional Intelligenceにある気がしている。自分の感覚と感情に素直になること、自分が何を楽しいと感じるのか、それはなぜなのか?どうやったら好きなことだけしてたらお金がもらえる状態になるのか?自分を過小評価せず、過大評価せず、正しく自己認識し、自己分析し、自分をコントロールできるようになること。それができるようになるとなんか新しい世界が拓ける気がしている。もう35だけど、まだ35だ。たぶん我々の世代は年金とかもらえなさそうだし、体の動く限りは70ぐらいまでは働いてるんじゃないかなって思うと、まだまだ人生長い。宝くじも外れたので今年も真面目に働こう。

2017年の振り返り、あるいは2018年の抱負のようななにか

去年は子供が生まれて生活のリズムが大きく変わった。待望の子供が生まれたことは素直にうれしいのだけど、エンジニアとして趣味のコードを書く時間などはなくなり、35歳定年説を増々感じるようになった。
さっき1年前の抱負を読み返して、2017年は英語の勉強にずいぶん時間を使ったなと思った。まだ何にもなれていないのだけど。StackOverflowは1000 reputationsを達成してからはちょっとお休みしてる。StackOverflowは英語を書くことへの抵抗感は減らしてくれたが、いかせん回答できる質問を探したり、回答するために調べたり、英語学習という観点だとコスパはそんなによくはない。最近は移動中とかの隙間時間に英語のPodCastを聞いたりするのは継続できていて、それは来年も続けたい。聞いてるのはCHANGELOG.comとかgotime.fmとか。しかしまだ全然聞き取れない。youtubeで海外のカンファレンスの動画見るのはわりと理解できる。やっぱり音声だけど理解できないのは、耳がまだ慣れてないんだろう。家族のこととかを考えるとたぶん海外で働くというのは現実的ではないと思うので、OSS活動するのに役立つレベルの英語力があればよいかなぁというかんじ。TOEIC受けよかなって思ったときもあったけど、勉強のための勉強は続かない気がしていて、やっぱりコンテンツ自体が興味あるものじゃないといけないかなぁと思ってる。
OSS活動に関しては、年の前半は結構頑張ってたけど、子供が生まれてからは全然時間が取れず、最近全然できてない。世の中の子育てエンジニアはどうやって時間を捻出しているのか。最近は短期的な成果は捨てて、時間が取れないなりに個人的に興味のあるTerraformのコアのコードを読んだりしてる。たぶんなんらかのプロジェクトに一定の時間を投資すれば、なにがしかはできるだろうという漠然とした感覚はあるのだけど、投資できる時間の絶対量が減った今、戦略は必要である。ただコードリーディングで学ぶことも多いが、やっぱり書かないと覚えないので、定期的に何かを書くのは継続しないといけない。できればプライベートじゃなくて仕事でコード書く時間を増やしたいのだけど、いろいろな事情を勘案すると、コード書くよりも優先度の高いあれやこれやがあって、なかなか辿り着けない。
話があっちこっちに飛ぶが、最近の体力の衰えもよく感じる。今も正月にお酒を飲みすぎて頭が痛いと思いつつ、これを書いてるんだけど、アルコールの量を飲めなくなったし、消化スピードも遅いし、寝るのが1時すぎると翌日つらいし、ようするにヤバイ。筋トレ的な何かせねばと思いつつ、なかなか続かない。一方インフラの維持管理みたいな仕事は障害対応とかで体力勝負みたいなところがあって、家庭も持ったら増々難しくなる。なので今はそういうスキルを買われているけど、どちらかというソフトウェアエンジニアとしての仕事をできるようになっていかないといけない。というようなことを8月にも書いてたけど、あんまり進歩していない。今の会社の組織的な構造上どうしても自分がインフラの維持管理をせざるを得ないのもあるが、アプリケーションではなくミドルウェアレイヤのソフトウェアを仕事で書いてメシが食える人なんて一握りしかいないんじゃないかという気もする。何者にもなれない平凡なエンジニアは結局は、仕事の時間の一定量をコード書く時間に割り当てて、バランスを取りながらなんとかするしかないんだろう。仕事で求められていることと、やりたいことのギャップはなくなりはしないので、いかにやらなければしけないことをさっさと片付けて、趣味的なことに時間を使えるか。時間がないんじゃなくて作るしかないんだけど、それだけ時間を投資して何をしたいのかがまだぼんやりしている。道はまだ見えない。見えるまでは基礎力を高めるための素振りみたいなのをするのは悪くはない。
考えていることを書き出しながら考えるとまったくまとまらないけど、無理やりまとめると、英語、体力、素振り。