2025年まとめ

ひとまず2025年にやったことと2026年にやりたいことを列挙して、それぞれポツポツと感想でも書いていきます。

2025年やったこと

  • 部署異動(電機設計→システム開発)
  • 転職活動(2026年継続)
  • Nix home-manager導入
  • tmuxセッションマネージャーの開発
  • markdownプレビューアーの開発

部署異動(電機設計→システム開発)

自分は電気工学と制御工学がバックグラウンドの人間で、2025年までは設備開発の部署にいました。

主にロボット関係の技術開発だったので電気・システムなど複数領域をまたいで担当していたのですが、部署が消滅したことで2025年からシステム開発部署に異動となりました。ソフトウェアが好きなので個人的には良い点です。この1年はシステム開発のお仕事をメインにやっていました。

もちろん良くない点、というか期待以下だった点があり、システム開発の部署であるにもかかわらずシステム知識を全く持ち合わせていない人ばかりであり、ベンダーへの仕様も全て丸投げであることです。

要はやりたいことと予算は握るが仕様や設計もベンダーに全部よろしくねというスタイルです。一概にダメだというわけではなく、組織の体制としてはこれで十分ペイ出来ているのでそういうビジネスだろうと納得はしています。

しかし開発したシステムの継続性、新規に開発するシステムのための技術的知見が全く失われてしまうので個人では強く違和感を感じました。これが後述する転職活動の動機の一つです。

転職活動

前述の部署異動での違和感から、転職活動を始めました。とはいえ自分はどうありたいのかだとか、どういう企業なら自分の思い描くものが実現出来るのかを先に考えて少しずつ固めていきました。

自分はソフトウェアの思想や効率は好きですが、ハードウェアや設備をいかに作るかという点と、作る際により高品質・高効率にすることの方がやはり好きなので、そういう自分を実現出来ることを軸に据えました。

そんなスタンスで色々探すとベンチャーが多くなるんですよね。他の大手もマッチして何社か面談しましたが、やはり大手になるほど技術的な知見を大事にしなくなり、そこに価値を感じない風潮が強いように感じました。とはいえ待遇とのバランスもあるので未だに色々決めあぐねています。

現在(2026-01-03)も何社か面接・面談を予定しているので、待遇と風土のバランスがマッチしているか、あまりにも難しければ少し妥協するかなど考えながら進めていこうと思います。

Nix home-manager導入

nixの導入とhome-managerを導入しました。 自分はneovimを使っておりプラグインはツールへの依存があるものを多数利用しています。プラグインやツール類の依存を解消するために、マシンを新しくするたびに環境構築を行っていたのですが、まあ面倒です。

たとえば自分は以下のような環境です。

  • 会社PC: Windows11 + WSL2(Arch Linux)
  • 会社開発PC: Ubuntu
  • 自宅デスクトップ: Windows11 + WSL2(Arch Linux)
  • 自宅ノートPC: ArchLinux

なんだかんだで4つもマシンを使っており、それぞれOSやディストリも異なるので統一して管理するのは本当大変です。特にローリングリリースでは無いディストリの場合はツールバージョンを合わせるのがかなり面倒なので、Linuxは出来るだけArch Linuxにしています。

このような異なる環境での環境構築や環境管理をするツールはいくつかあります。 調べたり使ったりしたのは以下のようなもの。

  • chezmoi

tmuxセッションマネージャーの開発

2026年やりたいこと

  • Lua型検査機の実装
  • Lua処理系の実装と、Neovimへの組み込み
  • AWSの勉強
  • インターネットの勉強
  • TCPスタックの実装
  • tmuxセッションマネージャーCLIの改良
  • markdownプレビューアーの改良
  • 転職活動
  • Google keepに代わるアプリの開発

意外とあるような無いような、中途半端になっているものもあります。 この中で力を入れているのはLua型検査機、Lua処理系の実装です。

型検査機は処理効率を突き詰めようと考えると増分解析やらなんやら複雑なアルゴリズムが入るこんでくるのでそこまで見越して設計しないといけないなぁと思いながらやっているため複雑化しています。

処理系は、Luaがスタックマシンなら話が早かったのですがどうやらレジスタマシンで、かつNeovimへの組み込みがされているLuaJITはさらにややこしい最適化がされていること、さらにLuaは通常の処理系と異なり、構文解析を終えてからバイトコードを吐くのではなく構文解析をしながらバイトコードを吐いているようなので処理が複雑です。

他のAWSやインターネットの勉強は、自分がプログラミングの学習を2021年からしかまともにやっていないので通信周りを後回しにしていました。このツケが今回ってきていますのでサービスを作りつつAWSの思想に慣れることと、ネットワークとはなんぞやを理解するためにTCPをイチから実装してみようとしています。そこまで難しくナさそうなので。

tmuxセッションマネージャーとmarkdownプレビューアは2025年に開発したツールです。それぞれ Rust製で軽快に動作しますが、細かい点で改善が必要なので大々的に公開はしておらずドッグフーディング中です。