アメリカのジョブマーケットの厳しい現状について

TLDR

  • アメリカのジョブマーケット(雇用市場)はかなりひどい状態。職探しに半年かかることも珍しくない状況。
  • 前回の技術書典で海外キャリアチャレンジ本を出しておいてなんだけど、アメリカのIT市場に挑戦するのは全くおすすめできない
  • 駒城の最近の話

はじめに

駒城です。前回の技術書典で海外キャリアチャレンジ本を出しましたが、海外エンジニア就職の明るい面だけを喧伝して回るのは説明責任に乏しいなぁなんて思ったのでこの記事を書いています。海外キャリア本の外伝・フォローアップ記事みたいな感じで読んでください。
おととし・去年の時点からしアメリカのジョブマーケットはまぁまぁ悪かったのですが、昨年の技術書典で自著を頒布した時点では、悪いなりにこれから上向いていきそうな様子だったので「まぁこれを読んだ人が意思決定するころには良くなってるだろう」などと思ってそのまま頒布をしました。
しかし、今年に入ってからまたジョブマーケットは急転直下し、今やリーマンショックに匹敵する氷河期と言われるくらいひどい状況になってしまいました。 筆者の最近の様子も交えつつこの辺のお話をしたいと思います。

アメリカの最近のジョブマーケット

前述のように、「リーマンショックに匹敵する市場の悪さ」です。
僕から説明するよりも、下記の記事を読んでいただいた方が分かりやすいと思います。

  1. www.cnbc.com
  2. The job market is HELL. : r/jobs

僕の周囲から聞いた話も加味すると、以下のような感じです。

  • エントリーポジション(未経験枠)はほぼない。少なくとも3年、たいていの求人は5~10年その業界で実務経験がある人しか雇われない
  • 1つの求人に数千~数万人が殺到している
  • 求職者は毎日数十の求人に応募している。それでも面接にすら繋がらない。
  • レイオフされてから次の仕事が決まるまでに半年~1年かかるのはザラ
  • これを好機と詐欺やゴースト求人(実際には募集してないのに出ている求人)が溢れていて、もはや本物を見極めるのも一苦労

宝くじを当てに行くようなものだと思います。コストは体力と精神力。Redditのスレッドでは、「今の状況なら毎月500件応募してやっとスタートラインだよ」なんて書き込みもありました。本当にそうだと思います。ひたすら数を打ってリクルーターからのコンタクトを待つしかない状態。
アメリカで永住権を持っている人々ですらこんな状況です。そのため、ビザの制約がある外国人は必然的に採用優先度が下がります(会社はできればビザスポンサーなどというお金と時間がかかることはしたくないので、それらが必要な外国人は採用したくないのです)。

そんなわけで、今アメリカに挑戦してみようとするのは全くおすすめできない状況です。
この記事で最もお伝えしたかったことはこれです:今はここに来てはいけない

求人詐欺とゴースト求人

これが結構怖い。求人の中に個人情報を集めたいだけの詐欺が混じっています。
僕も既に何件も受け取っていますが、実在の会社を名乗ったり、ペーパー企業を名乗ったり様々な方法で求職者に直接メールを送り、個人情報を盗んだり、特定のファイルを開かせてウィルス感染させたりしようとしてきます。
ここをクリックして詳細をご確認ください、がフィッシングサイトだったりもします。
また、ゴースト求人というのも氾濫しています。詳しくはわかりませんが(そしてRedditなどの情報なので不確かですが)、求人を出すと政府から補助金が出る地域があるそうです。
その補助金目当てに、実際は雇う気はゼロなのに求人を出すわけです。そういう企業からは大抵お祈りメールすら来ません。
けれども求職者にはその見分けがつかないので、大事な時間を消耗してゴースト求人にも応募してしまうわけですから、とんだ迷惑です。

筆者や筆者の周囲の最近

