タオルケット体操

サツバツいんたーねっと

英語できないエンジニアだけど外資系に転職してしばらく経ちました

僕の英語力について

こういう記事って、「英語できない」を過少申告してること多いですよね。「TOEIC820点しかとれてなくて全然ダメなんです>_<」みたいな。アレはなんなんですかね?
ちなみに僕はそもそもTOEICを受けたことがないです。

そんな僕のスペックをまとめると

  • 学生時代に特に苦手意識を持ったことはない(苦手意識を持つほど勉強しなかったとも言える)

  • TOEICを受けたことがない

  • StackOverflowを読むくらいならなんとか

  • 英語で会話したことは(ほぼ)ない

  • 去年初めてヨーロッパに行った際、「tea or coffee?」にcoffeeと答えたらteaが出てきた

  • DMM英会話の無料体験をしてみたら死んだ

つまり公式には学校教育でしか英語を学んでいないということになりますね。平均的な日本人って感じだと思います。そして学校の英語教育は役立たずで有名(実際に役立たずっぷりを実感)なんで、つまり胸を張って英語ができないエンジニアだということができるでしょう。

経緯

某転職サービスから英語のメッセージが届き、当時の職場に物足りなさと将来への不安を感じていた僕は、無料で英会話できるじゃんwwwこれも何かの縁だと考え、とりあえずランチミーティングをすることに。
そこで話してみたら(拙い英語を頑張りつつ、相手も少し日本語が出来た)良い感じだったこと、そして平日の昼間からビールを注文して飲んでいたことに「流石は外資系やで!」と感銘を受け、公式な面接をすることを決意。良い感じにやっていって今に至ります。

どんな会社なの

こんな会社です。http://www.adgo.co.jp
コアメンバーはほぼ全員日本にいて仕事をしてます。日本人は僕だけです。
僕は主にJavaScriptとPythonを書いてます。

最近はTokyoJSのサポーターもしてるよ! きてね!
tokyojs.com

大変だったところ

英語です。そりゃそうだ。

「毎日喋るようになれば一ヶ月で英語ペラペラやろwwwガハハwwww」と余裕で構えてたんですが、現実はそう甘くない。
3ヶ月ほど経った今になって、ようやく会話での基本的な意思疎通ができるようになってきた……といったところでしょうかね。

本を読んだり、ドラマを観たりと余暇の勉強をなるべく欠かさないようにはしていますが、やはり一朝一夕で身につく物ではないですね。気長にやっていきます。

第一の壁 - スタートアップ文化

とにかく生産性が求められるスタートアップ文化の元でガッツリ働くのは初めてだったので、時には技術的な正解を捨ててでもリリース速度を優先したり、といったところがなかなか大変でした(未だにちょっと慣れない)。
僕が若干こじらせた感じのコードを書きがちなところもあるとおもうのですが、よくリードエンジニアから「それはオーバーエンジニアリングだ」みたいな感じで議論になります。とはいえ、そういうこじらせを捨てて時には愚直なコードを書いてでもプロダクトを優先するぜ! みたいなマインドを身につけるためにスタートアップを選択したこともあるので、目論見通りの学びが得られていると言えます。

また、ミーティングもなかなか大変です。開発上のissueのやりとりに関してはJIRAとGitHubを使って文章でやりとりをしているのでなんとかなりますし、一対一での会話は「理解できるまで無限に聞き返す」ことでなんとかなります。しかし喧々諤々の議論が行われているミーティングに参入するのは本当に大変でした。
言語そのものもそうなんですが、そもそもこんなに活気のあるミーティングに参加するのが初めてなので単純にビビってたところもあるかとおもいます。進捗管理のやり方なんかも、今までの雑なやり方と全く違うのでとにかく最初は大変でした。
今でも100%とは言えませんが(複数人で早口に議論しているとついていくのは難しいし、全ての会話に割り込んで聞き返すのは流石にトゥーマッチなのでは…というビビリ)、それでも随分まともに参加できるようになったのではないかとおもいます……。とにかく、最初の方みたく胃が痛くなるようなことはなくなりました。

というかそもそもフルタイムの仕事でGitHub使うのもはじめてだし、プルリクエストを使ってちゃんとレビューをしていくのもはじめて*1……といったような状況で、はじめてばかりで、あたしこの先どーなっちゃうの!?

