読者です 読者をやめる 読者になる 読者になる

paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

一人プロジェクトのプログラマが、ある日突然ヘルシンキで働く事になった訳

f:id:paiza:20140712194918j:plain
Photo by Andrés Nieto Porras

f:id:paiza:20140712194904j:plainはじめまして。今回はpaizaのジャッジシステム開発等をしている吉岡がお送りします。

「海外で働く」という事について話されることが増えてきましたが、まだ身近に考えられる人はそれほど多くはないと思います。

私自身、特に海外で働こうと強く意識していたわけではありませんが、縁があってフィンランドヘルシンキで5年ほどソフトウェアエンジニア(プログラマ)として働いていました。今年(2014年)4月から日本に戻ってきて、現在はギノ(paiza運営元)で働いていますが、実際に海外で働いた中で感じた事など書いてみたいと思います。

■海外に行く前にしていた事

最初、新卒で入ったのは大阪のXAXONという、主にWindows向けの開発とISPを運営している50人ぐらいの会社でした。開発側はアルバイト等を含めて20人ぐらいだったと思います。
入社した理由は、パッケージソフトウェアを独立開発できる環境だったことです。また1999年の当時ダイアルアップ接続が主流の中でISPでしたのでインターネット環境が整っている事もありました。

XAXONでは、NetRecorderというWindows向けの、指定したサイトを丸ごとダウンロードしておきローカルで閲覧できる製品の開発、主にバージョンアップに伴う機能追加などをしていました。MFCによる開発で学んだMVCフレームワークの考え方は、今使っているRuby on Railsまで長く生きてきています。

その後、新規事業をはじめるためなどで開発部(4人)を含めて東京に移転することになり東京に移りました。東京では最初、東大の教授やLSIを作る会社と共同でネットワーク処理を高速化してチップを作るプロジェクトを行いました。

当時ウィルスが広まっていた事もあり、ウィルス検査をチップをを使って高速化しようというプロジェクトでした。

結局チップを使っての高速化はやめることになりましたが、アンチウィルスソフトの開発はその後も細々とつづけていました。ウィルス検査エンジンを提供している会社と、アプライアンスを作る会社との3社の中で、ソフトウェア部分の開発は自分一人でしていました。

その後、通信キャリアプロジェクトの2次請けとして派遣のような形でシステムを作ったりしていましたが、アンチウイルスソフトを細々と開発を続けていました。

■赤坂の蕎麦屋での転機

f:id:paiza:20140712200751j:plain
Photo by Christoph Rupprecht

その後しばらくして、赤坂の蕎麦屋で昼ご飯を食べていたら、偶然ウィルス検査エンジンを提供している会社の社長と、アプライアンス開発する会社の副社長に出くわしました。

アンチウィルスソフトを開発する中で両者とメールでのやり取りはありましたが、その社長さんや副社長さんと面識はありませんでした。しかし、聞こえてくる話から開発しているアンチウィルスソフトウェアに関する内容のようだったので、声をかけて話をしました。これが後にそのウィルス検査エンジンを提供している会社に移る大きなきっかけだったと思います。

その後、在籍していた会社ではアンチウィルスソフトの開発は止めることになりましたが、ウィルス検査エンジンを提供している会社では開発を続けたいとのことで、事業と一緒に開発していた自分もその会社に転職することになりました。

その会社が、フィンランドに本社があるセキュリティ製品を作っているF-Secure日本法人、当時社員が6人ぐらいでした。

■海外で働らくことになった経緯

移ってから数ヶ月ぐらいで、日本国内向けにLinux向けのアンチウィルスプロキシ製品の販売にこぎ着けました。
最初は本当に、「一個売れた!やった!!」というところから始まり、社長の知り合いの会社で使ってもらったりしながら、他の製品のサポートも行っていました。Linuxが普及しはじめたり、メールで感染するウィルスが続々出てきた時期ということもあり、順調に販売数が伸びていきました。

しばらくして、その製品が日本法人の売り上げの半分に迫っていきフィンランドの開発チームと共同でワールドワイドで製品をリリースしたりしました。

そうなると、「なぜ日本で一人で開発をしているんだ?開発するならフィンランドLinux製品開発チームと一緒に開発するべきじゃないか。」という話になり、フィンランド本社のLinux開発部署へ転籍することになりました。