アメリカの大学は12月と5月が卒業時期で、僕は5月に卒業予定です。3月半ばの現在の時点でゼロ内定です。
それどころか、昨年12月に卒業した元クラスメイトたちもまだ仕事が決まらず苦しんでいます。つなぎの仕事・インターンシップを見つけられた子たちはちらほらいますが彼らはラッキーですね。
我々留学生は卒業後OPTという制度で働くことができるのですが、90日間までしか無職期間が許されていません。つまり、(それぞれの状況によるところはありますが)卒業後90日間の間に仕事を決められなければタイムオーバー帰国です。この時間的プレッシャーと戦いながら暗中模索で就活をするのはかなり精神的に厳しいです。

先ほどゼロ内定と書きましたが、正確には、今のところ400以上応募して書類選考が通ったのはゼロです。
履歴書が悪いのか?カバーレターの書き方が下手なのか?などなど色々と周りにも相談しましたが、「君は全く悪くない。市場が悪すぎる」と言われました。少し安心する反面、自分に改善できることがないのはかなり八方ふさがり感が強まりますね。やばぁい。
日本にいたころもここまで就職で苦しんだことはありませんでした。マジきついです。

さいごに

そんなわけで、前回技術書典の自著のフォローアップ的な感じでこの記事を書いてみました。今のアメリカジョブマーケットのやばさが伝わったでしょうか。
早く採用数が回復してほしいところですが、いつジョブマーケットが回復するか誰にも分かりません。しいてわかるとすればFRBとかですか?
もしかしたらこの後良くなるかもしれないし、そうであってもその後また悪くなるかもしれない。今採用されても数か月後にレイオフされるかもしれない。とてもとても暗中模索です。
とりあえず、タイムオーバーにならないことを祈るばかりです…

2023年ふりかえり

特に意味もなくさかな(カリフォルニアサイエンスセンター)

はじめに

ことしも一年が終わるぞ。色々あった一年でした。

ざっくり

  • 1月:年末年始日本旅行から帰還
  • 2月:なにもない アントマン3をみた
  • 3月:なにもない 映画もなかった
  • 4月:ディズニーランドにいった
  • 5月:ゼルダ出たから全力プレイしたら期末試験ボロボロになった
  • 6月:セキュリティの研究始める 技術書典やるぜ!と言い出し始める
  • 7月:サンディエゴに旅行
  • 8月:BlackHat奨学金を受けてラスベガスへ
  • 9月:なにもない
  • 10月:日本旅行の計画を始める
  • 11月:技術書典
  • 12月:日本旅行(今年二回目)

通年通していろいろあったこと

親の病気

親の癌、しかもかなり進行している、が突然発覚し、てんやわんやになりました。
うちはひとり親なのでこういうことが起きたときには物理距離の開きから色んな困難が発生すると思っていましたが、まぁ実際そうなりましたね…。
こればかりは親も、「子供が海外に移住してしまう以上死に目に会えない可能性があることは覚悟している」とのことで、海外に挑戦する以上避けられないリスクなんだと突然実感させられました。
不幸中の幸いは親が毒親だったことですかね。物理的距離が離れて関係は多少改善+肉親である以上ある程度の世話はすると割り切っていたので、良くも悪くも自分への精神的ダメージはそう高くありませんでした。完全に無いではなかったですけどね勿論。
弟と地元の友人にかなり助けてもらってどうにか乗り切れそう?な感じです。ただ、この話は現在進行形で、まだ乗り切れていないので来年も間違いなくバタバタになるだろうなあ。

5月の期末試験

マジで試験勉強はちゃんとしようって思いました。
あれは勿体なかった…後悔先に立たずなのとギリギリ引っかかってるのでGPA自体にはノーダメージなのでそこまで落ち込まなかったのですが。
人間誘惑に負けてはならない場面ってあるよね。

学内での対人トラブル

