前回タイトルに書いておいて忘れてしまった、SSNの件。

H1B ビザで入国した人は、10日後にソーシャルセキュリティオフィスに行きます。この10日というルールは、I−94の日付から10日たたないと入国情報が届かないからだそうです。よくわかりません。しかし僕は3日後に行ってしまいました。いろいろ言われましたが、受理はしてくれました。SSオフィスは主要な市の中心部など、あちこちにあるようです。僕はバークレーのオフィスに行きました。

入室するとまず受付装置があるので、新しいカードの発行を選んで番号札を受け取ります。その後ベンチで待ちます。ベンチには全部で15人くらいが待っていましたが、何を待っているのかよくわかりませんでした。2〜3人後に自分の番号が呼ばれたので、新しく取得したい旨とパスポートを提示します。

受付用紙をもらって、記入します。パスポートの番号や両親の名前などを書くくらいですが、SSNカードの届け先にこちらの住所を書かなくてはいけません。ホテルの住所でも大丈夫ですが、いつ届くかわからないので会社の住所にしました。

再度提出し、書類のチェックを受けて終了です。数週間かかる場合もあるようですね。気長に待つことにします。でも年末日本に帰るんですけど、大丈夫かなあ・・・?

さて銀行について。ユニオンバンクは日本で口座開設できるのが良いのですが、チェックブック(小切手帳)をくれません。電話や窓口で申し込めば良いのですが、この小切手帳には住所が印字されるため、どうせ有料でもらうなら住むところが決まってからの方がよいですよね。ところが賃貸契約して自動引き落としや給与振り込みの手続きなどの際には、小切手が必要になります(お金を動かすためではなくて、口座番号とルーティング番号の確認のため)。

こういうときは、銀行に行って、「カウンターチェック」をくれ、というと手書きで口座番号を書いた小切手帳を渡してくれます。使い道によってはいやがられる場合もあると思いますが、とりあえずこれを5枚くらいもらっておけば事足りるでしょう。お金もかかりません。

なお日本からアメリカの銀行にネットバンキングで送金するには、事前に口座を登録しておかないといけません。三菱東京銀行では2011年12月からグローバルダイレクトに入らなくても外国送金が出来るようになりましたが、これも事前申し込みが日本で必要です。

三井住友銀行のダイレクトは、事前に申込書と本人確認書類を送って外国送金を有効にしておきさえすれば、宛先の銀行口座の登録はネットからでも出来ます。ほぼ1日後に送金ができるようになっていて、ネットで送金するとその翌日には送金が実行されるようです。数10万円単位で動かす場合にはこのように結構時間がかかります。

アメリカの銀行間同士での資金移動も日本に比べると面倒です。ネットバンキングでは月2000ドルくらいしか送れないことが多いようです。こういうときは、送金元の小切手を送金先の銀行の窓口に持って行って移動するのが普通のようです。まだやってみたことはないですが、これだと1万ドルとかでも移動できます。が、やはり時間はかかります。

日本の銀行はネットでひょいひょいと自分の口座でも知らない口座でも、100万200万と送金できてしまってすごいですよね。しかも振込先口座にはほぼ即日に反映しているのが素晴らしいと思います。仕組み的には全然問題なくどこでもできそうなものですけどね。

まだまだつづく
まあ到着日は疲れてるし早く寝ましょう、ってことで、次の日を初日にします。
が、僕はここでまず AT&T の店に入りました(笑)。iphone を買うためです。不動産屋や友人と連絡するのにも、日本の携帯ではかけることは出来ても受けることがままなりません(通常こちらの人の契約は国際電話不能だったりするため)。まだ SSN がありませんが、AT&T の店頭でなら $500 のデポジットを預ければ買うことができます。SSN があってもクレジットヒストリがないと同じようにデポジットが必要になるようです。なのでこれはもう仕方ないと思って払いましょう。これでローカル電話番号を得ることが出来ます。

ちなみに日本と違って、携帯でもエリアコード(最初の3桁)を見るとどの場所で買ったものかわかるようです。たとえば 415- ならサンフランシスコ、とか。でも引っ越してもそのまま使いますから、だんだん混ざってきますけどね。データプランにも加入して、とりあえずネットが開通するとかなり安心感が出ます。

さて、すでに住むところが決まっている人はいいんですが、僕の場合はこれから探さなければなりません。幸い会社が2週間分のホテルとレンタカーを手配してくれていますので、この期間にどうにかケリをつけたいところです。

