新しいソフトウェア開発者の仕事を見つける
(henrikwarne.com)- 2023年末にレイオフを経験したソフトウェア開発者が新しい仕事を探す中で 30社 と接触し、8社は不採用・6社は無反応・3社からオファーを受け、市場が予想以上に厳しいことを確認した
- 求職チャネルはLinkedInの Open to work、以前から関心のあった企業リスト、Demandoのような開発者マッチングサイトが中心で、リモート検索や古い求人票は信頼しにくかった
- 一般的な採用プロセスはリクルーター・マネージャー・技術面接・課題・CTO/創業者面接まで 4〜5段階 と長く、課題型コーディングテストは会社が言うよりはるかに多くの時間がかかった
- 行動質問向けのSTAR回答、Python・Goのコードスニペット、Leetcode、GoLand、ChatGPT、GitHub Copilotなどを準備したが、ライブコーディング では緊張のせいで普段より思考力が落ちた
- より厳しくなった市場では、言語別の経験要件、遅い返答、給与レンジの確認、複数プロセスの日程調整がオファー交渉と最終選択を左右した
レイオフ直後の状況と準備姿勢
- 昨年10月末に会社で17人が解雇され、そのうち 開発者8人 が含まれていた
- CEOとZoomで通話して数分後、会社リソースへのアクセス権がすべて切られた
- 作業中だった複数の変更をプッシュできなかった
- 同僚たちときちんと別れのあいさつを交わしにくくなった
- 複数の同僚がLinkedInで連絡をくれ、一部はZoom通話を設定して状況を話し、別れを告げられるようにしてくれた
- 以前の転職はほとんど在職中に自分の意思で進めており、スウェーデンの標準的な通知期間である 3か月 の間に仕事を終えたうえで新しい会社へ移る形だった
- すぐにアクセスが遮断されたおかげで、給与を受け取りながらすぐに求職へ全時間を使えた
- いつでも新しい仕事を見つけられるべきだという考えから、働きたい会社のリストを維持し、過去に連絡を取ったリクルーターたちとも良好な関係を続けていた
仕事探しのチャネル
-
LinkedInの活用
- LinkedInの Open to work 状態を、従来の “Flexible, I am casually looking” から “Immediately, I’m actively applying” に変更した
- 公開範囲はLinkedInの全会員ではなくリクルーターに限定し、緑色の #OpenToWork 写真フレームは使わなかった
- 状態変更後の最初の週あたりは、1日に約5人のリクルーターから連絡を受けた
- 職種の質は普段と似ていたが、連絡頻度ははるかに高くなった
- 関心企業リストを確認しながら、LinkedInの企業ページのJobsタブと各社の採用ページをあわせて見た
- LinkedInは応募者数、求人掲載時点、社内の知人の有無、求人投稿者を確認できて便利だった
- “Golang Stockholm” のようなキーワード検索、 “Recommended for you” 、Premiumの “Jobs where you’d be a top applicant” も一部では良い求人を見せてくれた
- LinkedInの 完全リモート検索 は信頼しにくかった
- 英国内リモート限定の職種が混ざって表示されるような問題があった
- スウェーデン国内完全リモート、EU内完全リモート、全世界完全リモートのように範囲を分けて検索できればよいと感じた
- 最新求人だけを見るのが難しく、すでに見た求人を何度も流す必要があった
- その後Googleで期間を先週に設定し、
golang fully remote site:linkedin.com/jobsのように検索する方法を見つけた - 過去にLinkedInで連絡をくれたリクルーター約15人に再び連絡したが、結果はなかった
- 採用中のマネージャーにInMailを送ったこともあったが、返答は得られなかった
-
他のサイトと検索方法
- スウェーデンの開発者-雇用者マッチングサイト Demando を使った
- 技術と最低希望給与を書いたプロフィールを有効化し、このサイト経由で連絡してきた1社から後にオファーを受けた
- LinkedInで見つけられなかった別の会社の求人もDemandoで見つけて応募し、その会社からもオファーを受けた
- RemoteOK も少し見たが、応募したい求人は見つからず、全体的にLinkedInより求人の質が低いと感じた
- Efinancialcareers は完全リモート職がほとんどなく、検索もしづらかった
- Hacker Newsの月例 Who’s hiring スレッドも見たが、関連する項目は見つけにくかった
- 類似企業を探すために、Googleで “competitor to” または “alternative to” と会社名を組み合わせて検索する方法も見つけた
応募管理と返答の体験
- すべてのリクルーターが、LinkedInプロフィールと似た情報があっても CV を要求した
- 会社に直接応募する場合もほとんどがCVを要求し、多くの会社が自己紹介文も求めた
- 書いた自己紹介文は保存しておき、新しい応募時には最も近い過去の文章をコピーして修正した
- 応募履歴を管理するためにExcelシートを作り、会社名、応募日、リクルーターまたは担当者、一般メモを記録した
- 合計30件あったが、すべてが正式応募につながったわけではない
- 応募した会社のうち 6社はまったく返答しなかった
- 一部の求人は1か月以上前のものだった
- 無効な求人なら取り下げるべきだと考えた
- 会社の人と接触がなかったなら無反応をそれほど問題とは思わなかったが、面接後の無反応はその会社への印象を悪くした
- ある会社は、リクルーターとの初回面接後にマネージャー面接を設定すると言ったが、その後連絡が途絶えた
- 2週間後にメールを送っても返事がなく、さらに2週間後に興味がないと送ったあとでようやく気のない謝罪を受けた
有料ツールと準備資料
- LinkedIn Premium を1か月分支払ったが、期待したほど有用ではなかった
- プロフィール閲覧者をより多く見られたかは確信が持てず、求職における価値は限定的だった
- InMailもいくつか送ったが、大きな助けにはならなかった
- “Jobs where you’d be a top applicant” も決定的な価値はなかった
- 1か月後に解約し、解約前に1か月分の価格で2か月延長するオプションを提示された
- Goの仕事を探していたため、慣れた環境で練習するために GoLand のライセンスを2か月分支払った
- GitHub Copilot も試したが、面接では自分でコーディングしたことを明確にするため、あまり使わなかった
- 既存の ChatGPT サブスクリプションは、複数の課題型テストで望む作業の基本フレームワークを素早く作るのに役立った
- Leetcode の有料版は解説を見られるため、面接準備に使う価値があった
- ある会社がAlva LabsのIQテストを使っていたため、12minprepの Alva Logic Cram Course を購入して練習した
- 事前練習のおかげで、テストの出来はかなり良くなったと感じた
より厳しくなった市場と言語経験要件
- 過去10年と比べて、開発者採用市場は明らかに難しくなったと感じた
- 応募できる求人は依然として多かったが、1職種あたりの応募者数は以前より多く見えた
- LinkedInで応募者数を見られる求人の多くは 100人以上 の応募者を表示していた
- 自分に合っていると思った職種でも返答をもらえない会社が増えたことも、市場が厳しくなった根拠になった
- 特定言語の経験要件が強まっていた
- 過去にはPythonやGolangの経験がなくても、その言語で開発する職務を始めてすぐに生産性を出していた
- 複数の命令型言語は互いに似ており、言語への適応は可能だと考えていた
- しかし多くのリクルーターは、採用企業の厳格な要件として特定言語での 2〜3年の経験 を伝えてきた
面接プロセスと準備方法
-
プロセスと日程負担
- 一般的な採用プロセスは 4〜5回の面接 で構成されていた
- リクルーターとの初回面接
- 採用マネージャー面接
- 技術面接1〜2回
- 課題型テストまたはライブコーディング
- 場合によってはプロダクトマネージャー、CTO、創業者面接
- リモート職はZoom、Meet、Teamsで進められた
- ストックホルムの現地職の多くは対面面接を望んだ
- 通勤時間のため、対面面接1回で半日を使った
- 一方でリモート面接は1日に複数件こなすこともできた
- 対面面接には、相手やオフィスの雰囲気をよりよく把握できる利点があった
- 一般的な採用プロセスは 4〜5回の面接 で構成されていた
-
行動質問と技術準備
- 以前から維持していたWord文書 Interview Tips に、面接前に見る内容を整理していた
- 今回は Behavioral Questions セクションを追加し、「同僚と意見が食い違ったときについて話してください」のような質問に備えた
- STARフレームワークであるSituation, Task, Action, Result, Reflectionに沿って回答を準備した
- Leetcodeの Rock the Behavioral Interview の質問リストを見て、使えそうな事例を整理した
- 今回は行動質問が原因で落ちた面接はなかった
- PythonとGoの短いコードスニペットも文書に書いておいた
- よくあるパターンやイディオムを素早く思い出すのが目的だった
- すべてのスニペットは実行してエラーがないことを確認し、関連する出力も含めた
- Gergely Oroszの Confessions from a Big Tech Hiring Manager: Tips for Software Engineering Interviews の動画も見た
- 技術面接では、好奇心を持ち協調的に振る舞い、質問することが重要だと受け取った
面接とコーディングテストの体験
-
一般面接
- 初回面接では、前職でコスト削減のために解雇された事実を明かした
- それを明かしたことが不利に働いたようには感じなかった
- リクルーターやマネージャーとの会話では、やりたい仕事と自分の強みが明確だったため緊張しなかった
- 非コーディングの技術面接でも、慣れた技術については緊張せず、失敗したのは1回だけだった
- データベース接続タイムアウトをどれくらいにするかという質問に大きすぎる数値を答え、その回答が不採用につながった
-
課題型テスト
- 数年前の前回面接時より 課題型テスト が増えていた
- 課題型テストはライブコーディングよりストレスは少ないが、はるかに多くの時間がかかった
- 会社が何と言おうと、各課題には最低6時間はかかったと見ている
- 会社にとっては初期段階で課題を要求するコストは低いが、求職者にとっては成果が不確実な大きな時間投資になる
- 課題型テストは合計5件こなした
- Java 2件
- Python 2件
- Go 1件
- 1件半は失敗と見なしている
- Go課題では動く解法は出したが、テストを含めなかった
- 明示的な要件ではなかったが、テストを入れるべきだったと考えている
- 繰り返し実行されるか明確でないと感じたが、キャッシュを入れて速度改善をしなかった点も失敗理由になった
- 別の課題では既存テストには通ったが、隠しテストで空入力に関するエラー2件が明らかになった
- 実務なら追加テストを自分で書いていたはずだと考えた
- 結局その会社からはオファーを受けたので、半分の失敗として数えた
-
ライブコーディング
- ライブコーディングでは緊張のせいで、頭が普段の 50% しか働かないように感じた
- 今回のライブコーディングでは3件通過し、2件失敗した
- 最初の失敗例は、制限付きのチェスプログラムを書く課題だった
- 駒は2種類だけ対応すればよかったが、プロジェクト構成、データモデル、有効な移動、テストが必要だった
- 2時間以内に提出する必要があり、非常にタイトだった
- 大部分は動いたが、全機能を完成させられず、移動コードにもバグがあった
- 別の失敗例では、会社が用意した初期コードリポジトリのテストが動作せず、環境設定にも時間がかかった
- ロジックがどう動くべきかについて何度も質問する必要があり、結局時間がかかりすぎた
- すべてのライブコーディングテストは自分のコンピューターのIDEを使い、Zoomで画面共有しながら行った
給与交渉と選択
- 初期に高すぎる給与額を言ってしまい、面接がキャンセルされたことが何度かあった
- その後は、過去4年間の年収を伝えて希望水準を間接的に示す方式に変えた
- 会社がその額を出せないと言った場合は、現在無職なので絶対的な最低給与はなく、提案次第だと答えた
- この方法でプロセスを継続でき、後でより良い提案につながる機会も生まれた
- 最初のオファーを受けた後は交渉が楽になった
- 職種の 給与レンジ を尋ねると、驚くほどよく答えをもらえた
- 受け入れ可能な水準より低い会社には early no を出せるので有用だった
- ある会社は気に入っていたため給与を事前確認しなかったが、複数の面接と課題のあとで非常に低いオファーを受けた
- 事前確認しなかったことで時間を無駄にしたと考えている
- ストックホルムの開発者給与感覚もより良くなった
- スウェーデンでは月給ベースで考える
- 年金拠出金込みかどうかも考慮する必要があり、多くは含まれていて、追加で 10〜15% が暗黙に含まれることもある
- 非常に平均的な開発者給与は月 55K〜65K SEK 程度である
- 月 80K SEK以上 はより難しいが、厳しい市場でも不可能ではない
- 給与以外にオプション、株式、ボーナスを提供する会社もある
- 最終選択では、プロダクトと会社への興味、使う言語、学べること、同僚もあわせて考慮する必要がある
最終結果と学んだこと
- ある会社は非常に前向きに進み、推薦者2人を求めたが、翌日には別候補を選んだ
- 推薦者2人の時間を使わせた点は残念だった
- 求職は結局 数のゲーム に近い
- 多くの面接で失敗しても、成功する会社が1社あれば新しい職を得られる
- 最終的に3件半のオファーを選択肢として持つことになった
- ある会社は正式オファーは受けていないが、すでに受けた2つのオファーより低そうだったため半分として数えた
- 複数社のプロセスが同じ時期に終わるよう、一部は遅らせ一部は速めて進めた
- 面接を遅らせたり、できるだけ早く設定したりして調整した
- 複数オファーがあったことで交渉上の立場ははるかに良くなり、最終的に興味深い仕事と良い給与を兼ね備えた Swissblock のシニア開発者職を得た
- 新しい仕事を見つけることは非常に多くの作業であり、週末にも準備すべきことが残って休みにくい
- 4〜5段階の面接、課題、会社調査、日程調整、不採用まで含めると数か月かかりうる
- 面接結果を自分で判断するのは難しく、不採用のたびに驚くことが多かった
- 求職プロセスを一緒に話し合える元同僚の存在が大きな助けになった
- 迅速に返答するリクルーターは、会社への信頼を築くうえで重要だった
- 同僚が解雇されたとき、LinkedInなどで連絡して別れのあいさつをすることは、本人にとって大きな意味がある
1件のコメント
Hacker Newsのコメント
FAANGのMLエンジニアとして、この半年ほど受け身で転職先を探していたが、企業が札束を持って押し寄せてくるという通説とはまったく違っていた
プロフィールのおかげでリクルーターからのメッセージは多いが、半数以上はプロセスの途中で音信不通になり、リクルーターの関心はオファーに転換されなければ、自尊心のための虚栄指標にすぎない
需要は多くても採用基準も非常に高く、企業は自社で使っている厳密な技術スタックの経験を求める。主要なMLフレームワークはいくつかあるのに、そのうち1つにしか慣れていないという理由で多くのポジションから外され、ある会社では特定技術の経験が6年で、最低要件の8年に満たないとして落とされた
これまでの結果は不採用1件と、シニアへのダウンレベル提案2件だけで、目標はStaff+だった。報酬もほとんどが現在の総報酬の半分ほどで上限に達しており、それ以上出せる会社は数えるほどしかなかった
全体として、MLエンジニア市場はソフトウェアエンジニアよりはましだが、2020〜2022年の過熱市場とはまったく違う
Googleのエンジニアはいまだに概してハイレベルな人材と見なされ、Appleのエンジニアも評判は良いが、市場にはあまり出てこない。Facebook/Metaのエンジニアは平均以上であることが多いが、社内での昇進競争が激しい人たちというイメージがある
求職が難しいならAmazonの可能性が頭に浮かぶ。Amazonの攻撃的な採用後のPIPパイプラインは、少なくとも私の経験では評判を損ねており、ここ数年一緒に働いた元Amazonエンジニアは、スキルが平均以下であることが多かった
もはや「FAANG」と一括りにすることにはあまり意味がなく、各社出身のエンジニアに対する期待値はかなり違う。さらに、どの会社も数年前ほど注目されておらず、純粋なエンジニアリング能力よりも巨大企業で生き残る能力を求める方向に移っている
ゴールデンハンドカフスは現実であり意図的なもので、FAANG水準の報酬をROIで正当化できるほど大きな問題を抱える会社も多くない
またFAANG内部のスタックには外部にない優れた社内ツールが多いため、「この人は専門家なのか、それともGoogle内部スタックをうまく使う専門家なのか」という疑念が生じる。すぐに生産性を発揮できるのか、それともまずそのツール群を作り直さなければならないのかも問題になる
誰もがCEOや投資家にFAANG人材を引き抜いたと言いたがるが、実際に入札競争をする財布や適切な状況を持つ会社はまれだ
2020年に採用マネージャーとしてMLエンジニアを採用していたときも同じ問題があり、中堅企業では「そもそもMLエンジニアをどこで使えばいいのか」という問題もよくある。データサイエンティストや汎用ソフトウェアエンジニアでないなら中間的な役割を作るのは難しく、データチームがエンジニアリングのワークフローやツールに慣れていないと、MLエンジニアがバージョン管理されたクリーンなシステムを作ってもKPIではないため無視されやすい
まったく同じ仕事を別の会社でやろうとしているのでなければ、面接では実際に入社後に慣れたい技術についても専門家のように見えるよう準備すべきだ。場合によっては経験を多少盛る必要があるかもしれない
専門性は結局、知っている事実よりも思考様式にあるべきだが、採用市場はそう見てくれないので、うまく取り繕い、あとで夜間の勉強で裏付ける覚悟が必要だ
また、レベルは環境ごとにそのまま対応するわけではない。自分に合った仕事を見つければ上がれるし、レベルや報酬に固執すると、かえって選択肢が狭まることがある
経験や責任に比べてかなり過小評価されていると感じるにもかかわらず、最近の求人の報酬と福利厚生はひどい水準だ
EUでよく言われることとは違い、多くの求人は「ハイブリッド」や「柔軟性」を掲げているが、面接の終盤になって初めて週3〜4日の出社が必要で、「協業」のため対面会議を好むと明かす
インフレ調整を口にしながら賃金は下がっており、EUは米国式の過熱と不安定さは追随しつつ、賃金水準は追いついていないように感じる
例えば、より多くのチップを確保するのは難しく、すでに計算資源が逼迫した環境で、実験の回数も減り、スループットも下がる可能性が高い
現在の米国の採用難は、単に企業が選り好みするようになっただけよりも、もっと悪意のある面があると思う
第一に、米国企業はより低コストで海外チームを雇う方法を学びつつある。毎週、南米やインドのチームを低単価で提供するというメールを何通も受け取っており、以前の会社でも純粋なコスト削減を理由に米国/北米の人員を大幅に削減し、インドのチームに置き換えるのを直接見た
第二に、米国企業がコロナ期に労働者側が手にした主導権を取り戻そうとしている流れもあるように見える
求職を始めたばかりなのに、すでにうんざりしており、音信不通、無返答、「要件に対して経験年数が足りない」といったことを経験している。例えば.NET 6の経験3年が必須、というようなものだ
今日、主要な競合他社を見てみたところ、ある会社はメキシコでプログラミング職を大量に募集しており、別の会社は主にインドで採用していた
米国のエンジニアリング職を奪うのはChatGPTではなく、他国のより安い開発者たちだ。その多くは英語力もプログラミング力も十分で、一緒に働いたことがあるので分かっている
仕事をリモートでできるなら、世界中の誰かも同じ仕事を5分の1のコストでできる
「求職用マイクロサイトの重要要素」の中で、プロフェッショナルなプロフィール写真を入れるようにという助言には従わない
写真家として働いてみて、カメラの後ろでボタンを押す側のほうがずっと向いていると学んだし、米国の採用では写真を入れるべきではないと思う
長い差別の歴史と、いまなお残る偏見のため、可能なら名前も、性別、人種・民族、カースト、社会経済的背景の手がかりになるので、削除したほうがよい
写真は採用プロセスから取り除きやすく、実際に米国では消えていたのに、LinkedIn のような「ソーシャルメディア」型サイトが履歴書にプロフィール写真を再び持ち込んだ
奇妙に聞こえるかもしれないが、多くの欧州諸国では履歴書にプロフィール写真が目立つ形で入る。EU オフィスの採用を初めて始めたときは衝撃だったが、現地ではそういうやり方なのだ
欧州は差別問題で米国より進んでいるとよく聞いていたのでなおさら驚いたが、実際の履歴書にはプロフィール写真はもちろん、婚姻状況まで書かれていた。現地のリクルーターにこうした情報を削除させたところ、こちらが変な人扱いされた
履歴書に「未婚」や「既婚」と書く人もいるが、最近は減ってきていると聞く
清潔感がありプロフェッショナルな外見を示すことは雇用主にとって実際に差を生み、会社はそうした基準を守らなかったことを理由に、合法的に解雇したり採用しなかったりできる
筆者のように経験豊富な開発者でも努力が必要だという点は疑わないが、30件応募して3件のオファーは夢のような結果だ
キャリア初期の人の多くは、100件以上応募して面接が数件、運がよければオファーが1件という程度である可能性が高い
米国の開発者平均と比べると、期待値はかなり控えめだった
6社に応募して4社で面接を受け、2社からオファーをもらった。実質的にはジュニアだったのに、ミドルレベルのポジションに応募していた
面接の数が少なかったので、その面接に熱意と集中力を注げたのだと思いたいが、生存者バイアスかもしれない
その後の面接3回では良いオファーを2件もらい、米国のソフトウェアエンジニア職としては報酬が50パーセンタイル以上だった。特別に頭がよくて圧倒したわけではないと思う
数撃ちゃ当たる式の応募戦略を取るエネルギーはないし、面接そのものが嫌いで、ライブコーディングでは頭が真っ白になる。だから本当に働きたい場所、そしてその会社も協業しやすい普通の開発者を歓迎しそうな場所にだけ応募する
平凡な仕事にも心から興味を持てるし、強い意見を持ちながらも簡単に変えられる。おそらくこの二つが自分の秘訣なのだと思う
残りの5社はこちらから断ったか、プロセスを終える時間がなかった。今の市場は当時よりずっと求職が難しい
まともな応募や面接をしたことがなく、いつかこれが足を引っ張りそうだ
2種類の駒だけに対応する制限付きチェスプログラムを2時間以内に書けという課題は簡単ではない
チェスプログラムを自分で書いたことはあるが、2時間以内にプロジェクト構成、データモデル、合法手、テストまで作れるかは疑わしく、作れたとしてもバグだらけのコードになりそうだ
それでも約2.5時間かかった
かなり機械的で一直線な実装のように聞こえる
一般的な採用で、リクルーターによる一次面談、採用マネージャー面接、1〜2回の技術面接、場合によってはプロダクトマネージャーやCTO/創業者との面接まであって、合計4〜5回を経るのはもう珍しくないとはいえ、やはりかなり狂っている
それでも数週間にわたる追加面接プロセスを強制的に通さなければならず、これは狂っているだけでなく時間とリソースの無駄でもある
第一に、電話スクリーニングまで進めばほぼ確実にオファーを受けるので、実際の時間コストは思ったほど高くない。電話スクリーニングがなければ現状と変わらず、スクリーニングがあるなら面接一式の待ち時間が長いかを確認し、長すぎるなら早い段階で降りればよい。1日8時間なら問題ないが、2か月にまたがる8時間は転職活動を複雑にする
第二に、競合オファーがあるときは時間コストが気になる。給与40%アップを目前にした1日の面接ならよいが、転職活動に丸5日を使うのは、休暇が有限である以上負担になる。ただ、雇用主の半分ほどは競合オファーの証明を実際には求めないようで、希望報酬XYZを提示し、合わせてくれればすぐサインすると言うと、意外と合わせようとしてくれる
第三に、平均的な技術面接は10〜20分が技術問題の解答で、30〜50分は会社やチームについて候補者が何を知っているかを探る時間だ。新しい会社にはリスクがあり、悪い証拠を外部に隠そうとするため、経営陣のバックグラウンド調査に加えて複数のチームメンバーの現在の見方を聞くことは、問題のある状況を早期に避けるのに役立つ
面接した候補者の1%にしかオファーを出さず、それでも試用期間中に30%が失敗するなら、採用は全員にとって途方もない時間の消耗だ。良い人材は見つけにくく、良い仕事も得にくい
昔のオンサイト面接は往復1時間、合計6時間の面接、昼食まであり、需要の高い会社はそれを何ラウンドもやらせていた。遠方から飛行機で来る場合もあった
Googleの面接を受けに行ったら東海岸の吹雪のせいでSFに3週間足止めされ、その結果Accentureを解雇された友人もいた
それに比べれば、希望する時間に組める4〜6時間の面接は、数日に分割されてもはるかにましだと思う
ソフトウェアエンジニア市場も良くないが、エンジニアリングマネージャー、プロダクトマネージャー、デザイナー、デベロッパーリレーションズのような支援系の役割はさらに悪く見える
私の周りではこうした人たちが特に仕事探しで苦労していて、開発者はペースは遅く待遇は悪くなっていても、仕事は見つけている。私の周りだけなのか気になる
全体的に管理職が多すぎるという経営上の流行が広がっていて、InstagramがTechnical Program Managerの役割全体をなくしたような動きだ
最初の職場では、レイオフの約50%が「管理」側だった。私たちのチームにはもうプロダクトマネージャーがおらず、大きな案件でなければデザインを気にするなと言われた。この2つの役割は事実上チームリードに吸収され、今では彼がモックアップとプロダクト判断を担当している
2番目の職場では、レイオフの70%が管理側だった。あるマネージャーは5人の1チームから、合計25人の4チームを担当するようになり、デザイナーとプロダクトオーナーも失った。今ではそうした判断は残ったプロダクトオーナーか技術チームリードが担っている
うちの会社も採用中だし、私の受信箱も採用企業からの連絡でいっぱいだ。プロダクトエンジニアリングとリーダーシップ職についての話だ
市場が冷え込んでいるのはジュニアに対してで、いつどのように変わるかは不透明だ
ちなみにシリコンバレー基準で、パンデミック中に移住はしなかった。結局こうなる可能性はあると、ずっと疑っていた
今日、ソフトウェア開発者として生きるのは、絶えずくだらないことを処理しているような感覚だ
みんな大丈夫なのか気になるし、正直かなり疲れた。仕事探しは魂を削る行為で、応募書類を送る作業は時間ばかり食い、無駄に面倒で、シーシュポス的な反復のように感じられ、人生を浪費している気がする。役に立つことを学ぶわけでも、実用的なものを作るわけでも、人生のどの部分も改善しないし、実証済みの自動化方法もなさそうだ
なぜ開発者がここまで疲れなければならないのか理解できない。Java、JavaScript、Python、Go、SQL方言、bashやawkのようなスクリプティング、ansible、chef、terraform、AWSサービス数十個、複数のデータベースと実装、よくある脆弱性の種類、DNS、TCP-IP、HTTP、WebSocketなどのプロトコルまで知っていなければならず、無重力で二分木を反転することまで求められているようだ
GitHubの活動グラフはアマゾンの森の航空写真のようでなければならず、ブログを維持し、カンファレンスで発表し、ときどき論文のような文章も書かなければならない。それでも十分ではなく、アルゴリズムとデータ構造、言語別、フレームワーク別、ペアプログラミング、システム設計、プロダクト、会社・業界知識、課題、技術発表、人物面接まで、さまざまな面接で優れていなければならない
大企業に入って「成功した」と感じても、なぜ安心できないのか分からない。なぜ何かを作って直す代わりに、ずっと転職活動モードで生きなければならないのか、ため息しか出ない
こういう方式がソフトウェア開発者にだけ特異なのか知りたい
すべてのリクルーターが、LinkedInにある情報とほとんど同じなのに履歴書を求めるのは、雇用主に渡せる同意の印のように見える
どこか外国の文化圏を訪れたとき、誰かに見知らぬ杯に入ったお茶を勧められて一口飲んだら、後で別の人から、今結婚したところだと教えられる話のような感じだ
リクルーターのかなり多くは第三者で、応募者の履歴書を受け取って渡すだけが仕事という場合が多く、コールド応募と特に変わらない、もう一つの愚かなレイヤーになっている
リクルーターが持ってくる求人が、同じサイトで別の第三者企業によって職務記述の一文字も変えずに再掲載されていることもよくある
一部のリクルーターは、連絡先情報を削除して自分のロゴを入れやすいようにMS Word文書を求めることもある
ある企業が IQテストを使っていたというのが興味深い
まだそういうものは経験していないが、先週は「性格」テストで、左派寄りの候補に投票するか右派寄りの候補に投票するかを尋ねる応募フォームを見た。ヘルスケア分野の企業だった
GitHubが私の履歴書をAIで確認してよいか承認を求めてきたのも、少し躊躇させられた。許可しなかったし、他の応募者より不利になった感じは確かにあった
それに 性格検査 全般も違法にすべきだと思う
INFJ、INFPのような性格タイプを尋ねるあの検査だ。コーディング職でこれを求めるのは本当に奇妙なことで、LeetCodeだけ勉強すればいいのだと思っていた