ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

日本→シンガポール→ベルリンへと流れ着いたソフトウェアエンジニアのブログ

【読者質問 10】ソフトウェアエンジニアとして職を得るためのレベルと注意すべきこと

ご質問ありがとうございます。

いつもブログを楽しく拝見しています。ソフトウェアエンジニアとして職を得るために、どれくらいのレベルかを教えてもらえるでしょうか?例えば、このレベルのコードはプログラミングできるなどあれば、教えて欲しいです。

ほとんど同じようなご質問を以前にいただいて回答しましたのでこちらも参考にしていただければ、と。
【読者質問 04】「まともなコードが書けるエンジニア」はどんなレベル? - ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

ご質問に「ソフトウェアエンジニアとして職を得るために」とあるが、これは様々なレベルと会社があって、初級レベルの技術にはそれ用の職が、上級エンジニアにはそれ用の職がある。初級レベルのエンジニアなら職名はインターンやジュニア・デベロッパーとなり、上級レベルになるとCTOとかリードエンジニアになっていく。なので「職を得るために」という答えは「箸にも棒にもかからないレベルでなければOkです」となってしまう。

「例えば、このレベルのコードはプログラミングできるなど」って???んんんー。それは「coding interview <自分のプログラミング言語>」とかでググって調べてください。たくさん出てくるから。

しかしそのおっしゃっている「職」が海外の職の場合、注意が必要になる。

すごくよくデキる人はあまり気にしなくても、その持ち前の技術を面接なんかで披露してお好きな会社に行けばいい。本当の意味で注意が必要なのは初級レベルのエンジニアになる。

日本でも海外でもスタートアップといえども本当にクソなスタートアップがある。そういうのに捕まるとロクなことが無い。そんなクソに引っかからないようにするためにはできるだけ技術力を付けて、またそれを正当に評価してもらうことになる。

転職の技術面談なんかで次から次に難しい問題を出してきて、しかも長期間に渡って5次面談、7次面談とかやられるとさすがに疲弊してくる。「もうええかげん面談ばっかりしてねーでオファー出せよ」という気持ちになってくる。ただそこはいい事として受け取った方がいい。その後オファーが出たら「あそこまで技術的にチェックしまくって採用しているのなら、他の同僚達も同じ選考を経てきていることになる。会社としても技術に対する理解があって、エンジニア待遇は間違いなくいい」と考えられるからだ。

「自分にはあまり技術力が無いので面談で技術チェックはしないで欲しい。なるべく聞かないでくれー」と思ってたら本当にあまり技術チェックをせずにオファーが出た、となったら危険信号だと思うべし。そういう会社は技術の理解が無いし、技術を評価できてないし、あなたという人材を安く買い叩いてくる可能性が高いからだ。

仮にあなたの技術力が100点満点中50点であったとしたら、何度も何度もちゃんと技術面談をしてその50点をそのまま評価できる会社の方が実は良かったりするのだ。

これまで何度も英語圏での転職を繰り返してきたが、これでもかというぐらいにガンガン技術面談をしてくる会社はひとつの例外もなく全て「いい会社」だった。いい会社の定義は様々ではあるが、ここで言っているのは「エンジニアにとってのいい会社」だ。

海外で就労すると外国人であることからその国に暮らすためのビザが必要だし、立場の弱い外国人を守ってくれるのは自分の技術力でしかない。技術力があれば、雑に扱われることは無いし、もしその会社が気に入らなくてもカンタンに職を変えることだってできる。

海外に住んでいたものの日本への帰国を余儀なくされた方も多く居る。状況によってはクビも強制帰国もあるのが海外での就労だし、脳天気になんでも「海外に行けばー」とおすすめする訳にもいかない。ブログで海外転職をおすすめしながらも「たまたま私は海外に出て、いまだに生き残っているから文章に生存者バイアスがかかってないか?」と自問することがある。

基本的にエンジニアには海外転職をおすすめしているがそれは「英語と技術がある方」に向けている。レベルは様々でいい。ただ最初はエントリーレベルで入社したとしても、最終的には「英語と技術力」が確立されなければ、海外では苦労する。

そして「海外は大変です!」「海外ではなかなか生き残れない!」「やたら海外移住をすすめる人には気をつけてネ!」みたいな人に言いたい。
それって本当にそんなに大変か?と。
もし求められるものが100も200もあったら「えー?そんなに?」となるが本当に必要となるのはたった2つ「英語と技術」だけ。すごい天才でなくても普通に勉強した人が普通に手に入れているモノだ。ギャーギャー騒いで危険だぁー!と警告するよりも、英語と技術があればOk、無ければ勉強して習得すべし、とした方がよほど人のためになると思うのだが、どうだろうか。