また Be Connected USA というリロケーションサポート会社をつけてもらえました。僕は念のためジャパンリロケーションという日系の会社にも相談したのですが、どちらの会社もよくしてくれました。Be 社は現地の不動産屋(この辺では個人でやっている人が多いみたいです)を2日間やとって、各種手続きをしながらツアーみたいなことをしてもらえました。いくらかかるのか知りませんが、非常に助かります。

最初にバンクオブアメリカに行って、口座を開設します。渡米前に三菱東京UFJ銀行経由でユニオンバンクに口座は開いてありましたが、やはり支店やATMの多さなどでバンクオブアメリカにあった方が良いと思いました。

SSNがありませんが、H1Bビザ付きのパスポートを使って口座開設できます。担当の方はとても丁寧に対応してくれました。住所は仮住まいのホテルを使っておきます。

いろいろ説明を聞いて、CHECKING と SAVING がセットになっているプランで口座開設しました。デビットカード兼ATMカードが発行されます。このデビットカードで買い物をすると、$1 未満の金額をサービスしてくれるそうで、利息が低い今は人気があるみたいです。

SAVING アカウントは普通預金的、と説明しているサイトが多いですが、それは利息がつくから、という意味であって、用途的には定期預金的な意味合いが強いように思います。また今は CHECKING でも小切手帳自体ほとんど使わなくなってきました。相当遅れているといわれていたアメリカの銀行事情も、ネットバンキングのおかげで結構変わってきているようですね。

初期預け入れが必要だったので、最低預入額の $25 程度をいれておきました。すぐに送金の手配をして、維持手数料がかからない程度 ($300) にはしておく予定です。また給与の自動振り込み用の用紙や、他行からの振り込み用のルーティングナンバー、国外からの振り込み用の SWIFT ナンバーなどももらっておきます。ネットバンキングのアカウントも作成しました。
無事ビザスタンプが入手できたので、航空券を手配してもらっていよいよ渡米です。 片道切符になるわけですが、片道航空券よりもPEX等の往復航空券の方が安いですので、 往復で買って片道は使わない、というようなことになります。頻繁に帰ってくるのならそのまま 往復で使い続けてもいいんでしょうけどね。 

出張でいくこともよくあったのでESTAもあったのですが、日本でのチェックイン時にカウンターで ESTAで渡航かビザで渡航かを聞かれます。片道ですと告げて、通常のようにチェックインは完了。

機内では白い入国書類(I-94)と税関申告書に記入します。住所は仮住まいのホテルを書けばOKでしょう。 税関申告書はちょっと悩みます。というのも、その裏面に、

・米国居住者 海外で取得し、米国に持ち込んだ品目をすべて申告して下さい
(リストが足りない場合は複数の用紙を使って下さい)
・訪問者 米国に残す全品目の価値を申告して下さい

とあるわけです。今回は居住者として初めて渡航するわけで、預けたスーツケース2つや機内手荷物は もちろんすべて日本で取得したものなわけです。これを全部申告するのか?と疑問に思って、客室乗務員 に聞いてみました。すると、一応書いた方がいいんじゃないか、とのこと。

引っ越し荷物のインボイスなみに全部書くのかよ、というか預けた荷物なんか覚えてないよ、 と困りつつも、とりあえず20品目くらいリストを作ってみました(実は不要です)。

さてアメリカに着いて、入国審査にならびます。ここで用意する書類はいつもと違って、 ビザ付きのパスポート、機内で記入したI-94と税関申告書、念のためI-797とオファーレターなども 出しておきます。

入国審査ではまず働く会社、職業を聞かれます。ここで税関申告書について問い合わせたところ、 スーツケース2個くらいの私物は申告する必要はない、とのことでした。従って物品総額は0になりました。 一般的に居住者用の生活用品には関税はかからないはずではあるのですが、こうやって個別に確認していかないと 何があるかわからないですものね。たまたま機嫌のいい審査官に当たったのか、これから住む場所を探すが いい場所は知らないか、などと和やかに雑談も交わして、いつもの訪問時と同様に時間もかからず終了しました。 一番大事なことは、I-94の下の部分をパスポートにステープルでとめてもらいますが、この滞在期限をしっかり 確認することです。これがビザの有効期限と同じか、パスポートの有効期限になっている必要があります。

米国に合法的に滞在している根拠は、ビザスタンプがあることではなく、このI-94書類によるものだそうです。 ビザはあくまで入国の審査のためにつかうもので、滞在許可自体ではないんですね。