こうして、妻・一歳の子と共にフィンランドに引っ越し、働く事になったのでした。(ここにたどり着くまで長くてすみません。)

■行く前に準備した事

 
もともと外資日本法人ということもあり、社内資料は英語ですし、英文メールで頻繁にやり取りもしていました。1〜2年に一度は本社のフィンランドに出張に行く機会もありました。フィンランドに行くことになる半年前にも一ヶ月ほどフィンランドに出張もしており、段階的に英語の環境に慣れていく事ができていました。

ただ日本法人に入った当時は英語で会話する事はまずない状態でした。ただ、メールの場合は喋りとは違い時間をかけて読み書きすることができます。最初は文章の書き方の本を見たり、辞書を引きながら読み書きすることもありました。はじめてフィンランドの本社に電話したときは結構緊張しました。アカウントを作ってください、というだけだったのですが。。。

でも、エンジニア同士で話す場合、技術用語は世界共通ですので話は通じます。あとは、一対一だと「え?」と聞き直すこともできます。フィンランド人もネイティブではないのでお互い非ネイティブですし、アメリカなどより発音が日本に近いというのもあります。

フィンランドの生活することについては、何回かの出張もあり、妻と一緒に行った事もあったので、見ず知らずの場所ではなく雰囲気がわかっており、子供もまだ小さかったので割と気軽に行く事ができました。

また、海外で働く場合ビザの問題は避けられません。ただ、アメリカなどに比べるとフィンランドを含むEUは簡単だと思います。EU内で共通の基準を採用しており通年で取得できますし、2年以上の予定なら社会保障も受けれますのでエンジニアであれば仕事があれば問題ないと思います。
 
 

フィンランドに行ってみてどうだったか

f:id:paiza:20140712195257j:plain
右の建物が通っていた会社オフィス

◆英語

ヘルシンキで話されている言葉はフィンランド語です。(フィンランドの正式な公用語フィンランド語とスウェーデン語の2カ国語)。
会社の公用語は英語で、町中でも多くのフィンランド人が英語を流暢に話します。
会社などでフィンランド人同士集まっている場合はは当然フィンランド語で話をしているのですが、私がその中に入ると、瞬時にぱっと英語に切り替えてくれるのです。最初はそれなのに言ってる事がわからない事があり、非常に申し訳ないと思いました。
わからない場合に一対一での会話なら聞き直せるのですが、何人かで話している場合はなかなか聞けません。だいたい分かっていても数%が分からないと全体がわからなくなったりしてしまいます。その辺りはやはり苦労しました。

◆食事

食事については日本の食事のほうがおいしいです。フィンランドのサーモンはおいしくて好きですが、魚の種類は限られておりオランダの業者から共同でアジ・サバなどを輸入したりしていました。中華食材店で米などは購入していましたが、豆腐やもやしなどは限られています。

◆習慣

フィンランドでは店の営業時間が法律で厳密に決められています。当初、日曜日にスーパーがしまっており、夜も21時で閉店です。(今は日曜日も18時までは空いています)。もちろんコンビニはありません。公共の病院や宅急便など、その他も多くのサービスが平日の昼間に提供されています。最初は不便に感じましたが店員のワークライフバランスも考えての事と思います。

仕事と生活のバランスを取るという意識が全体に行き渡っていて、日本並みのサービスはないけれど休みは楽しもうという感じでした。


f:id:paiza:20140712195325j:plain
冬はカントリースキーをしました

◆働き方

夕方になると「保育園に迎えに行く」ということで4時頃に帰る人も多くいました。(保育園は希望する人全員が入れます。) 保育園は17時にはしまり延長保育もないので17時までに行く必要があります。私も向かいにいく事もよくありました。

ワークライフバランスを国全体として重視していると感じました。仕事が終わったらプライベートという感じで区切りをつけてやっています。日本だと下手をしたら終電近くまで働いていますが、19時にはオフィスはまばらで、そこは大きな違いでした。
基本的にフィンランドではサービスが平日しか動いていないということもあり、特に多くのIT企業で在宅勤務や裁量労働/フレックスを取り入ており、かなりフレキシブルでした。