以上がソフトウェアエンジニアとして職を得るためのレベルに対する回答でした。読み物としてまったく面白くない回答だが、真面目に答えるとこうなる。

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com
tango-ruby.hatenablog.com
tango-ruby.hatenablog.com

【読者質問 09】海外移住と家の問題なんて気にせず、ただ楽しめばいいのでは

ご質問ありがとうございます。さっそく質問から。

ジャバ・ザ・ハットリさん、はじめまして。
若い時から海外で暮らしをしてみたいとは思っておりましたがその夢は実現しないまま30代になったウェブエンジニアです。ハットリさんのブログは海外に暮らしている気分?になるので毎回楽しみに読ませていただいております。
家族(妻と子供)は海外移住については欧米なら賛成の様子で自分としてもチャンスさえあれば行ってみたいとおもってます。でも20代後半で購入した自宅とそのローンがありもし海外移住が実現できたとしても家とどうすればいいのかと迷ってしまいます。
ハットリさんならどうされますか?もちろん英語とエンジニアとしての技術力強化は必須なのですが、家が気になったので質問させていただきました。

 
ご自宅は売ればいいのじゃないでしょうか?

私個人としては家は不動産投資としか捉えていなくて、住宅価格が十分安ければ買うのがいいし、逆に高い場合は賃貸で住む方がいい、というセオリーに従っている。つまり「マイホームが夢!」みたいな発想は持ち合わせていない。「持ち家 vs 賃貸」の議論はもう聞き飽きたし、ここで書くまでもない。

そういうのは別として、思っていることがある。

世界のいろんなところに住めば、それはそれは「家」って色々ありますよ、と。

人が「家を買う」とか「タワマンに住む」「うちの家は賃貸なんです」と様々なセリフを言う時に出てくる「家」という言葉のイメージって自分で気付かないぐらいに狭い範囲内から考えている。私にしても日本に居る時はそうだった。「家ってこんな感じじゃねーの」というのがあったが、それはかなり限定された範囲内のイメージだった。

住む国も仕事も家も飽きやすい私は転職回数と同じぐらい引っ越し回数も多い。もう「引っ越し貧乏」とでもなんとでも呼んでくれて結構なのだが、とにかく海外での不動産探しが意外にオモロいのだ。

日本で社畜サラリーマンをしていたころは「プール付きの家」なんてなにかで1発当てることでも無い限り絶対に自分と家族が住むことなんて想像すらできなかった。ところがシンガポールに移住して、家探しをすると豪華なプール付きの家というのがわりと普通だった。

普通のどこにでも居そうなITエンジニアがこんな家に住んでいるのだ。
f:id:tango_ruby:20170619014917j:plain

シンガポールのような常夏の国にとってプールは夏の間だけ遊ぶものではなく、あれば年がら年中ずっと使えるものだ。そうすると当然ながらコスパがいい。日本のように一部の金持ちだけが自宅にプールを持って楽しむものではなく、かなり普通にある。

日本の都心の豪華なタワマンに住んでる人のコメントで「うちにはプールはあるけどあまり使わない」みたいなコメントを読んだことがある。それは当然だ。日本の四季がある気候において自宅にプールがあってもあまり楽しめる気がしない。プールなんてものはシンガポール、カリフォルニア、南ヨーロッパとかその土地の気候に合わせないと意味がない。


ヨーロッパに住まいを移すと築100年以上の物件がざらにある。日本人目線から見るとそういう物件がやたら魅力的に映る。今の住まいも建てられたのが1870年でラッキーに第二次世界大戦であまり爆撃を受けることなく残った建物。天井が高いのでシャンデリアがやけに似合う。どう考えても以前の私だったら「は?天井からキラキラなシャンデリア?無駄。邪魔。要らんわ、ボケ」と考えたはずだ。しかしヨーロッパ風の家にしかるべきシャンデリアがぶら下がってるのを見ると「あーこういうことね」と納得してしまった。

引っ越しを繰り返すのもそういう色んな家に移り住むのが楽しいからだ。

