「あの人も読んでる」略して「も読」。さまざまな寄稿者が最近気になった情報や話題をシェアする企画です。他のテックな人たちがどんな情報を追っているのか、ちょっと覗いてみませんか?
みなさんこんにちは。
「あの人も読んでる」、第11回の投稿です。maguro (X @yusuktan)がお届けします。
ヨーロッパに行きました
夏真っ盛りですね。私事ですが、8月の初めにオランダ🇳🇱(ロッテルダム)とイギリス🇬🇧(ロンドン)に行ってきました。オランダでは会社のメンバーと1週間コワーキングスペースで開発合宿のようなことをやりました。快適な気候で、日没も遅く、コワーキングスペースに人懐っこい犬がいたりして楽しかったです。エレベーターに1時間くらい閉じ込められたりもしました。YouTubeに様子がアップされているので、もしよかったらご覧ください。
What is the Deno team working on?
ロッテルダムからユーロスターでロンドンに移動して、現地でソフトウェアエンジニアとして活躍するpakioさん(@paki0o)、ryoppippiさん(@ryoppippi)とお会いしました。ロンドンを案内していただいただけでなく、パブをはしごしながら社会人大学院の話、イギリスでの生活の話、ビザの話などさまざまな興味深いお話をうかがうことができました。
そこで今回の「も読」では、今回お会いしたryoppippiさんのブログから2つの記事をご紹介したいと思います。
海外就職の過酷さ
1つ目は半年強で533ポジションに応募してやっとUKでエンジニア就職を果たした話です。ryoppippiさんが8ヶ月間、533のポジションに応募し続けて、ついにイギリスのAIスタートアップStackOneにAIエンジニアとして就職するまでの奮闘記が綴られています。
ryoppippiさんの場合、就労ビザに関する問題はなかったにも関わらず、闇雲に応募するだけでは「箸にも棒にもかからなかった」とのこと。以下のような戦略的改善を重ねていくことで、徐々に事態が好転しはじめたそうです。
- 履歴書の最適化:ATS(Applicant Tracking System)に対応したCV(履歴書)の作成
- OSS活動の強調:技術力を証明する具体的な成果物の提示
- 英語コミュニケーション能力の向上:英語環境に飛び込むことで飛躍的な英語力アップ
- カンファレンスでの登壇:VimConfやNeovimConfで英語で登壇することで知名度向上
- リクルーターとの出会い:適正給与レンジのアドバイス、履歴書のレビュー、そして模擬面接
カンファレンス登壇やOSS活動など、外部から見える形で技術力を示しつつ、それを適切かつ簡潔にアピールするためのCVを作り、リクルーターからのアドバイスやフィードバックを受け伴走していく。日本国内でも通用しそうなやり方ですが、国外という未知の環境ではこれらを抜かりなく行うことがより重要なのだということを学びました。
JavaScript CLIツールスタック
続いて紹介するのはMy JS CLI Stack 2025です。ryoppippiさんは数々のOSSを開発されてきていますが、特に最近だと、Claude Codeでどれくらいのコストを使っているのかを可視化するツールccusageを精力的に開発されています。そんな経験豊富なryoppippiさんによる、2025年にJavaScriptでCLIツールを開発する際のおすすめスタックです。
パッケージマネージャー:Bun
- 圧倒的に高速なインストール・依存関係の解決
- TypeScriptの直接実行
- 高いNode.js互換性
- 便利なシェル拡張機能
バンドラー:tsdown
- Rolldown(Rust製Rollup再実装)ベース
- 極めて高速なビルド
- 優れたTree Shaking
- プラグイン互換性
コマンドラインパーサー:Gunshi
- 型安全なAPI
- 包括的なコマンドライン引数パース
- 小さなバンドルサイズ
- 高度な機能(否定可能オプションなど)
その他
- ドキュメント生成:vitepress
- ロギング:Consola
- テスト:Vitest
- セマンティックバージョニング管理:bumpp
- パッケージリンター:publint
- 依存関係アップデート:renovate
さらに、実行コマンドとして npx
ではなく bunx
(=bun x
)を推奨することの理由も触れられており、ここが個人的には最も興味深かったです。高速な依存解決とインストールにより、ユーザーに常に最新バージョンを利用してもらうことを自然な形で促すことができ、ユーザーの利便性とCLIツール提供側の負担軽減を両立できる最善択であるとのこと。
個人的には、mise use --global
を用いてグローバルインストールをして利用することが多かったですが、確かに常に bunx
から起動するようにすることで、いつでも最新版を使えるというのは利便性が高そうだと思いました。
おわりに
今回は、ryoppippiさんのイギリス就職奮闘記とJavaScript CLIツールスタックについての記事をご紹介しました。
グローバルな環境で活躍するエンジニアの実体験から、技術力の向上だけでなく、それを効果的に発信し、継続的に改善し続けることの重要性を学ぶことができました。
また、最新のJS CLIツールスタックについての知見は、極めて活発なエコシステムをもつJavaScriptにおいて、2025年現在の有用なスタックを把握するヒントになるはずです。僕もこれまで使ったことのないツールが多かったので、試してみたいと思いました。
また次回、おすすめコンテンツを紹介していきます。お楽しみに!
maguroさんの「も読」過去記事
- 生産性のパラドックス――AIで「速くなった気がする」のに実測値は19%悪化(7月29日公開)
- OSSに長期で関わることの難しさ、イマドキNode.js、Rust界の超人が語るDB開発(7月11日公開)
- AIエージェント時代のセキュリティ - 隔離・パーミッション制御(6月30日公開)
- Rustの実践的な採用事例をながめる(6月13日公開)
- DockerなどのコンテナにおけるSIGTERMの取り扱い(5月30日公開)
- ライブコーディング視聴のすすめ(5月19日公開)
- 生成AIを使うか、使われるか - 学習を加速するための活用(5月8日公開)
- Rustの学習の難しさと取るべきルート(4月17日公開)
- MCPことはじめ / MCPサーバーのセキュリティリスク(4月4日公開)
- n月刊ラムダノート、実用Raft(3月21日公開)