縁あってセキュリティの研究を始めたのですが、そのラボに、仲良くなればなるほど人にナメた態度を取る+不謹慎・差別的なジョークを言うことをとにかく好むタイプの学生がいたため、耐えられなくなって3か月くらいでラボを辞めてしまいました。
これ以上その人と接し続けていたら本当に自分がおかしくなりそうだったので後悔はしていません。
自分は日本では何度もハラスメント(パワハラ、セクハラ、色んな形で)を受け続けてきましたが、悔しいと思いながらも自分を責めながら沈黙するしかなかった時間がとても長かったです。この経験のせいで、僕は理不尽に相手にナメられることにかなりトラウマを抱えているようです。そもそも日本から出てきたのもこれが大きな理由なのですが。
こういう問題が起きたときに戦わずに逃げることを批難する方もいるかもしれませんが、僕はそもそもこういうことを考えずに技術に集中できる環境に行きたくてアメリカに来ました。私生活では差別とか色々あるとは思いますが、少なくとも「技術者」モードでいるときにこういう気持ちは味わいたくなかったからです。
本人に言って改善を促せばよかったじゃんは実際に言われたのですが、直接対決が自分の精神を余計削ることも知っていたのでそのときの自分にはできませんでした。それに何より、返事として暴力が返ってくるのが怖かったですし。
僕自身としては、自分の感情を大切にして、ただ硬直するのではなく逃げるという選択肢を取ることができた自分の成長を誇りに思っています。
ある意味、自分の感情に向き合う良いきっかけになったと思っています。

新しいことを色々はじめた

ポジティブな話も…
今年は2つの奨学金プログラムに合格・参加し、新しいことを学んだり人脈を広げたりすることができました。
それから学生向け認定資格プログラム1つと、技術書典への参加も行いました。 凄く当たり前のことなのですが、以下のことを着実にこなすだけで周りからの評価は上がり、新しいチャンスが舞い込んでくる確率が上がるなぁ、と再認識しました。

  1. やるべきこと(学校の課題など)はみんなより早く終わらせる。理想は、みんなが始めるときには終わっているようにする
  2. 新しい機会を積極的に探し、積極的に挑戦する
  3. 自分の知識や経験は積極的に周囲に発信する

1番は特に学校ではすごく大事なことだと思います。これをやると、クラスメイトが自分にヘルプを沢山出してくるようになります。そのヘルプにできるだけ応じていると、クラスメイトとの関係が良くなり信頼が厚くなるだけでなく、教授もそれを見て「こいつはできるやつ」「協調性がある」と評価してくれます。
正直言って「なんでこんな状況になるまで何もしなかったんだ…こいつを助ける義理…」って思うぐらい酷い状況もありました。そういう場合は助けるために自分が無理しないことも重要なので、自分の中でボーダーラインを引いておくことはとても大事だと思います。 アメリカでも、当たり前のことを当たり前にやるということは、全員が全員できることではない貴重なスキルのようです。これを徹底するだけで他の人からの信頼が生まれます。
来年もこの点は気を抜かずにやっていきたいと思います。

来年

ついに就活です。ウゥ、ストレス。
卒論も仕上げねばですし、次回技術書典にも新刊持って行きたいです。それからもう一つ嬉しいプロジェクトが走り始めたので、そちらも頑張らねばです。
がんばります。

MongoDB Associate Developer Certificationに合格した話

勉強時間約15時間、無料で受験して保持資格増やせました。
模擬試験も無料で用意されてて、それを完璧にするだけでどうにかなる試験です。
しかも自宅オンライン受験ができるのでとても受けやすい。
詳細は各ページに書いてますのでぜひ。

Japanese

qiita.com

English

medium.com

今更だけどHacker Summer Camp 23(BlackHat + DEF CON)レポ

この記事は

komajou.hatenablog.jp

