オフショア開発を3年やってわかった、簡単にIT英語を学ぶ方法と重要性

2016年07月8日 | コラム
Pocket

(この記事は僕の別ブログ「俺日記」から転載しました。)

ベトナムでオフショア開発をはじめて3年。
オフショア開発といえば日本語を話すブリッジSE(以下BSE)を通して行うスタイルが一般的だが、実際に行ってみたところ下記の理由で個人的にはあまりおすすめできない。

  • BSEは希少で給与が高く採用も難しいので、コストが上がり拡大も難しい
  • 翻訳工程が増えるのでコミュニケーションの即時性・正確性においてBSEがボトルネックになる
  • 日本語という言語が難解なため、数年日本で働いた経験のあるBSEでもまだまだ厳しい面がある
  • 最終的には日本人が品質チェックしなければならない

一方で日本人エンジニアと外国人エンジニアが英語で直接コミュニケーションをとれば

  • 英語ができるPGは豊富にいるので、人材の確保が容易
  • 各PGと直接やりとりができるためレスポンスが早く、各PGのスキル把握が容易
  • エンジニア同士のやりとりなので拙い英語でのやりとりであってもコードで補完できる
  • タスク毎に日本人エンジニアによるコードレビューが入るので、高品質

ソースコードをzipにしてメールで共有したり、FTPでサーバーにアップしたり、電話やメールでやりとりしていた頃に比べれば開発環境も大きく変わった。

例えば、GitHubを使えばだれがどこをどのように変更したのかを一瞬で把握できるし、vagrantを使えば開発環境も一瞬で共有・構築できる。BacklogやRedmineでタスク管理をしながら、chatworkやslackなどでほぼリアルタイムにコミュニケーションを行うことができるようになった。
開発におけるコミュニケーションの表現力はこの数年で圧倒的に進化したので、BSE依存の開発スタイルではなく、エンジニア同士がやりとりした方が時間的・費用的にも低コストで、高い品質で進めていける。
オフショア開発は日本人エンジニアが直接英語で外国人エンジニアとやりとりするべきだというのが僕の結論だ。

ただ、日本人は英語に対する苦手意識がかなり強い。日常会話も話せないのにビジネスで使う英会話なんて無理だと思っている方もいるはずだ。
しかし、それは逆で、あらゆる話題が出てくる日常会話よりも、開発に関する表現にフォーカスしたビジネス英会話の方が簡単だったりする。

というわけで、僕がよく使っている言い回しの一部をここにまとめてみる。

corresponding 〜
一致する〜を(と)
How can I get the corresponding data in column A?
カラムAからどのように(条件に)一致する値を取得したらいいでしょうか?

compared with 〜
〜と比べて
Compared with previous code, now only a single call is needed.
以前のコードと比べると、シングルコールのみが必要になりました。

consist of 〜
〜から成る
All computer programs consist of two elements: code and data.
全てのコンピュータプログラムは2つの要素から成る:コードとデータだ。

due to 〜
〜が原因で
I think that the error message you mentioned is probably due to incomplete set up.
あなたが言っているエラーはセットアップが正常に完了していないから起こっているのだと思う。

except for 〜
〜以外
all ok – except for IE
IE以外全部OK

in accordance with 〜
〜に一致して。〜に応じて。
Display the profile data in accordance with the login id.
ログインIDに一致したプロフィールデータを表示してください。

in detail
詳細に
I will explain this point in more detail later.
この点について、私が後ほど詳しく説明します。

In reference to 〜
〜に関して。~を参照して。〜に準拠して。
In reference to @Damien_The_Unbeliever’s answer, here’s the complete solution.
Damien_The_Unbelieverの回答を参考に、こちらが完ぺきな解決方法になります。

it seems to 〜
〜のようだ
it seems to work fine.
うまく動いているようです。

It’s better to 〜
~するほうがいい
It’s better to use the code blow.
下記のコードを使った方がいいです。

regarding 〜
〜の件
Can anybody help regarding this?
どなたかこの件に関して助けてくれる人はいませんか?

relevant to 〜
~に関連して
There’s a solution relevant to what you’re trying to do.
あなたがしようとしていることに関連する解決方法があります。

same as 〜
〜と同様に
Same as other answers,
他の回答と同様に、

How long will it take to 〜
〜するのにどのくらい時間がかかりますか
How long will it take to fix it?
それを修正するのにどのくらい時間がかかりますか?

That’s all
以上です。

こんな言い回しを知っていればなんとなく英語でコミュニケーションできそうな気がしてこないだろうか?
実際にはもっと覚えるべき言い回しは多いが、TOEIC用の勉強ではなく、開発に関連した英語を覚えれば意外と短期間で英語で仕事ができるようになるはずだ。

そんな思いから、開発に関連する英語の単語・イディオム・フレーズをまとめてwebアプリを作った。

エンジリッシュ – エンジニアのための英語勉強webアプリ
https://e-lish.io/

エンジニア+イングリッシュで「エンジリッシュ」。

ダジャレのような名前だが、覚えやすいはずかと。
自分自身、ベトナムに来る前はさまざまなTOEIC用のサービスで勉強していたが、実際に業務を始めた際、基本設計書の言い方すらわからなかったので、そんな単語を覚えることができるサービスを探している方もいるのではないかと思う。
有名なTEDのプレゼンでも下記のように書いてある。

4.核となる語彙の習得に集中する
英語であれば、核となる1,000語で、日常コミュニケーションで使う語彙の85%がカバー出来ます。3,000語で、日常会話の中で言いたいことの98%を表すことが出来ます。3,000語の語彙があれば、その言語が話せるのです。残りは添え物のようなものです。新しい言語を学び始めた時、まずは「ツール」を揃えることから始めましょう。
「核となる1000語をまず覚える」 外国語を6ヶ月でマスターするための”7つのアクション”とは?

オフショア開発をやっていなくても、エンジニアであれば英語のドキュメントを読む機会は多いと思うので、日本で使う機会の少ない日常英会話よりも先に技術系会話を覚えて、「ツール」を揃えれば、上達も早いのではないだろうか。
英語に興味のあるエンジニアの方はどうぞご利用ください。

追記:BSE不要のように書いてしまいましたが、BSE100%依存ではなく、90%くらいは英語でやって、残りの10%(キックオフ時や複雑なやりとりの際)にBSEに入ってもらうというスタイルがベストだと思っています。

Pocket

The following two tabs change content below.

しんじ

ベトナムのホーチミンにてオフショア開発中。サービス開発が趣味。web系は主にPHPで、スマホアプリはswiftで。最近はエンジニア向けの英語勉強webアプリ エンジリッシュe-lish.io を作りました。