もう一つ注意としては、ビザで渡航しているときは航空券や搭乗券の控えを取っておいた方が良いらしい、ということです。 これは将来アメリカ国外に出ている期間を証明するために使ったりするためです。

その後の税関検査では、食品があるかどうかだけ聞かれて、スーツケースをX線検査して終了でした。検査せずにそのまま出て行ける場合も多いと思います。これで晴れて就労ビザでの入国が完了しました。

つづく
いよいよ面接の日になります。書類をもって領事館へ。領事館には電子機器、飲食物、危険物は持ち込めません。待ち時間が退屈なので本くらいはあった方がいいと思いますが、なるべく持ち物は減らして書類だけにした方がいいと思います。以下は大阪領事館での手続きの流れになります。

朝一番の回を予約しましたが、面接予約時間の30分前くらいに到着するとすでに10人くらいが歩道になんとなく待っていました。列らしい列はできていません。15分前くらいになって、警備員がパスポートと予約書をチェックし、ドアの前に列を作ります。この時点で20人くらいの列になりました。飲み物は中で預けられないということで、ここで置いておく箱があります。

待っていると順番に3人ずつくらい呼ばれて、入り口すぐの手荷物検査を受けます。携帯電話などの電子機器はここで預けることになり、金属探知ゲートをくぐってボディーチェックを受けます。

次に書類を審査する窓口に並びます。L,Eビザとそれ以外で列が分かれていましたが、ほぼ同じようなペースで進みます。家族分はまとめて処理してもらえました。特に書類に不備が無ければすんなり終わるようです。この辺は東京と大阪で違うかもしれません。待ち時間含めて15分くらいで終わり、面接の階に行きます。 

ここでもまた少し並んで待ちます。面接は二つくらいの窓口で、たったままガラスごしに話をします。面接といっても、普通のアメリカの入国審査のときのほとんど変わらない感じです。指紋をとって、多少の会話が終わると「あなたのビザは承認されました、明日パスポートを投函します」と言われて面接は終了になりました。僕の場合は面接の不要な子供も連れて4人で同時にしましたが、その辺りも入国審査に似ていますね。

あっけないと言えばあっけないですが、事前に手続きをちゃんと出来ていれば大丈夫ということでしょう。それとやはり、手続きをしてくれる弁護士や勤務先の会社によって結構違いは出てくるとは思います。

後はレターパックのトラッキングをチェックしていればよく、言われたとおりに翌日投函され、翌々日には自宅に届きました。I-797 などの書類も一緒に返ってきました。パスポートの1ページ全面にビザが貼られているので、内容をチェックして問題が無ければ、無事取得完了となります。 というわけでおそらく最短ルートだったとは思いますが、オファーを受けてからここまでに45日くらいはかかりました。プレミアムプロセッシングは確かに早いですけれども、LCA を弁護士と会社とでやりとりするのに何度も往復があったりして、なんだかんだで1ヶ月以上はかかってしまいます。面接の状況次第ではもっとかかることも珍しくないかもしれませんね。

これでようやく入社日を確定することができるわけです。併せて航空券の手配、引っ越し準備、仮住まい、現職の退職手続きなど、すごい勢いで事務作業を次々にこなしていかなくてはいけません。僕は引っ越しの準備までは不可能だと確信して、まずは単身で行ってから後日家族と合流することにして、引っ越し関係は家族にまかせることにしました。それでも当面の自分の身の回りや、残していく自分の荷物は整理しておかないといけません。それだけで一週間くらいは必要だったかと思います。
さてH1B(のためのI-797)の申請から裁可までの期間ですが、何もしないと数ヶ月かかるそうです。プレミアムプロセッシングという、1000ドル追加で払うと15日で決定されるという仕組みがあり、今回は会社が弁護士にそれを使う指示を出してくれていました。会社負担では大した金額ではないので、比較的大きな会社のサポートを受けるときは通常適用するんでしょうね。 

なお、この就労許可の申請中、そしてビザスタンプがもらえるまでの間は、アメリカへの渡航は原則しないのが得策のようです。家探しなどしたくもなるんですが、我慢しましょう。

じれったく待ちましたが、きっかり15日後にI-797が認可されたとの通知をうけました。ここですぐに領事館の面接の予約を取るように弁護士から指示されます。

ここからがややこしいのですが、一日でも早くビザを得るためにはかなり手際よく進めていかないといけません。面接予約には DS-160 というオンラインフォームを完成させる必要があります。書類等の依存関係はこんな感じです。 