第二の壁 - シャイボーイ

僕、人見知りなんですよね。

第三の壁 - 言語

言語の壁、大きい。
「issueは文章だからなんとかなる」って書きましたけども、やっぱり細かいニュアンスがつかめなくて、そこを詰めるために質問するけども、やっぱり細かいニュアンスがわからなくて……。とか、Slackのチャットに返信するのが遅くなったりとか、会話が成立しなかったりとか……。

ここの言語の壁*2の部分については長くなりそうなので後日まとめて書きたいところですね。

良かったところ

外資系 & スタートアップということで、とにかくスピード感があるし、便利で有用な外部サービスはバンバン導入していこうぜ! という機運がある。あとみんなが家族を大事にしていて、忙しいときでも「娘が熱を出した!」みたいな感じで家に帰るのは本当によいことだとおもう。家族が大事。連絡やコードレビューくらいなら家からでもできるしね。
個人的に、普通のツールを普通に使えるのがすごく新鮮で、前職でSlackを導入するまでにものすごい時間をかけて根回しとかしたのがアホらしくなるくらい色んなものが簡単に使えて最高だな?
あとちゃんとVagrantfileとか、入社したその日にコードを書き始めることが出来るような体制が整っていて良い。普通じゃね? とおもう向きもあるかもしれないけれど、僕が入社するまではエンジニアが2人しかいない状況で回していたことを考えると素晴らしいことだとおもう。
とにかく生産性に寄与してくれてコスパ的にペイするような物や環境は基本的に整っていて変な苦労をせずに済むのって本当に素晴らしいですね。

あとスタートアップということで、みんなそれなりに残業はする*3わけなんですが、19時にもなるともう「ヤベー、めっちゃ働いたヤベー」といった感じで、20時まで働いた日には「今日の俺らはマジ頑張ったっしょ…」という、実に健全な環境。

あとすごく良いのが、議論ができるところ。みんな自分の意見をハッキリ言うし、僕も仕事に関してはかなり自己主張が強いほうなのでこういう風に意見を戦わせることができるのはすごくやりやすい。反面みんな元気すぎて、ついつい自転車置き場の議論に陥りがちで疲れることはあるけど、まぁこれはバランスなんでしょう。

入ったばかりで色々と新鮮に感じているだけということもあるでしょうが、意見が割れることはあっても、プロダクトを良くする、生産性を上げる、楽しく仕事をする、という方向性をみんなで向いて仕事をしているっていうのはとにかく気持ちが良いですね。

プログラマーとしての技術感について

もちろん観測数が少なすぎるわけなんだけど、国で分けるのって意味ねーなと改めて実感。

結論

英語できなくても、割となんとかなる。
GitHubで、なんでもいいので海外のリポジトリにプルリクエストを送ったことがあるならば、それを毎日やるようなものだと思えば良いかもしれない。レビューコメントなんて何回も読めばいいし、最悪Google翻訳使えばいいじゃん?


海外のエンジニアと働いてみたいと考えている英語が苦手な人へのアドバイス

アドバイスというか、経験からくる学びを置いていきます。

  • わかるまで聞き返す

    ほとんどの日本人が英語苦手なのはみんなわかってるんで、遠慮なく聞き返しましょう。見てて気が付いたんですが、ネイティブ同士でも出身地が違うと聞き取れなかったりすることは多々あるっぽくて、かなり頻繁に聞き返してます。
    あと、わかるまで聞き返すと最終的にわかりが発生するので、英会話が成立するんですよ。すごくないですか?*4

  • カタカナ発音をするくらいなら間違えたほうがマシ

    IT系の会社だからかもしれないけども、西洋圏の人たちには挑戦を尊ぶような文化がありますね*5

    そういう中で、いわゆる「逃げのカタカナ英語」は、最初はウケるよねwwwみたいな感じで捉えられてるんですけども、そのうちウンザリしてきているっぽいことが雰囲気でわかります。
    自分たちで置き換えたらわかるとおもうんですけども、「スシwwwゲイシャwwwwハラキリwww 」って延々言われ続けたらそのうちイラっとしますよね? たぶんそういうことだとおもいます。
    日本人特有の間違い、上等じゃないですか。だって日本人だもの。

    間違うことから逃げて永遠に正解しないような行動をしていると、エンジニアとしての能力にも疑問を持たれる可能性があるので気をつけたほうがいいかもしれませんね(脅し)。

  • 僕らの仕事はコードを書くこと

    そりゃまぁ他愛のない会話とかがもっと弾んだら楽しいとおもいますし、生産性の観点から言っても人間関係の重要性は重々承知しております。そのために僕なりの頑張りをもってシコシコと勉強しているんですけども、こと仕事中において我々プログラマーの最重要項目である技能はコーディング(とかインフラとか)です。
    変数名(datasと書いて、そんな複数形は存在しないとレビューを受けた)とか、コメントの英語がちょっとおかしいとか、そんなところで萎縮していると返って迷惑になりますし、そこらへんを防ぐためにコードレビューが存在しているようなところもあります。
    コメントの英語がとっちらかっていることがあっても、僕は「俺のコードが一番セクシー」だと常に思い込んで仕事をしていますし、母国語がなんだろうがプログラマーの仕事はそこなんで、資本がどこの国にあるとかはあんまり気にし過ぎても…ねぇ? って感じですかね。

    もしも英語に自信のない貴方が面接を通って入社できたのだとしたら、それは語学の難をおいても貴方の能力が必要だとされたということなので、自分らしくやっていくのがお給料に報いる一番のやり方なんだとおもいます。