東京都心の素晴らしいタワマンにお住まいの方が居たとしたら、素直に羨ましなーとなるし、田舎暮らしでのどかな風景の中に素敵な家を持っている人にもいいなーと思う。ただ私は「そこに何年も住むんです」となるのがイヤなだけだ。ヨーロッパの素敵な石畳の風景も東南アジアの温暖な気候もいつかは飽きる。

暑い夏の日のビールのひと口目は「ぷはー!」とすごく美味しくても、その感動はだんだん薄れていって、やがて惰性で飲んでるだけになるのと同じ。経済学の「限界効用の逓減」で、人の感情は全てのことに慣れるようになっている。

したがって人生をとことん楽しむためには常に「暑い夏の日のビールのひと口目」を狙い続けることになる。つまりは移動して新しいモノに出会い続けることだ。海外移住して引っ越しを繰り返して「家」というものが色々あることが分かった今はどんなに素敵な家であっても、そこに定住してしまうとケチ根性を発揮してしまって「もったいない!このままでは人生を損する」と思ってしまう。

そしてこの発想のすごいところはどんなに色んな国々に移り住んだとしても追加の旅行費用がかからないことだ。その場所で働いて得たカネの一部を家賃にまわして住む、となったらそれを東京でやっても、ロンドンでもパリでもヨハネスブルグでもリオ・デ・ジャネイロでも一緒で、旅行費用として計上することは無いし、もちろん大金持ちである必要なんかない。ちょっとしたITスキルと英語さえあればどこでも可能だ。

ということで今回はかなり無責任な回答にはなるが、ご自宅は売ればいいのじゃないでしょうか?、でした。

高城剛やホリエモンには到底かなわないがこうしていろいろ動くことを最近では「多動」と言うらしい。

多動力 (NewsPicks Book)

多動力 (NewsPicks Book)

質問箱はいったん閉じました。また気が向いたら設置して質問受け付けます。しばらくはこれまでいただいた質問への回答をがんばります。

tango-ruby.hatenablog.com
tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

【読者質問 08】エンジニアとして海外移住するための進路とは?

長文のご質問ありがとうございます。本ブログの方針としてどんなに長文でもご質問は全文掲載。ではさっそく質問から。

ジャバ・ザ・ハットリさん、こんにちは!

ぼくは国公立大学理系の大学院1年生です。電子系なのでプログラミングに関しては全くの初心者です。流され流され人生ここまで来てしまいまして、焦っています。もとから英語が好きで、海外移住したい気持ちがあります。そこで少し前から興味を持ったのが、プログラミングの分野でした。

前置きが長くなりましたが、質問です。
http://tango-ruby.hatenablog.com/entry/2017/02/16/011204
この記事の

「IT人材が不足しているのは日本だって同じ。それでもほとんどの日本のIT部門で働く人は日本人で構成されている。外国人を入れずにチームが満たされているのは、専門知識の無いITサラリーマンが多いため。」

の部分に関しまして、ポテンシャル採用に乗せられてしまうと、コードを書く本当の力が身につかずに海外移住が難しいという解釈をしました。①この解釈であっていますでしょうか?②また未経験からしっかりと力をつけてエンジニアとして海外移住ができるようになるには、どのような進路が良さそうでしょうか。
今年度後期から大学院を休学して、1年ほど英語とプログラミングをしっかり力をつける時間を確保した方がいいのかどうか悩んでいます。

長文になりました。解答いただけると幸いです。

まず①の「ポテンシャル採用に乗せられてしまうと、コードを書く本当の力が身につかずに海外移住が難しいという解釈」について。
ポテンシャル採用自体は日本独特のある意味で人に優しい制度だと思う。問題はまったくコードを書かずに仕様書だけ書く職種があるということ。そういう職に配属されたら、あまりにも英語圏の状況と異なり過ぎてITエンジニアとしての海外転職は難しくなる。コードを書かないで仕様書だけ書けばOkというポジションが海外には無く、そこでの経験を活かす場が用意されていない、というのが大きな理由。

次の②の進路について。前提として質問者さんがITエンジニアとして海外移住をすることが目標とすると、そのための最短コースはこうなる。

  1. 日本のIT企業にエンジニアとして就職
  2. ひたすらコード書いて実績を作る
  3. 実績ができたら会社勤めを続けながら海外転職活動を開始
  4. お断りをもらうたびに改善を続けることで精度を高める
  5. 海外のいい会社からオファーもらったら海外移住