DS-160 記入に必要な書類、情報:
・H1B認可番号 これは弁護士からメール等で受け取れます。
・家族全員の写真 ビザ用の写真は基準が小うるさい(背景が白で影がないこと、髪型、写真中に顔の大きさなど)のと、電子データとプリント写真の両方が必要です。慣れている写真屋で撮ってもらうのがいいと思いますが、結局僕は自宅の壁の前で自分のEOSで撮った写真と、コンビニでプリントしたもので通せました。でもコンビニプリントでサイズを合わせるのはちょっとコツがいりますね。
・アメリカの連絡先 雇用先のビザ担当者の名前やメールアドレスなどが必要です。
・渡航歴、職歴 ここでも過去の渡航歴と職歴が必要です。

領事館のページから入力画面があり、写真をアップロードしたり必死に入力したりしてフォームを完成させると、最後にバーコードつきの確認ページが出てきます。この番号を使って、領事館の面接予約ができます。 

一方、面接当時までに用意できればいい書類は、
・I-797 (H1B 認可時にもらえる書類。ちょっとかっこいい紙2枚に印刷されている)
・LCA のコピー
・会社からのサポートレター
・学歴証明、その解説など

などです。こちらは僕の場合弁護士がそろえてくれて、Fedex で郵送してくれました。この到着を待ってからの面接予約だと、一週間くらい遅れてしまうと思います。先に予約しましょう。さらにそのほか自分で用意するものとして、

・プリントした写真(5cm * 5cm)
・申請費用の振り込みのATMでの控え
・クリアファイル
・レターパック500(家族一緒のときは一つでOK)
などがあります。

領事館ページでは面接の空き情報が確認できます。確認するためには DS-160 の番号を入力しないといけないのですが、実はここはどんな文字列をいれても確認だけは出来るみたいです。各地の領事館の状況を見たい方は覗いてみるといいかもしれません(悪用しないように)

僕はそのとき福岡に住んでいたので福岡領事館で面接がしたかったのですが、札幌や福岡は月に数回しか面接日がないようです。東京大阪はかなり枠があるんですが、受ける人も多いのですぐ埋まってしまいます。ただ、キャンセルする人も多いようで、日々状況は変わりますからこまめにチェックするといいでしょう。もし空いていたらすぐ翌日の予約をとっても(書類さえそろっていれば)大丈夫だと思います。僕の時期は、一週間先くらいからいくつか空きがある、という状態でした。予約を取った後で変更することもできます。

ここで最大の注意点があるのですが、この予約を取ったときの画面、これを必ず、プリントしないといけません。これは DS-160 のバーコード付きの確認画面とは別に、領事館の入り口で必要になるのですが、この画面、メールもされないのでブラウザを閉じてしまうと失われてしまいます。なんというひどいトラップ。その後の予約確認や変更にはこの画面で表示される予約コードが必要になりますし、同じ人が重複で予約すると領事館側でキャンセルする、というような記述もあります。もしそうなったら、電話で問い合わせるしかないようですが、これが有料だったりして、かなり泥沼にはまってしまいます。気をつけましょう。確認画面には面接地、予約コード、時間、などが書いてあります。

なお家族で面接する場合、年齢次第ですが子供の分の予約はいりません。親の面接のときに書類やパスポートを持って行って、一緒にやってもらいます。大人はそれぞれ必要なので、夫婦で一緒に行くときは同じ時間帯が取れるようにしたいですよね。

多くの人は東京か大阪で悩むと思いますが、どうも話によると東京は待ち時間も多くチェックも厳しく、大阪の方が全体的には楽ができるようです。僕は別件で大阪領事館に行ったことがあって、割と建物の状況などを知っていたので大阪にしました。それでも建物外などで並んだりする必要はあるのですが、警備員の人もやさしく対応してくれたと思います。このあたりの話はまた後でします。

申請費用はペイジーで振り込みます。地方だと郵便局が便利だと思います。ATMの控え(ちっちゃい紙)を大切に持って帰って、DS-160 の確認書の、右側のバーコードの印刷してあるところのすぐ下に貼ります。この場所もちょっと重要で、確認書の下側に紙の4分の1くらい余白があると思いますが、領事館の窓口でここに大きめなスタンプを押すため、その余白が見えているようにしないといけません。場合によっては窓口で貼り直すこともある(僕がそうだった)ので、軽めのノリ等で控えの上の部分だけを貼り付けるのが良いと思います。プリント写真も貼りますが、これは上下逆にして左上部分に貼ります。かなり意味不明です。詳しくは日本の領事館のホームページに説明文書があるのでそちらをご覧ください。クリアファイルに入れる順番も指定があります。まあ、この辺りをちょっと間違ったからビザが下りない、ということは無いと思いますけど・・・