まとめると、エンジニアは技能職なんで、技能でやっていきましょうという話です。


英語の学習に使っている厳選あれこれ

  • Netflix

    英語学習におけるNetflixの優位な点は、HuluやAmaon videoと違って字幕や音声の選択が柔軟なところですね。
    疲れて何もやる気が起きないときは、Netflixでダラダラとドラマを観ています。きっと何もしないよりはマシでしょう。

  • 大西さんの本 - 一億人の英文法

    英文法ってきくと「ゲェーッ!」ってなる人は多いでしょうし、僕もその一人なんですけども、大西泰斗氏の本はマジで良いです。日本人が英語のエッセンスを学ぶ入門に良いのでは? いいよね?

    一億人の英文法 ――すべての日本人に贈る「話すため」の英文法(東進ブックス)

    一億人の英文法 ――すべての日本人に贈る「話すため」の英文法(東進ブックス)

  • スクリプトを読みながら音声を復唱する系の本

    この手のものは色々とあるんですが、僕は「毎日の英文法」という本を買って、暇な時に練習しています。といってもややこしいことは書いてなくて、「考えなくていいから死ぬほど復唱して身体で覚えやがれ」というマッチョな本です。

    毎日の英文法 頭の中に「英語のパターン」をつくる

    毎日の英文法 頭の中に「英語のパターン」をつくる

    効果については色々と議論があるようですが、「そもそもCDと台本読みながらでもまともに喋れなかったらアドリブとか無理じゃね?」という意味で、筋トレのような効果があるとおもいます。実際それなりの効果があるっぽいことを体験しているのでおすすめです。
    サンドバッグを殴れたらリングに上がれる訳ではないですが、そもそもサンドバッグを殴れない人間がリングに上がるのは無理ゲーです。やってみると、いかに自分の口と舌が筋肉不足なのかわかります。

    この手のものだと、AmazonがEnglishという月額800円でスクリプトと音声を提供するサービスを開始したっぽいので、それを試してみても良いかもですね。僕も本を何周かしたらそっちに切り替える予定です。

  • lang8

    lang-8は、いろんな国の言語を学びたい人がお互いに日記を書いて添削しあうSNSですね。
    会話の練習にはなりませんが、じっくり考えながら文章を書くことで英語のレパートリーが広がって、地力がつくので良いのでは? あと英文を書く習慣をつけておくと、履歴書やメールを送信するときに役立ちます。

オンライン英会話は、今ちょっと忙しくて時間の拘束が厳しいので使ってません。
日々の会話で拾えなかったところとかを詰めるためにも、余裕ができたら使ってみたいですね。

以上!

*1:オープンソースとかで個人的にはやってたけど

*2:これはそのまま文化の壁も含む。言葉は文化なんだなと強く実感している

*3:どうにも差し迫っているときはかなーり遅いこともある……

*4:ただし発言の重要度次第では言い直してくれない(ジョークとか)なのでわかりが発生しない可能性もあります

*5:Shake Shackのバーガーが大して美味しくなかったときも、「なんにせよ俺らは挑戦したんだ!」って3回くらい言ってました