↑参加する前には記事書いたんだけど、参加した後に記事を書いていなかった。
2023年8月、奇跡的に、BlackHat USA 2023学生スカラーシップ受賞者に選ばれまして、ラスベガスに行ってまいりました。
学生スカラーシップの選出人数は140人(だったかな?)だそうで、その中の一人に入れたことは本当に光栄なことです。選んでいただいてありがとうございました。
アメリカの大規模なテックカンファレンスに参加するのは2019年のre:Invent以来で、やっぱりテックカンファレンスの雰囲気だったり、色んな人とランダムにお話をしてネットワークを広げる感じが大好きなので、今回も本当に本当に楽しませていただけました。お友達もたくさんできました。
ついでに、旅行中色々あって、DEF CON当日に急遽そちらにも参加できることになり、そちらにも初めて行ってまいりました。
Blackhatとはまた違うカオスとエネルギーを体感してきました…! というわけで、レポ!

BlackHat

ルクソール

開場はマンダレイベイ、会期中はルクソールに滞在してました。相変わらず、圧倒的不夜城

BlackHatだ!

それで一日目。参加費高いカンファレンスだけあって何もかも豪華でした。ラスベガスのテックカンファレンスにきたぜ~って感じがすごくします。

ノベルティ

ノベルティバックパックでした。

あさごはん

朝食もおいしかったです。
朝食は、Linkedin経由で知り合った同じく学生スカラーシップ受賞者のみなさんと、事前にTwitterでナンパしてきた日本から参加するエンジニアのみなさんと一緒に食べました。
突然のお誘いだったのに快く一緒に朝食をとってくださった皆さんに本当に感謝です!!
知人の知人な感じで10人近くで一緒にご飯を食べることになり、色々な人が集まったおかげで色んな話が聞けたので、超いい時間でした
勇気出して誘ってよかったです、ホントに

キーノート会場
キーノート

キーノートはいつものとてつもなくデッカくて演出がかっこいい会場でした。
キーノートの開幕はBlackHat/DEF CON創始者のJeff Moss氏からのご挨拶から。
「学生スカラーシップで来た人手上げて~!周りの人はコミュニティに彼らがやってきたことを歓迎してあげてね!」みたいなのがあったおかげで、周りの方々からメッチャにこやかにHello!Hi!って声かけてもらったのを覚えています。あったけえ。

セッションやビジネスエリアで聞いてきたデモは全部面白かったです。ちょっと歩けば新しい物を色々発見できてたすかります。
セッションは特によかったのがいくつかありましたが、なんかどれも、セキュリティ初心者としては100万回「やべぇな、この攻撃方法思いつくのがまず人間を超越してる」って感想でした。
BlackHat前に話題になっていたテスラハッキングこと「Jailbreaking an Electric Vehicle in 2023」は特にクレイジーを感じましたね。最高にクールでした。テスラ絶対倒すマンだ。

このリンクからスライド見れるみたいです。 https://i.blackhat.com/BH-US-23/Presentations/US-23-Werling-Jailbreaking-Teslas.pdf

あと、面白かったセッションはこのへんでした。 他は、会場広すぎて歩くの疲れすぎていくつかセッション聞きに行くの諦めちゃったので、時間があるときにスライドを眺めています…(行った意味)
カンファレンス会場の中に、ディズニーランドみたいな移動用電車引いてくれないかなあ。マジでさ。

https://i.blackhat.com/BH-US-23/Presentations/US-23-Tervoort-Three-New-Attacks-Against-JSON-Web-Tokens.pdf

https://i.blackhat.com/BH-US-23/Presentations/US-23-Kouremetis-Mirage-Cyber-Deception-against-Autonomous-Cyber-Attacks.pdf

ライトセーバー6本集まった
あとは、なんかやたらライトセーバーが集まりました。教授の息子'sのもとへ。

一番おいしかった

それから、BlackHatはおやつのじかんになるとその辺にスイーツが展開される神仕様でした。このプリン?みたいなやつめtttttttttttttっちゃ美味しくて5個くらい食べちゃった。

観光

マルーン5だ!!!!