レターパックのトラッキング用番号シールは取っておきます。窓口でも取っておくように指示されます。このレターパックって大きくてA4クリアファイルには入らないですよね。折っていいのか?とか悩む人もいるかもですが、折らずにそのままでもいいです。クリアファイルがあんまり厚くなると、窓口の下の書類口を通りにくくなりますし(笑)。とにかく初めてだとわからないことが多すぎて大変です。


準備が整ったら、面接の日を待ちます。

つづく
電話でオファーを受諾した数日後に Fedex で契約書が届きました。ポジションや年俸、雇用条件などが A4(レターサイズですけど)一枚に書いてあるものが二部届くので、両方に署名して片方を送り返します。これは今までの勤務先とほとんど同じスタイルだったのでおなじみ。同時に弁護士事務所のサイトにアカウントが作られ、申請用の情報を記入して資料をアップロードするようにリクエストされました。

まずこの弁護士に伝える情報が、結構大変です。自分や家族のパスポート番号や生年月日などはいいんですが、過去の職歴の会社の住所とか大学の住所とかでまず悩みます。そして過去10年の渡米履歴を全部書いてくれというところで悶絶。しかもそれぞれ観光か商用かをかかないといけません。平均して毎年3〜4回は出張で行っているので、全部で数十個の項目になってしまいました。日付はパスポートのスタンプを頼りに埋めていきます。アメリカ入国スタンプには WT/WB という文字に丸をつけてあるところがあると思いますが、これは日本人などを対象とした短期滞在のビザ免除(Waiver)で、Tourist か Business か、という略だと思います。アメリカは出国スタンプがないので、日本の入国スタンプを探しながら滞在日数を記録していく・・・という作業に数時間かかりました。

さらに各種証明書が必要なのですが、また大変なのが大学と大学院の卒業証明書と成績証明書。これを英文でもらわないといけません。もちろん大学に連絡すれば発行してもらえるのですが、ウェブサイトには英文証明書は2週間かかります、などと書いてあります。ここで2週間もかけているわけにはいかないので、速達で発行願を出して、着いた頃に教務に電話して急ぎだと伝えます。するとどちらの大学も即日発行して投函してくれました。返信封筒も速達にしておいたので、中3日くらいで入手することができました。

続いて婚姻証明と出生証明。これは戸籍謄本を取ってきて、自分で翻訳します。機械的に翻訳すれば良いのでそんなに大変な作業ではありません。web にも翻訳例がいくつかありますので、参考にしましょう。日本の戸籍って本当に便利なシステムですよね。

一通り書類がそろったらあとは弁護士にまかせます。H1B ビザは、まず労働局に許可を申請して LCA というのを発行してもらいます。僕の場合は 10/19 に申請受理されて、10/25 に許可がもらえました。弁護士さんはこれを会社に送ってサインをもらいますのでここでまた数日かかります。次に移民局に H1B 申請をします。この時点で僕が提供した資料の他に会社からのサポートレター(なぜこの外国人を雇う必要があるかという説明)、別の機関に依頼して発行してもらった学歴の証明書の鑑定書のようなものが追加され、11/1 に申請が受理されます。H1B 申請では、1000ドル払うことで 15 日以内に結果がわかるプレミアムプロセッシングという仕組みがあり、今回は会社持ちでこの手続きが利用可能でした。使わない場合数ヶ月かかることもあるようです。その結果、11/15 に晴れて移民局の許可が下り、I-797 という書類が発行されました。これで半分くらい終わりです。

I-797 や LCA 他、書類一式が弁護士事務所から Fedex で日本に送られてくるので、これをもってアメリカ領事館で面接を行うことができます。

さらにつづく
さて9月下旬に本社を訪問して本格的にインタビュー(面接)をすることになりました。渡航の手配は先方がやってくれると言っていましたが、マイルを達成しておきたかったのと(これでANAのSFCを入手)、LAの友人を訪ねたかったこともあって、今回は自腹で渡米。でもやっぱりSFOへは直行便がいいですね。LA乗り換えは時間がかかりすぎて大変です。