最短コースは示すとこうなる訳で、これ以上に「**をするべき」なんて言っても、そこは個人のスキルや考え方に合わなければ意味がない。どんなに体にいいからと言っても嫌いな食べ物を「食え食え」言われてもウザいだけで、そういうアドバイスは意味がない。なので以下に海外転職を目指すにあたってやってはいけない3つのことを書く。やった方がいいことは人それぞれだが、やってはいけないことはだいたい共通しているので以下の点を注意すればいい。

やってはいけないこと1)
新卒でいきなり海外に出ること

質問者さんが大学院を卒業された後、いきなり海外の会社に履歴書を送って海外転職活動をしようとお考えだったなら、それはちょっと難しいと考えた方がいい。英語圏において就労経験の無い学生が職を得るのは至難の業で、最初はインターンとしてどこかの会社に入り込んでそこでの実績を買われた奴だけがポジションを勝ち取るシステムになっている。母国語ができてそれなりの学校を卒業している学生でもインターン獲得に苦労しているので、日本の学生の場合は日本での就職の方がよほど有利となる。これは1年間休学をされて英語とプログラミングを多少身につけたとしても同じ。よほど才能があれば別だが、そもそも元から才能をお持ちの人は就職なんてすっ飛ばして起業して世界を変えた方がいい。

賛否両論あれど日本の新卒入社というのは日本の学生だけの特権なのでここは有効に使って日本のIT企業で実績を積むことで海外転職へのゴールには近づくことができる。


やってはいけないこと2)
英語の専門家になること

英語が好きで好きでそのまま英語の先生とか専門家になってしまうのは注意した方がいい。なぜならそういう英語「を」仕事にしてしまうと、その種の職の需要が英語圏では無いからだ。カンタンな話、英語圏に日本人の英語の先生は要らない。本当に英語のセンセになりたいんなら、なったらいいんだけどゴールを海外移住に設定するなら、海外を拠点にして英語「で」仕事することを目指すべき。
違いは単に「英語を仕事」か「英語で仕事」か。英語圏においては英語ができることの価値って普通すぎて当たり前だからだ。海外移住を目指すのなら英語は必須。でも英語の専門家はおすすめしない。


やってはいけないこと3)
コミュニケーション能力がカギになる職につくこと

職種がセールス、企画、広報、といった人とのコミュニケーションが重視される職の場合は海外転職という観点から見ると難しくなる。特にセールスの場合、日本一のセールスマンになったとしても、それは日本語で日本人相手にモノを売って培った実績となる。それがスグに英語圏の文化習慣の中で英語でセールスして売れるノウハウにはならない。言葉で売る場合は「ちょっと英会話できます」なんてレベルで許される訳がなく、会話は完璧で当たり前で求められるのはそれ以上だ。これは企画や広報など人とのコミュニケーションが重視される職に共通している。
コードを書くエンジニアを日本でしていて、出世のチャンスが到来すると「そろそろ部下プログラマー15人をマネージメントするポジションに出世してみてはどうかね?」となることがよくある。出世して給料が増えるのはとてもいいことだし、断る理由なんてない。ただ海外転職という点においてはそういう「人のマネージメントスキル」を英語圏に変換するのはとても苦労すると考えた方がいい。マネージメントのキャリアを日本で10年積んでも、それは日本語で日本人を管理して培ったスキルでしかない。そのメンバーを全員国籍の異なる多国籍メンバーにして英語で全てコミュニケーション取らなければならなくなった場合「オレ様の10年に渡る経験」などカンタンに吹っ飛ぶ。もちろん英語圏でもマネージメント的な職に付いている日本人がたくさんいるが、それは日本での実績をいったんゼロに戻して謙虚な気持ちで英語圏の方法を学び直して得ただけ。
これらとは逆にエンジニアの技術スキルは世界共通。プログラミング言語を操ること、サーバーを管理すること、パフォーマンス・チューニングすること。全ての「日本での実績=英語圏の実績」と考えて問題無い。



以上が「エンジニアとして海外移住できるための進路とは?」の回答でした。

みなさんからたくさんご質問いただいてとても嬉しく思ってます。回答のペースを上げて、どんどん書き込むよりもひとつひとつ丁寧に答えていこうと思ってます。質問いただいてから回答まで少し時間かかりますが、そこは気長に待っていただければ、と。

tango-ruby.hatenablog.com
tango-ruby.hatenablog.com
tango-ruby.hatenablog.com
tango-ruby.hatenablog.com