Maroon5を見ました。人生で一回だろうなあ。めちゃめちゃよかった。高校の頃からずっと好きだったので涙が流れちゃったよね…

DEF CON

色々あって家に帰らなくてもよくなったので、その場でホテルとDEF CONチケットをうおおおおおって手配しました。

入り口入ってこれ!カッコいい!!

DEF CONはBlackHatとは打って変わって、コミケみたいな雰囲気でした。
色々”ヤバイ”エリアやセッションもあって刺激的でしたし、幅広くハッキングに関わる色んな知識を得られました。
が、しかし、何と言っても人混み、人混み、人混み
メイン会場では人が詰まって前に進めないし、人気のセッションは1時間並んでも入れない
参加者の人数に対して会場のキャパが小さいがためにディズニーランドをさらに圧縮したみたいな雰囲気でした。前日までおやつのじかんまである甘やかされっぷりだったがためにかなりしんどかったです。真夏のラスベガス、気温40度あるし…。
色々面白い経験はできましたし、参加して良かったと思いましたが、2回目行くときは事前にもっともっとしっかりと準備をしていかないとだな、ピョンっと突発参加してもしんどさが勝るな、って感じでした。こっちではあんまりいい思い出を作れなかった、残念…。
今後もっと大きな会場でやってほしいなあ。
なお、こんだけ混んでたら絶対病気も蔓延するだろうなーって思ってたら、数日後から「DEF CON Covid」なるワードがTwitter/Xに溢れたようです。だよね。

帰路

インスペクションセンター
インスペクションセンターを通り過ぎるの、なんか好きなんですよね

I3D Feature Extractionと実装についてまとめてみる

English:

medium.com

この記事は

大学の卒論のためにI3D特徴抽出(I3D feature extraction)を使う必要が出てきたのですが、とても情報が少ないようです。
英語でもあんまりないのに特に日本語だと解説している記事がないようだったので、自分なりにまとめてみようと思います。
この記事を読むと、I3Dとは何か?というのと、実装方法がざっくりわかるようになっています。

念のためですが、この記事はAI入門したてのいち学生がまとめたものなので、この記事に誤りが含まれていた場合に発生する不利益などの保証はできません。
あとAI入門したてなので極端にシンプルに解釈しています。正確な情報はオリジナル論文をチェックしてください。

記載に誤りがある場合、ぜひコメント等でご一報ください。スッとサイレント修正しまs🤯

I3D特徴抽出とは?

概要

Joao CarreiraとAndrew Zissermanによって2018年にCVPR*1で発表された、Quo Vadis, Action Recognition? A New Model and the Kinetics Datasetという論文が初出です。正式な名称はTwo-Stream Inflated 3D ConvNetとされています。

arxiv.org

要約すると、この論文では、Kineticsというビデオクリップデータセットを分類するタスクを実行するためにI3Dモデルを導入し、この論文発表時までに存在していた他のモデルに比べて高い精度での分類を達成しました。
内部の仕組みの話を少しすると、このモデルは2D ConvNetの膨張をベースにしています。深い画像分類ConvNetsのフィルタとプーリングカーネルが3D(幅、高さ、時間)に拡張されたことで、ビデオからの時空間特徴抽出ができるようになっています。

Kineticsデータセット

このデータセットは、人間が何らかの動作をするビデオクリップで構成されます。これらはYoutubeから収集されました。各クリップはそれぞれ約10秒です。
全部で400クラスあり、さらに一人称アクション(Person Actions(singular))と、人対人アクション(Person-Person Actions)の2カテゴリに分かれています。
それぞれのアクションの例としては、一人称アクションクラスは絵を描く、酒を飲む、笑う、パンチをするなどの動作で、人対人アクションはプレゼントを開ける、芝刈りをする、皿を洗うなどの動作です。

もうちょっと詳しいしくみ

