キャリア 4 年目の振り返り

働き始めて 3 年と 9 か月が経過した. まだ 4 年目が終わるには早いのだが, 今年から拠点を海外に移したので, 年度ではなく西暦を基準にして振り返りをしようと思う.

海外移住

2023 年 7 月にカナダのバンクーバーに引っ越した. 日本で生まれ育って, 海外経験といえば数回の旅行程度だった自分にとっては, 仕事を辞めて海外生活を始めるのは大きな冒険だった. しかし移住から半年近く経過した今となっては普段の生活は落ち着いていて, 海外生活と言っても意外に大したことないなと思っている(日本からバンクーバーに移住して生活を安定させるまでにやったこと).

個人的な今年の目標であった「リスクを取る」は十分達成できたのではないかと思う. 海外移住したことが最大の成果だが, 日常生活の中でも精神的な変化があった. やったことがないことをやるということに対してポジティブな姿勢を持つようになった. 私のように慎重な(臆病な)人間にとっては, 進んで失敗しに行くくらいの心持ちがちょうど良いだろう.

英語

海外で暮らしていると言語については意識せざるを得ない. 渡航前に一か月間フィリピンで英語留学をしていた. それまではそもそも英語でコミュニケーションを取るという経験がほぼなかったので, そもそも自分が喋る英語が人に伝わるかどうか不安を覚えていたのだが, 英語を喋ることに対する心理的な障壁は打破することができた.

一年前と比べると進歩したとはいえペラペラになったかというとそんなことはなく, 当然だが日本語と比べると遥かに言語能力が落ちることがもどかしい.
コミュニケーションという人間の活動における根本的な要素に不安がある状態がどれほどのハンデになっているのか想像もつかない. バンクーバーに住んでいる限り英語は何をするにしても必ず重要になるので, できる限り腕を磨きたい.

プログラミング

渡航してからは, 日本で言うところの専門学校のような立ち位置の私立カレッジに通っていて, 今は WEB Development コースの学生をしている. WEB 開発の経験はないが, 学校が始まるのに先んじて予習をしておいたおかげもあってか, 授業の中で特に困ることもない. むしろ課題を素早く終わらせて先生を驚かせる日々を送っている.
授業の内容は未経験者向けなので, 正直なところ大してエキサイティングでもない. しかし曲がりなりにも数か月取り組んでみて, 何かを作る時の選択肢として WEB を自分の中で持てるようになったのは良かった.

授業外では Rust に入門して, 最近は競技プログラミングをずっとやっている. もともと仕事で C++ や C# を使っていて Rust に興味はあったのだが, ようやく本格的に触ってみることができた. 基本的には C++ と似ているが, 関数型言語を始め他言語の特徴を上手い具合に集めていて面白い. 低レイヤーと関数型に関心を持っている私にはぴったりな気がしていて, 今後も学びを深めていきたい.

開発環境

エディタとデスクトップ環境を変えた. エディタは VS Code を使っていたのだが Emacs を使い始めた. OS は 5 年以上 Linux を使っていて, デスクトップ環境を GNOME から Qtile に移行した.

Emacs は Vim のようなキーバインドを実現する evil-mode を使っているので少しややこしい. ポストモダンを標榜する Helix エディタに興味を持ったのがすべての始まりだった. Vim に影響を受けた Kakoune に影響を受けた Helix は, Vim をベースにした独自の操作感を持っている. 悪戦苦闘した挙句に結局 3 日くらいで諦めてしまったのだが, これまでにない可能性を確かに感じた. Emacs バインディングで VS Code を使っていた私にとって, Vim の概念は新鮮に映った.

ぼんやりと考え事をしていて, Emacs と Vim という 2 つの素晴らしいエディタがあるのなら, その両方のバインディングを使えるようになれば最強なのではないかと閃いた. この子供じみたアイデアが意外に気に入って可能性を模索してみたところ, Emacs で Vim バインディングを使えるようにする evil-mode の存在を知った. 通常は Vim バインディングを使い, Insert モードでは Emacs バインディングを使うというのが私の発想だったわけだが, evil-mode 自体は 10 年以上前からあり, その発想は新しくもなんともなかった. とはいえ, すでに歴史があるというということは上手く機能する可能性が高いということでもあるので, 思い切って移行してみた.

Emacs と Vim の両方に同時に入門したようなもので最初は大いに戸惑ったが, 1-2 週間で慣れた. パッケージを導入してコンフィグを書いていく過程で, 自分で自分のエディタをコントロールしている感覚を得られ, 気分が良かった. 仕組みを理解したいというエンジニアとしての(あるいは個人的な?)欲求が, 素の状態のエディタをカスタマイズさせていく過程で充足されたのだと思う. Atom や VS Code しか知らなかった私にとっては Vim や Emacs がかえって目新しい. 温故知新とはこのことか.

エディタの次は PC 全体の環境に関心が及ぶのは当然のことで, 例えばキーボードでいろんなものを制御したいと思い始めた. タイル型ウィンドウマネージャに出会うのは必然であったように思う. いくつか検討した結果 Qtile を使うことにした. カスタマイズを経て, もはや今までこれなしで生活していたとは信じられないと思うほど自分のワークフローにフィットした環境が出来上がった.

エディタもデスクトップ環境も奥が深くまだ使いこなすには程遠いのだが「開発環境カスタマイズ沼」に足を突っ込んだのだなと理解した. 長いエンジニア人生を考えるとプロダクティビティに投資するのは悪いことではない...と思って自分を正当化している. 次は NixOS という Linux のディストリビューションを試したいのだが, まだ時間が取れていない. 将来的にはやっぱり VS Code が良いと思うかもしれないが, 飽きるまではこのまま沼にハマっていこうと思う.

ミニマリズム

去年の振り返りでミニマリズムに関心を持ち始めたと書いたが, 今ではすっかり行動指針の一つとなった. 単にものを減らすということだけでなく, 限られた時間やエネルギーをどう使うか意識するようになった. 私はたいていやりたいことが多すぎて, あれもこれもとなってしまうのだが, 落ちついてタイムテーブルを考えてみると全てをやるのは無理だと分かる. そこで, では何を やらないか 考えるようになった.

今年人生を変えたものがあるとすれば, リスクテイクとミニマリズムだろう.

人付き合い

日本国外に知り合いはいなかった. バンクーバーに到着したとき, この街には誰も私を知っている人がいないだと思った. 進学に際して東京に引っ越したときにも, 街を歩きながらふとそう思ったことを懐かしく思い出した. ゼロからの出発だからこそ交友関係を築けるかどうか試してみたい. 内向的で人付き合いの得意ではない自分だからこそ, 達成できたら価値があると思う.

来年の目標

この 2-3 年の大きな目標は永住権を取得することで, そのための目下最大の目標は仕事を得ること. カナダのビザシステムはポイント制で, 要はカナダに利益をもたらす可能性が高い人ほど高得点を獲得できるようになっているのだが, 現地企業で働いていることは大きな加点になる. ジョブオファーをもらってビザをサポートしてもらって永住権を得るという一連の流れをできる限り早く進めたい.

キャリア的には情報発信を目標としたい. 「凄い人になりたい」という漠然とした思いがキャリア初期からあるのだが, 「凄い人」を分解して考えてみると, 実績があることとよく知られていることの 2 つが条件なのではないかと思った. 実績と知名度, 今はどちらもないが, 目標に向けて一歩でも近付きたい.

結語

この記事で一番長い章が Emacs についてなのが自分の関心の大きさを表しているようで面白い。今年はこれまでの人生の中でも一番大きな決断をできたと思っている。来年も今年以上に進歩できるよう精進する。