◆ 転職したいんじゃない 働きたくないんだ!

前回の記事で軽く書いたのですが 転職したいなーと思ってます
ですが 面倒が多く大変ですし 会社探したり書類の準備したり 入ったとしてのメリット・デメリットなどを考えたりするだけでも 毎日体力と精神力を無駄に削られてる感があります
なんで転職なんてしないといけないんだろう……と本気で考えるほど

会社を探していて思ったのですが 使う言語とかツールとかの環境の一致って思いの外 少なかったりするんですね
Web 系だと割りとメジャーどころだと思ってたのに意外と少なくて驚きでした
普段 OSS とか技術記事とかそういう視点でしか見てなくて業務を行う会社としてどういう物を使うとかは特に気にしたことなかったですからね

でも最近ってどこも人手不足って言われてます
興味があるものが色々あって「良いのがありすぎて選べない~」を期待してたのに「いいところがなくて選べない~」は予想外です
やっぱり人気どころに人が集まって 不人気どころが人手不足なんですね
IT 系だとブラックな SIer とか SES とかだけなんですかね 人手不足

言語

求人を見てて気になったのは 意外と RoR と Go を使う会社が多かったです
PHP は嫌われることが多いですがなんだかんだ会社だと利用されてるみたいで多かったです
逆に Node.js はけっこうレアでした
さすがに Deno はひとつもなかったです
Java もほとんどみなかったです
PHP が多いので Java も同じくらい多いのかと思いましたが そんなことはないようでした
今でも Java を使ってるのは昔ながらの SIer ばかりなんでしょうか
自分の情報を登録してるので もしかして関係ない Java は除外されてる?とか思ったのですがそれなら RoR なども除外されてそうですし
Python は少なめでしたが AI 系で探していないからで Web サーバー利用だと元々そんなに多くないと思うのでこんなものなのかもです

コロナ前くらいから RoR って全然聞かないです
Ruby 自体が 3.0 以降は全然見かけないです
メジャーアップデートで話題になるのかと思ったのに 3.0 が出るって話題を最後にどうなったのかわからないほどです
RoR は 7 が出たときに Webpack 捨てて importmap で ESM を直接使うと聞いて興味を持って今度使ってみようかなくらいに思ってたものの その後 RoR 自体の話題を見ることがなく完全に忘れてたくらいです
そんなでも企業ではまだまだ使われてるみたいです

単に RoR が流行ってた 10 年ほど前に勢いで導入したものの サービスが続いてるから置き換えもできなくて続けてるって可能性もありえますけどね
もしこのまま言語やフレームワークが廃れていくと使える人がいなくなって 会社に入ってからもレガシーな言語とか覚えたくないってなって 銀行とかで使われてる某言語とかのようになりかねないですが 世間のウェブサービスってどういうタイミングで言語やフレームワークを変えてるのでしょうね
メンテできる人がいなくて別言語で作り直した結果 バグだらけでまともに動かなくなってユーザーが離れたみたいなケースも耳にしますし 気軽に置き換えようとはできない気がしますけど
Perl で作られた古いシステムで動いてるというのは何度か聞いた覚えもありますし メンテできる以上ずっとそのままなのでしょうか

その点だと受託・請負のほうが保守期間が契約で 5, 6 年とか決まってたりしますし 古いシステムのメンテが嫌なら契約継続しなければいいだけなので 良いのかもしれませんね
まあ 1 開発者が契約どうするかなんか選べずお偉いさんが決めることになるのでしょうけど

Go のほうはネイティブよりな開発をするのに C/C++ を使うよりは良い選択かなって思いますが 最近って Rust のほうがその用途で使われてると思うんです
海外だけじゃなく日本でもときどき Go を Rust に置き換えましたって会社の技術ブログだったかそういうので見かけましたし
あと TypeScript のネイティブコンパイラの話でも 元は Rust だったけど GC とか TypeScript の特徴的に Go のほうがいいとなって Go に切り替えたと言っていたのがまた Rust に戻ったらしいです
Go を使ったっていう感想を見てもあれがないこれがないで不満点しか聞かないのですが そんなに良い言語なんでしょうか?
Go を使ってると書いてたところはマイクロサービス化を進めるとか書いてるのがいくつかあったのでマイクロサービスに特化した何かがあるとか?

この本文書いてて気づきましたが Perl や Rust は全く見なかった気がします

フロントエンド

言語面以外では フロントエンド特化も少なめでした
昔ならともかく ES2015 から JavaScript 機能はかなり進化していて ブラウザ側の機能の Web API や CSS も大幅に進化してブラウザできることが増えてます
というかほとんどがブラウザで十分になりつつあると思います
それから結構経ってますし フレームワーク戦争もほぼ React 1 強みたいになって迷うことは少ないと思います