イデア自体はとてもシンプルです。画像畳み込み(2D)アーキテクチャで高い精度を持つモデルのアーキテクチャーを3次元(幅・高さ・時間)に拡張させるだけです。
これによって、NxNのフィルターとプーリングカーネルNxNxNになります。
また、事前トレーニング済みのImageNetモデルのパラメーターをブートストラップすることで、2Dモデルのフィルターをそのまま使っています。ただ、この仕組みを活用するためには、トレーニング済みの2Dモデルで使っていた画像入力サイズ(つまりフレームのサイズ)をキープする必要があります。

2つのネットワーク

I3DはRGBとFlowの2つのネットワークを持っています。 RGBモードはその名の通り、ビデオのRGB入力から特徴を抽出して、純粋なフィードフォワード計算を行います。 FlowモードはオプティカルフローのFlowです。現在のフレームと前後のフレームを比較することで、ビデオの中で検出された差異=動き=特徴として抽出します。 これらは別々にトレーニングされているのでそれぞれ独立したモードとしても使えますが、組み合わせて使うことでより多くの特徴を抽出できます。

I3Dモデルを実装する

ここまで紹介した論文「Quo Vadis」の実装(本家)はこのリポジトリです。

github.com

本家リポジトリを使うことでもI3Dモデルの実装はできますが、OSSとして利用しやすい形にまとめられているリポジトリが2つあります。ユーザーが実際に利用する場合にはこのリポジトリを使うのが一番簡単だと思います。

github.com

github.com

Finspire13/pytorch-i3d-feature-extractionはI3Dについてググったときに一番上に出てきますし、StarやForkも多いのでこちらがベターそうにみえます。

また、僕は試していないのですが、GluonCV*2もI3D特徴抽出モジュールを持っています。サクッと試すならこちらのほうが簡単かもしれません。

cv.gluon.ai

おわりに

後からわかったことあったらまた直したりします。

*1:Computer Vision and Pattern Recognition。コンピューティング系で最も権威がある学会のひとつで、コンピュータービジョンだと間違いなくトップだそうです。ソースは僕の指導教員とWikipedia

*2:https://cv.gluon.ai/contents.html

Connected Components Workbenchをインストールする

手順

1. Rockwell Automationのアカウントを作る

www.rockwellautomation.com

Rockwell Automationのサイトにアクセスして、まずは言語選択。
その後、アカウントを作る。CCWのインストールにはアカウント作成+組織名の登録が必須。
メールアドレス認証までを行う。

2. ダウンロード

ダウンロードセンターに移動。

compatibility.rockwellautomation.com

検索バーにアプリケーション名を入力して、Connected Components Workbenchを見つける。サジェスト名をクリック。

製品が表示されるのでDownloadをクリック。

バージョンが表示されるので、とりあえず通常の最新版を選択。ダウンロードをするにはDownloadカラムのアイコン(超小さい)をクリックする。

メインファイルにチェックを付けてから、右上の買い物カートマークをクリック。
会社名(組織名)を設定していないと、ここで次の画面に進めなくなる。うまくいかないことがあったら組織名をチェックすること。

Download Nowボタンをクリック。

次の画面でアグリーメント画面になるので、同意して次へ。Exeファイルをダウンロードする。

3. インストール

インストールに必要なファイルが自動展開される。

デフォルトではC直下にRAというフォルダが作られる。その中にexeとrarが作成されるので、exeのほうを実行する。

exeを実行後、フォルダが生成されるのでこれを開く。

フォルダの中に Setup.exe というファイルが生成されるので、これを実行するとインストールプロセスが開始される。めっちゃ時間かかる。
インストール後半に、PLCに接続するのに使うEthernetネットワークアダプターを選択するウィンドウが出るので、適切なものを選択する。

3. インストール後

C直下のRAフォルダは削除してOK。
スタート画面では、Rockwell Automationディレクトリ下にConnected Components Workbenchが登録される。
起動にちょっと時間がかかるが、ワークベンチが表示されれば完了。