対面のインタビューは昼過ぎから半日かけて行いました。30分おきに11セッション、各組は2人づつ、同じくらいの職位の人、VPクラス、新人、QA やプロマネなどと様々な人と話をします。休憩なしに続けたので大変でしたが、全体的には楽しめました。自分の紹介、動機、今後のビジョン、仕事の進め方、トラブル時の考え方などの一般的な話題が3割くらい、プログラミングに関する知識の質問が3割くらい、残りの4割は専門知識などについての質問だったと思います。最初に話をした VP の方とも再会して、ここまで時間かかっちゃったねえ、なんて話していましたが、結果的にはこの後、働き始めるまでの方が時間がかかったりしてます(笑)。 

 プログラミングの話題はC++に関すること(デザインパターンやパフォーマンス、テンプレートの扱いなど)がほとんどでしたが、現場にいるプログラマなら簡単に答えられるようなことだったと思います。例えばこんな問題でした。

STL には vector などのコンテナがあるが、python などの言語のようにどんな型でも入れられるようにしたい。
v.push_back(false);
v.push_back(1.0F);
v.push_back("string");
C++ でこれを実現するにはどうしたらいいか。

もちろんここでは boost::any という答えではダメなので、その簡単な実装を示せばいいんですが、英語でちゃんと説明するのは意外と難しかったりします。僕はホワイトボードにクラスの実装などを書いて、インタビュワーにも助けられながらどうにかなりました。もうちょっとプログラミングの書籍を原著で読んでおけば適切な単語などもすんなり出てきたのかもしれません・・・

夕方全部のセッションが終わって、リクルーターの人と待遇などについて相談しました。僕は日本での給料が非常識に高すぎますし、円高もあってそのまま要求してしまうと先方があきらめてしまうと思ったので、基本はお任せします、という感じにしました。もっともこれは今回僕が給料がどうでも良かったからであって、普通はしっかりと希望を伝えるべきものでしょう。業界や人によって大分違うとは思いますが、日本から中途で転職するキャリアのあるソフトウェアエンジニアは最低でも12〜15万ドルくらいを提示されるんじゃないかなと思います。上はいくらでもあるでしょう。myvisajobs.comglassdoor.com の情報はとても参考になりますのでぜひ見て下さい。短期間有料会員になってもいいと思います。特に glassdoor、各社のレビューが普通に面白いですよ。

給料の他には、スケジュールの相談をされました。やはり先方は一日でも早く、ということなんですが、僕の場合ビザ手続きで1ヶ月以上かかるのは確実だったので、とりあえず2ヶ月後(12月)くらい、と伝えておきました。これで訪問インタビューは終わりです。さすがに終わったらくたびれてしまいました。

ところで永住権などを持たない日本人が、日本法人などのないアメリカ企業で働くためにはH1B(またはO1)ビザが必須になるわけですが、そのためにはまず採用を決めてもらわないといけません。多くの場合、ここでスケジュールが最大の問題になると思います。

H1B ビザは年度ごとに65000人(+20000)という枠が決まっていて、毎年10月1日からの就労許可申請を4月から受け付けています。一昨年までは、4月1日に受け付けを開始して数日で枠が埋まってしまうという状況が続いていました。つまり、10月1日から働くために3月くらいに採用してもらっていないといけないわけですが、半年以上先になる人材を採ってくれるアメリカ企業はほとんどないので、この経路は他のビザやOPT(アメリカの大学卒業後に与えられる就労期間)をはさんで切り替えるという人にほぼ限定されていたと思います。つまり、このような転職は実質不可能でした。

ところがリーマンショックを経て2010年からは H1B の申請が激減し(企業が外国人労働者の採用を控えたため)、昨年は1月まで、今年も11月末時点でまだ発給枠が残されています。従って、9月〜10月に採用を決めれば、すぐにビザを申請して働き始めることが可能になっているのです。これより早くても遅くても良くないです。今後H1Bビザを巡る状況がどう変化するかはわかりませんが、去年、今年、そしておそらく来年も、非常に貴重なチャンスがある、と言っていいと思います。なお後で詳しく書きますが、現在H1Bビザ手続きには最速でも1ヶ月ちょっとはかかります。