本当に必要な時には仕事はしますが区切りをつけて働いていて、夏は1ヶ月間みんな休んでいます。(有給は年5週間で祝日を考えると実は日本とあまり変わらないですが、有給を使わないと上司からおこられます。)
  

◆エンジニアの立ち位置

フィンランドではITに力を入れており、当時は(今はマイクロソフトが買収した)ノキアで有名でした。(今も元ノキアのエンジニアがスタートアップを次々たちあげています。)
会社のエンジニアも、コンピュータサイエンスを大学で勉強した人や同等の勉強をしている人がほとんどでした。特に同じチームはギークが集まっていました。

待遇は、最初の年は駐在扱いでしたが2年目からは現地採用扱いになりました。
年功序列というのはなく、エンジニアのレベルによって給与はほぼ決まります。フィンランドは格差が比較的少ないこともあり、同じレベルのエンジニアの給与幅は、中規模以上の会社ではほぼ同じになるようでした。
当初から給与はユーロ建てですが、円建てで考えると為替によって3割ぐらいかわってきますので、額面は絶対的な物ではないと感じました。

エンジニアの転職市場でも当初はノキアの存在が大きく、ノキア関連企業を経験した人が多くいました。転職の心理的な障壁は低くて、同僚が転職する場合、「残念だけどいい所が見つかってよかったね」というのが自然です。他の会社に行って戻ってくる事もよくありますし、大学に行って勉強してくることや、また軍の平和維持活動で志願してアフガニスタンに行って戻ってきた同僚もいます。(ちなみにフィンランドには徴兵制もあります。)

◆開発手法

フィンランドに行った当時(約5年前)、スクラムアジャイルがちょうどホットなトピックでした。特に私がいたチームは新しい事を取り入ており、既にスクラムを本格的に取り入れ、GitやHudson(今のJenkins-CI)を使った自動テストなども行っていました。できるだけいい環境で仕事をしようという考え方でした。

小国ですし英語への抵抗は全くないので、世界で一番いいものを使おうという意識が自然でした。
また、無駄なことは無駄とはっきり言いますし、「効率よく仕事しよう」という意識、姿勢を感じて学びました。

いろんなサービスに興味があるアーリーアダプターも多くて影響を受けました。ある日会社に行くと、PCでみんなが農場を育てており、なんだろう、と思ったらFacebookのFarmVilleで、そこでFacebookを知って使い始めたという事もありました。ほぼ全てのウェブサービスを使っているような人もいましたし、KickStarterも使われていました。新しいサービスに触れることや、その楽しさを知る事ができたと思います。

f:id:paiza:20140712195359j:plain
運がよいとオーロラが見えます

◆コミュニケーション

チームは多国籍で、一時は日本人(私)、フィンランド人、スウェーデン人、インド人、ロシア人が一緒に集まることもありました。多国籍の方が(フィンランド語ではなく)自然と英語になるのはよかったです。
当初のマネージャも優秀な女性の方で「わんぱく少年」エンジニアたちをうまく束ねていましたスクラムマスター兼マネージャとしてファシリテーしてくれておりメンバーも親切で話がしやすかったです。

チーム専用のIRC/SkypeグループがありSkypeは電話会議にも使っていました。在宅勤務も可能でしたので、「宅急便が届くので」「妻の調子が悪いので」「集中できるので、、、」などの理由で家で作業を行う人も多く、Skypeなどで毎日のデイリースクラムを行う事も多かったです。

■どのような経緯で帰ってくることにしたか

f:id:paiza:20140712195428j:plain
夏は森へ

LinuxMac向けのアンチウィルス製品の開発をしていましたが、フィンランドに行って数年してから、アンチウィルス製品の開発も長くなってきたので他の事もしてみたいと思いました。

ちょうど、FacebookTwitterなどをはじめとしたウェブサービスクラウドが広まっており、新しい流れができているのに対して、大きい会社ではなかなか新しいサービスをはじめるのが難しいということがありました。個人でiPhoneアプリを作ってみたり、Ruby on Railsを使ってみたりもしました。