さらに去年には フロントエンドの進化の妨げとなるブラウザ IE が終了とするという嬉しいニュースもあって よりフロントエンドの重要性が増すと思うのですが あまりそういった需要がないようです
考えてみると日本のサービスでブラウザの最新機能まで積極的に使って先進的なことしてるのってあまり思いつかないです
一部なら心当たりがありますが 人気で人が足りてるからか求人は見かけませんでした

そういうフロントエンドが重要視されてよさそうな状況なのに Next.js などの SSR が流行ってきてます
さらに最近のフレームワークの Astro だったかは SPA すら捨てて MPA 用のフレームワークらしいです
歴史が繰り返されるとか言ってる人もいるくらいですが ほんとフロントだけでできることはフロントでやればいいと思うのですよね
特にクラウドとか使うと利用料にも影響するのですから ブラウザでできるものはブラウザで 無理なところだけをサーバーで で良いと思うんです

TypeScript

気になったところで JavaScript より TypeScript のほうが多いかもってくらいに TypeScript が指定されてるところが多かったです
初心者クラスの人がチームに入っても最低限のクオリティを確保することとか引き継ぎの簡単さを考えると妥当なのかなという気もしますが 10 年くらいして TypeScript はどうなってるんだろうなって思いますね
Microsoft 製で現状の普及状態的に 過去の AltJS を代表する CoffeeScript みたいにはならなそうですが 今続きそうと思うものが本当に続くとは限らないのですよね
上の方に書いた RoR だって 10 年ほど前はかなりの人気でした
あちこちで技術記事等見ましたし周りの人も RoR の話をしてる人が多かったです
なのに今では全く名前すら聞かなくなりました

少しジャンルは変わりますが 安定して長く続くと思われていた CentOS だって数年前に終わりが来ました
代替となる Alma/Rocky/Oracle/Miracle Linux のおかげでまだ続いてましたが それも最近になって Redhat の意向で完全に互換があるものではなくなりそうです
AlmaLinux はバグを含むバイナリ互換をやめて ABI 互換にするそうです
RockyLinux はコンテナからソースコード抜くとかグレーそうなことを言ってましたがバイナリ互換を本当にこれからも維持できるのか不安が残ります
さらには SUSE まで RHEL 互換ディストリビューションを開発するようです
混乱の時代の始まりですね
そういうことは急に訪れるものです

そもそも TypeScript が現状通りに JavaScript 互換を将来的に続けるのかも不明です
現状は厳しすぎるくらいに独自機能を入れず JavaScript のスーパーセットというポジションを強調しています
でも PHP に対する Hack や MySQL に対する MariaDB 等 互換を謳っていたのに互換を捨てて独自方向に進み始めたソフトウェアはあります
TypeScript が変わらなくても 新しい NextTypeScript 的なものが出てくる可能性はあると思います
せっかく型を定義してもランタイムに参照できないなど現状の不便さは多くの人が感じるはずです
TypeScript が対応しない方針のままなら 誰かが便利機能が多く入った TypeScript を拡張したような言語を公開するかもしれません
ユーザー的には便利な方がいいので そういうのがあればそっちに移っていくことは十分考えられます
NextTypeScript が人気になって TypeScript が使われなくなる未来もありえるかもしれません
10 年はそういう流れになる可能性も十分ある時間だと思います
(NextTypeScript って Next.js の TypeScript 版に見えて仕方ない)

長くなりましたがいつもの TypeScript ディスなので気にしないでください

ところで必須項目に TypeScript 経験 5 年とか見かけましたが 現時点で 5 年って結構早い段階から TypeScript を採用してる人で 満たす人はかなり限定されそうです

フレームワーク

フロントエンドのフレームワークでは React がやっぱり一番人気です
Vue.js は思ってたより少なめでした
それより Angular が存在したことに驚きです
多いとは言えませんでしたが Vue.js と変わらない程度にはありました
あと jQuery もまだ現役なところが少しはあるようですね

対象条件

ところで色々書いてますが 何千件もの求人に目を通した なんてことは全然ないのでご注意ください
100 件そこそこ見ただけです
これでも自分ではもういいよってレベルには見たつもりなんです

あと必須条件として「ウェブサービスをやってる IT 系企業」「リモート可」というのがあるので IT 系全般と比べたら多少偏りは生じてるかもです
リモートで問題ない業種なのにリモート不可のところは「顔を見て話すことに意味がある」なんて無意味で時代遅れなことを言ってるアナログな人が上のポジションだったり セキュアなリモート環境を構築できない技術力のないところだと思うので除外です

経歴書

どういう経験あってどういうことできますよーってアピールするための書類があります
でもこれ「実務経験」らしいです
趣味で○○使いましたは含まれません
「仕事で」使ったことがないと書いたらダメらしいです

有名どころフレームワークの Express とか Fastify とか Next とか Laravel とか Django とか RoR とか全部実務経験ゼロですよ
いやこのラインナップだと趣味を含めてもほぼゼロでした
人事目線で見たら書類の時点でアウトでしょう

つらいですね