一週間後、担当リクルーターから電話があり、そこで給料やボーナスなどの条件、各種ベネフィット(福利厚生・保険等)などが提示されて、オファーを受けるかどうか聞かれましたので、その場で受諾しました。これで僕と会社の意思は決まったんですが、各種手続きはこれからが本番になります・・・
縁あって12月からベイエリアの CG 会社で働くことになりました。細かな事情は別として、日本人のエンジニアが中途で H1B ビザをとってアメリカ企業に転職するというのは結構大変だったと思うので、主に手続き面等について忘れないうちに書き留めておきたいと思います。後のみなさんの何かの参考になればさいわい。

きっかけといいますか、最初に先方の方と話をしたのは8月の上旬のことでした。相手は配属先になる部門のVP(バイスプレジデント、まあ日本だと部門の部長とか本部長みたいな感じで、採用も含めてその部門の活動のほとんどの権限がある)の方でした。共通の知り合いに紹介してもらって海外のカンファレンス会場で30分ほど1対1で話す機会があったのですが、その時点では転職の話ではなくて、今のCG制作の抱える問題などについて意見交換した、という感じです。僕もこの会話がとても楽しく、一緒にやっていこう、社内のいろんな人に紹介してもう少し話を詰めてみるから履歴書とかを送ってくれ、ということになりました。そして今回の海外転職活動がスタートしたわけです。

英文の履歴書を書いたのは初めてでしたが、最近は参考になるサイトが多いので助かります。職歴二つとその仕事内容、学歴、論文、CG 関連のその他活動などを A4 二枚にまとめました。装飾もなくてシンプルな感じに。あとは補足資料として、得意分野や過去の仕事内容などを詳しく説明したポートフォリオを15ページくらいつくりました。エンジニアだと通常はこうした資料は求められないのですが、絵付きで資料があるとインタビューなどでは話しやすくなりますので、英語に自信が無い方にはお勧めしたいです。

そして VP さん宛てのカバーレターを書きます。知り合いがいなければ採用担当者様、でも良いかと思いますが、このカバーレターは履歴書等と一緒にコピーされて面接担当者に渡されますから、内容はちゃんと書いた方が良いです。英文で三段落くらい、自己紹介と希望する業務、もうひとアピール、くらい書いておけば形になるでしょう。僕は念のため英会話教室の先生に添削してもらいました。論文と同様で、かっこつけた表現は不要でシンプルで意図がわかりやすい文章が良いと思います。

さらに過去に関わったタイトルの簡単なムービーも用意して USB メモリにいれて、プリントアウトと一緒に Fedex で送りました。ところが、この Fedex、先方には到着したもののなぜか行方がわからなくなってしまい、結局メールで送り直すことに。最終的にはオファーをもらった後に発見されたんですが・・・まあ日本でも人事に送った書類が紛失されることはよくありますから、返事がないときにはメールなどで再確認するのが良いですね。

その後メールで電話インタビューをセッティングする旨の連絡が来て、9月はじめに行うことになりました。日本とサンフランシスコでは結構な時差がありますが、朝7時に電話をかけてきてもらうことにしました。先方は昼過ぎになるので、この時間帯は割と良いです。

電話インタビューで準備するものは、先方に送った履歴書などの書類、メモ、程度でしょう。辞書など用意しても引いている暇はないと思います。また電話回線は固定電話の方が絶対に良いです。僕は仕事で電話で英語を話す経験は割とありましたが、慣れていないとかなり聞き取りづらいと思います。英会話の先生などと電話や Skype で練習しておくのも良いでしょう。僕の場合、最近はヘッドハンティングの会社から英語で電話がかかってくることが頻繁にあって、いい練習になりました。ヘッドハンターとのミーティングは無料だし専門用語を話す機会があるし、エンジニアの英語練習には最適なんじゃないかと思います。LinkedIn に登録しておくと、よく電話かかってくるような気がします(でもどうやって携帯の電話番号を知ったんだろう・・・)

一番のコツは、とにかくゆっくり話すことです。特に西海岸の人たちは、英語が下手な人との会話にとても慣れています。相手がゆっくり話すとすぐに会話の速度や表現の難易度を合わせてくれますから、これを活用しない手はありません。流暢に話すと自らハードルをあげてしまいます。秘書や営業などは別として、エンジニアのコミュニケーション能力は会話速度だけではありませんから、シンプルに正確に会話をすることに努めるのが一番だと思います。

そうそう、電話線に挟んでPC等で会話を録音できる機器もあるので、最初は録音しておくのもお勧めです。電話インタビューしてくる人は面接で再び会うことも多いですから、一度話した内容をしっかりチェックしておくと後で安心できます。

