Download - シリコンバレー 面接体験
2011年末頃まで• 2002年からセキュリティソフトウェア会社(F-Secure)の日本オフィスで、技術屋(開発・サポート・技術営業・社内IT) 日本で、ソフトウェアを開発して販売していた。
• 2009年。フィンランド(ヘルシンキ)の本社から呼ばれて引っ越し。ヘルシンキオフィスでLinux/Mac 向けの開発を行う。
転職?• 2011年ごろ。そろそろ飽きてきたので、何をしようか考える。
• 10年程度同じ会社におり、だいたいのことを経験できた。
• Webサービス・クラウド・モバイルといった新しい技術に関わりたい
• ヘルシンキ(人口50万人)には、あまり会社がない。
• 開発のメッカといえばシリコンバレー。会社も豊富。
• 会社の同僚がGoogleを受けていた。
• 行ってみたい!
背景: アメリカの就労ビザ• アメリカ(というか国籍のない国)で働くには、就労ビザが必要。
• アメリカは世界中から人が来る買い手市場=> ビザを取るのは難しい。
• エンジニアが転職する場合、基本 H1-Bビザ
• 年間発給数が決まっている、しかも4月から発給して、入国できるのは10月以降。# 最近は人気のため、4月1日付近で締め切って抽選。
• 入社まで半年以上あってもビザサポートする会社
• やはり大きい会社はそのあたり大丈夫=> Google, Facebook, Twitter, …
応募の仕方(リクルータにコンタクト)
• ウェブサイトから直接応募(オンラインコーディングがあるサイトも)
• コーディングサイト経由 (InterviewStreet, paiza)
• 知人の紹介
• LinkedInでリクルータを探す
面接に至るまで(Facebook)
• InterviewStreet(現HackerRank, paiza.JPに少し似たコーディング転職サービス)でコードを書いていた。(当時は3問解くと応募できた。paizaのSより少し難しい問題だけど時間制限はなし。)
• Facebookが載っていたので応募ボタンを押してみた。 反応ない。。。
• しばらく問題を解いたりしていると、InterviewStreetのCEOから調子どう?というようなメールが来たので行ってみたら、Facebookのリクルータを紹介してくれた。
Skype面接の手順• 最初はリクルータの方と話して、履歴書を送る。
• 面接はSkypeとコーディング面接。 http://collabedit.com/ など共同編集エディタを使うヘッドセットと静かな部屋を用意しましょう。
• Skype面接は3回程度
• 面接の後は、リクルータから結果が連絡
面接の内容• 概念について
• オブジェクト志向とは?
• データ構造について
• ツリー構造、リスト、スタック、キュー、二分木
• コーディング問題
• リンクリスト、ソート、二分探索、ビット操作、再帰
面接の内容• Skype問題は難しくはない音声通話だけで、図を使ったりする複雑なことはできないので、10-20分以内で解ける問題が多い。質問も一般的な技術的なことが多い(paizaのA問題程度ができれば)
• 簡単だけれども、アピールはできる。早く解く、確実に解く、質問に確実に答える、など。
• 3回の面接のうち、1人には気に入ってもらえるといいかも。
Skype面接の流れ• 面接官が簡単な自己紹介
• (自分が自己紹介)
• コーディングに関する質問~するプログラムを書いてください このプログラムの間違いを直してください
• 問題を解く適時、方針を説明しながら解く。
• バグがないか確認
• 終わったら「終わった」と宣言する。
• コードの流れについて適時説明する。
Skype面接の流れ• 面接官がコードを確認
• バグはないですか?と聞かれることがある。(ある場合が多いですが。)バグがあれば直す
• 簡単な問題の場合、もう一問出ることがある。
• 計算量について聞かれる
• 改善方法がないか聞かれる(ことがある)~の場合は、~で最適化できる、など。
Skype面接の流れ• なるべく考えていることは口に出して伝える
• 面接の最後には面接官(エンジニア)に質問できる。
• 現場のエンジニアに質問できる貴重な機会。
• 開発方法、雰囲気、利用技術に関することなど何でも
• (社外秘プロジェクトの具体的な内容は話せないことが多い)
Skype面談終了後• 面談終了後はリクルータからフィードバックが来る。「英語は微妙だけど、それは来てからでもなんとかなる!」というフィードバックも
• Skype面談はだいたい3回。一回1時間程度。 1-2週間に一度受けるペース。
• 3回終了すると、オンサイト面談。最後の面接からオンサイト面接は2-4週間程度
オンサイト面談の準備• リクルータから出たヒントについては調べる。
• glassdoor, careercupで問題の傾向を掴む。
• 質問する内容は考えておく。
• 当たって砕ける:-)付け焼き刃では限りがある。
オンサイト面談• 半日~1日で3-5人と面談、一人30分から一時間程度
• 昼ごはんはエンジニアと(Google, Twitter) => 会社の雰囲気を応募者に伝えるため => 会社も応募者を選ぶが、応募者も会社を選ぶ
• 服装カジュアル。「ジーパンとTシャツがベスト」と言われた。誰もスーツ着てないです。
オンサイト面談の内容• 問題を解いた後、さらに改善する方法を聞かれることがある。
• 図で書いて説明することも。
• コードまで落とすのではなく、大筋の方針について説明することもある。
• コーディングではなく、設計方針等についての(MVC、データベース等)についての質問もある
• コーディングについても、改善方法について(アイデアレベルで)答えるケースがある。(キャッシュする、など?)
• 実際の仕事に関連した質問が出ることがある。(言語、アルゴリズム、etc…)
• 面接と面接の間はトイレへ。
面談後• リクルータから結果が返る
• 遅いときはダメなことが多い?
• 受かっていたらオファーを確認して返事。(他に第一志望があれば待ってもらう?)
• 落ちても、ある程度(1年~)したら再度受験できるので、今後の再受験について聞いておく。
• 再度受験するときは、そのリクルータにコンタクト。リクルータが会社辞めていても紹介してもらえる。
• 次回の受験に備える。(付け焼き刃でダメだったところで改善したいところなど)
その他• エンジニアとの面接は技術に関することがほぼ全て。 それ以外は簡単な自己紹介、今何をしているか、なぜ転職したいか、をリクルータ・人事や面接の最初の方で聞かれる程度。 過去の経歴について細かく聞かれることはなかった。
• 転職はタイミングが大事
• チャンスが来たら動けるように準備をしておく。 # 付け焼き刃ではなく、刀を研いでおく
• 難しいこともあるが、確実に問題が解ければ、チャンスはかなり平等にある。
• 年齢・国籍・性別不問。
• 面接中は、考えていることを話す。ヒントをくれることも。
• 英語は必要。だが、技術でカバーできる。
その他• 面談は楽しい!
• 現場の優秀なエンジニアと技術について話せる
• 現場のエンジニアからのフィードバックがもらえる
• 現場のエンジニアに質問できる
• 旅費も出ることがある
• シリコンバレー企業の日本開発オフィスの面接もほぼ同じ