そんな中でシリコンバレーの会社に興味をもちはじめました。InterviewStreetというシリコンバレーのエンジニア転職支援サービスを通じて紹介してもらったFacebookの面接を受ける機会が得られました。また、Googleは以前知っていたリクルータを通じて、Twitterは当時募集していた日本向けエンジニアに応募する形でコンタクトを取りました。
結局、FacebookGoogleTwitterでオンサイト面接をシリコンバレーで受ける機会を得ました。どの会社も3回ぐらい電話やSkypeを通じたコーディング面接があり、その後シリコンバレーのオフィスで対面での面接を行う形でした。
いずれも3〜5人程度と、主にプログラムや技術上の問題をその場で解くという面接でした。

結果的には全部落ちたのですが、現場の優秀なエンジニアと直接技術的な話をし、また面接の最後では質問する機会があるというのは、非常にエキサイティングで楽しかったです。受からなかったとしてもエンジニアだと面白いと思いますし、全体的に受けるまでの門戸は思ったより広いと感じました。

そのようにコーディング面接を受ける中で、アルゴリズムTopCoderなどの競技プログラミングに興味を持つようになりました。今まで知らなかったアルゴリズムや発想がわかるようになる楽しさを覚えていきました。

日本の外資系企業の開発やスタートアップにもコンタクトして内定が出た事もあるのですが、タイミングなどもあり転職にはいたっていませんでした。そのようにな中で仕事のやり方自体や働き方自体に興味を持つようになっていました。そんな時、タイミングよく「コーディングで転職できる」とうたっていたpaizaに出会い、実際に問題を解くとギノ(paiza運営元自身)と話をする機会に恵まれました。

最初はSkype面談を行いました。実際の仕事をした方がお互いわかりやすいと思いましたので、軽く業務請負という形で仕事をしながらギノの方と話をするとフィット間があり、今までのLinuxの開発経験を生かしつつウェブサービスなど新しい事にも挑戦できそうなポジションだったので日本に戻ってジョインする事にしました。ずっとSkypeのみのやり取りだったので、ギノのメンバーと実際に合ったのは、日本に帰国してギノのオフィスに行ったときが初めてでした。

■帰ってきてみてどう感じたか

 

◆良くも悪くも日本のサービスレベルは高い

日本のサービスレベルは非常に高いですが、フィンランドに行った後だと、誰かが犠牲になりつつレベルを上げているところもあるのかな、サービス提供者はどうなっているのかなと考えるようになりました。
  

◆開発のギャップは無かった

事前にSkypeで開発業務請負ってやっていたので、戸惑いは特にありませんでした。みんな技術が好きな人達と一緒にできるので楽しい環境です。開発をしている人たちが「paizaというサービスが好き」というのも良い環境だなと思っています。

ギノはバリューを出していれば働き方はわりと自由という感じの社風なので、その点もフィンランドと比べてもギャップは有りませんでした。

◆技術者として技術をちゃんと追っかけてやっていきたい

日本にいると、年齢があがるとプログラマからマネジメントへ移る、という考えもありますが、フィンランドでそのようなことを感じる事は全くといっていいほどありませんでした。年齢に関わらず技術を楽しんでいて、「エンジニアとして技術を追いかけていく」という姿勢が普通のこととして感じられたし、自分もそうしたいと思いました。

■まとめ:海外で働いてみたい人へ

f:id:paiza:20140712195453j:plain
ヘルシンキの家の窓からの景色

海外で働く事で、また働くことを考えるだけでも、自然と英語の壁は低くなり、世界を意識する中で目指すレベルも上がると思います。
実際に海外で働けるかどうかは相手があるので運やタイミングもあると思いますが、最初の話をするまでの敷居はそれほど高くない場合も多いと感じますので 興味があれば是非トライしてみたらいいと思いますし、得られる物も多いと思います。もしpaizaでランクSやAを取れるようでしたら、電話面接程度は難しくないかと思います。paizaのような問題を解く事で応募できる会社もあります。

長くなってしまいましたが、海外で働いてみたいと思っているエンジニアの方の参考になれば幸いです。




paizaでは、特にWebサービス提供企業などでもとめられる、システム開発力や、テストケースを想定できるかの力(テストコードを書く力)などが問われる問題を出題しています。

テストの結果によりS,A,B,C,D,Eの6段階でランクが分かります。自分のプログラミングスキルを客観的に知りたいという方は是非チャレンジしてみてください。

また数多くの自社サービス提供企業、webサービス提供企業の求人を掲載しています。

http://paiza.jp

プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編