朝ちょうど約束の時間に電話がかかってきて、まずは15分ほど先方の仕事について説明をうけました。思ったより長かったです。その後簡単に自己紹介をして、割と具体的に仕事の内容を相談します。この時点でかなり自分の希望にマッチしている感じはありました。プログラミングの知識を問うような質問などはありませんでした。あっという間に終わったなという印象です。また人事からメールで連絡する、といって、30分程度で電話は終わりました。この電話インタビューしてきた人は、転職後直属の上司になる人でした。

つづく
もうすっかり 2.0 とか恥ずかしい感じですが、ここはあえて。

nesdisasm2.png
みなさんはエキスパートシステム、を覚えているでしょうか。まだ8ビット機にたくさん夢が詰まっていた時代の話ですが、そう、第五世代コンピュータ、なんて用語もありましたね...

と、先日友人がとある話題で翻訳メモリに言及していたときに一人いろいろと昔を振り返っていたりしたんですが、やっぱり逆アセンブルはみんなでやった方が楽しいと思うんですよね。たとえば最近はマリオのジャンプとベルレ積分の話題なんかも聞きましたけど、そりゃやっぱり実物を見ながらあーだこーだ言うのがより盛り上がるってものではないでしょうか。

とはいえWikiみたいなの作ってやるほどじゃないし、そもそも逆アセンブルであっても勝手に公開したら違法でしょう。そこで今回 FileAPI でローカル逆アセンブルやってみて思いついた訳です。読んだコメントを共有するだけならいいんじゃないかと。

というわけで、少し拡張してみました。あと、手元にROMイメージなくてもいじれるようにサンプルとして NES 版の Hello world をデフォルトで表示するようにしました。こちらはNES研究室のサンプルをcc65に通したものを使わせてもらっています。ありがとうございます。


遊び方はこんな感じ
  • 読みたいゲームのROMイメージを指定する。アップロードするわけではないので、心配いりません。なければデフォルトのサンプルのままでもいいや。
  • 逆アセンブルを読む
  • コメント欄をクリックすると入力できるので、思ったことを書く
  • 書き終わると共有されて、みんなに伝わる(ただし相手も同じイメージをちゃんと持ってないとダメ)

おお。これは楽しそうじゃないか。フェアな気がするし。

実はまだ途中で、異なるROM間でもコメントを共有してしまいます(使えねーよ)。
でも雰囲気は伝わると思うので。そのうちイメージのハッシュかなんかで分離する予定です。ちなみに今回 DB はめんどーなので php 組み込みの sqlite を使いました。あー今気づいたけどサニタイズ全然してないやー。あははは。後でやっとこ。

さてこれが後にどうなるかというと...そうそう、そうなんですよ。2.0。

あとはとりあえずワークエリアのシンボルとかもシェアできるようになるとすごく便利になる気がしてます。まずその辺かな。

ではまた。
全然WebGLと関係ないのですけれど、最近ちょっとした事情で夜な夜なとあるファミコンのゲームのコードを読んでました(スペランカーではないです)。NES 回りとかさすがにもう枯れきってるはずなんですが、エミュはどれも完成度高いし最近は JavaScript 版なんかも使えるんですけど、逆アセンブラってあんまりいいのがないんですよね。もっとあったけどなくなってしまったのかもしれません。しかもたまたま使ったやつが微妙にバグっててちょっと悲しい思いをしました。

ndss1.png
JavaScript 版の逆アセンブラもすでにいくつかあるんですが、どちらかというとエミュ指向だったりして、今の自分のようにただソースを読みたいという場合にはあんまり向いていません。というわけで、3時間くらいかかりましたが作ってみました。

NES Disassembler  JavaScript 版

HTML5...といっても FileAPI 使ってるだけですけど、ほんとこういうツールはもうブラウザでいいな、って感じがします。

ちなみにこの逆アセンブラはどの辺がいいのかというと、
  • 2パス(以上)なのでラベルを解決する
  • 割り込みベクタからPC到達範囲を調べるので、データセクションを分離できる
  • その上ジャンプテーブルを使った間接ジャンプ先も結構追いかけてコードセクションを識別する
  • NES の IO アクセスをコメントで出してくれる
といった辺りが素敵な感じになっています。そしてこれが今後どうなるかというと・・・どうなるんだろう。。。とりあえずバンク切り替えに対応しないとですね。
あくまでエミュにせずにちゃんと解析していろいろする、というあたりに強いこだわりが感じられます(意味不明)

それではまた。