インド人エンジニアに仕事を頼んで困ったこと(その2)
前回の記事 (インド人エンジニアに仕事を頼んで困ったこと その1)では、主にチーム開発で実装やりとりの際に、よく起こる問題に関して触れた。今回は、プロジェクトを進める際に、GithubやSlack上でインド人エンジニアに指示を出した場合によく起こる問題(+α)に関して書く。主に、Webディレクターに向けての内容であるが、自分でコーディングをしながら、一部分のタスクを他のエンジニアにアサインする方も参考になる部分が多い内容だと思う。一部、+αでその他問題も含めた。
前提として、インド人エンジニアはインド在住リモートワークで、オフィスで対面というコミュニケーションは一切起こらない状況で仕事を進めた場合の話である。インド人エンジニアのスキルセットも優秀な方からそうでない方も含めて数十人の色々なサンプルを取った結果である。
1. Slack上でのやりとりばかりして、BacklogやGithub issue上でのやりとりをしない
これは日本人でもあるあるな話ではないだろうか。Slack上での議論はとりあえずのログには残るが後から検索しようとした際に困ることがある。Slack上でのスレッド議論はテーマが右往左往する。そこで、Github等でIssue課題に切り出して、議論すれば、後からIssueベースでやりとりを終えるので問題が起こった場合の状況把握や後から入った人のキャッチアップに効果的である。また、インド人エンジニアは、Slack議論の中でメンションされた部分のみ返答して、public向けの情報共有は無視するという傾向がある。自分の使いやすいコミュニケーションチャネルであるSlackを愛する。
2. 作業完了の報告や問題が起きた場合の事象共有に画像や動画を一切使わず
にテキストベースのコミュニケーションしか使わない
バグがあった場合の再現方法や、今遭遇してるバグの周辺情報は画像や動画で伝えた方が格段に効率が良いのは、Webディレクションをしてる方では当たり前である。こちらから要求がなければ、インド人エンジニアは最小限のテキスト情報で"It cannot work"としか情報をくれないので、無駄なやりとりが増える。
3. Pull requestやGithub issueを新規作成した場合に説明が一切ない
インド人エンジニアにとっては、pull requestを出せば完了、github issueはタイトルに内容があれば完了という傾向がある。説明文章は一切ない。ただ、ほとんどの日本人開発チームだとGithub issueやBacklogに課題テンプレートがあるのでそれを防ぐことはできる。
4. 作業の進捗報告、確認、質問にSlack Direct Messageを無駄に使いたがる
これは日本人でもあるあるだが、Slack DMを多用する傾向があるので、チーム開発していると情報共有ができない。なので、Publicチャネルに誘導する必要がある。
5. 友人や家族が突如死亡する または 病気になる。毎週風邪を引く
これはたまに開発の遅延等が発生した場合や突如音声不通になった場合によく発生する。コロナウイルスより酷い伝染病(デング熱...etc)は確かにインドにたくさんありそうだが、そんなに頻繁に死者が出ることはない(と思う)。毎週風邪を火木など一定周期で引くことも、病原菌の摂取を習慣としてない限りは考えられない。
6. 作業に詰まっても無駄に粘ろうとして、こちらからpingのステータスを打たないと何をやっているのか確認できない
インド人エンジニアは弱みを見せないので、詰まっても助けを求めずに、力技で解決しようとする。しかし、無駄にハマるのは時間の無駄である。ハマる部分の情報共有はチーム力につながる。
7. 指示があいまいな場合に途端にパフォーマンスが落ちる
研究開発タスクや仕様書が不明瞭の場合にパフォーマンスが落ちる傾向がある。どのような方向性で進めれば良いかわからずに時間を無駄に使ったり。日本人的な期待値とかけ離れた実装をして、修正に時間がかかる場合がある。
8. すごい深夜に仕事をしてくる
インドと日本の時差は3時間半ある。日本人でも夜行性の方がいるが、インド人にも夜行性がいる。その場合は、日本時間AM3:00時間(インド時間PM11:30)にHi Nakajima, what should I do for this issue? Please help me など、返信を求めるテキストメッセージを送ってくる。ほとんどの日本人は寝ているだろう。(私は何故かよく起きている....)
9. 異常な頻度で、Slackでコミュニケーションをとろうとしてくる
なんでもかんでも、自分で調べずに質問を取ろうとするインド人エンジニアがいる。そのほとんどはソースコードを読む または ドキュメントを読めば解決するものである。このケースでよくあるのが、インド人エンジニアは実は確実な返答を期待しておらず、こちらの知恵をかりつつ、自分でも同時に調べている。なので、質問した後に、"I solved it by myself"などがすぐに返ってくる。合理的といえば、合理的だが、こちらの都合も考えて欲しい...
10. Diwali や結婚シーズンになると突如休みが増え出す。一方で正月はフル稼働
インド人エンジニアと仕事をしていると向こう側の休暇のパターンが見えてくる。一番大きな休みはインドのお祭りDiwaliで10月下旬から11月上旬に完全にOFFになる。地域によってかなり長い休みなるので、その部分はリソース提供がゼロになる。こちら側でベトナム、フィリピン、マレーシアエンジニアでリスクヘッジをする必要がある。また、1月中旬?から2月にかけてインドでは結婚式シーズンになり、休みがかなり増え出す。インドの結婚式は数日間あり、朝から晩まであるので 、日本で土日朝か晩に行われるのと異なる。一方で、正月は日本が休みだが向こうはフル稼働なので、こちらの休み期間が減るという現象が起こる。
11. 初歩的な英語の文法・スペルが明らかに間違っていたりする
インド人エンジニア全員が英語が流暢なわけではない。それもそのはずで、普段から必ずしも英語を使ってるわけはなく、グジャラートではグジャラート語、バンガロール ではカンナダ語などのローカル言語を使っている。大学の授業は基本英語の様だが、個人差がかなりある。Slack上で、滅茶苦茶な英語が溢れる。
12. 学歴の詐称
これは、そこまで多くない気が存在する。生きるか死ぬかの状態で仕事をとるのに必死なのである。どうやってそれが発覚したかなどの詳細は割愛する。
13. 実は働いている人間が別人。いわゆる替え玉を行っている
これはアウトだと思う。アカウント偽装やPCを他人に貸し出して、他のエンジニアに再委託や他の複数エンジニアで効率的に回すなどがある。明らかに文脈を得ないコミュニケーション や ビデオ会議で話を振っても黙り込むなどでだいたいすぐに発覚する。Upworkというクラウドソーシングサービスのインド人エンジニアはその30%以上が替え玉を行っているような気がする。単価の高いアカウントは高値で取引されるのだろうか。
14. 勤怠管理に使うタイムトラッカー(作業時間計測を自動で行うデスクトップアプリ)をハックして、作業時間を無駄に稼ぐ
これもアウト。勤怠管理には画面キャプチャーがついているので、明らかに不自然な画面ログ + アクティビティが残っているのでだいたいすぐに発覚する。何やら怪しげな装置を開発して、マウスとキーボードタイピングを一定時間間隔で自動的に動作するようにして、タイムトラッカーをハックするという発明をしているようだ。そんな怪しげな装置の開発より、我々のシステム開発をして欲しい。時間対アウトプットが低くて何かおかしいと思った場合に、この不正に気づくということがある。
以上、14個の問題を列挙した。一部、インド人エンジニアに限った話ではないが、日本人チームにインド人エンジニアを入れた際に特に目立つ問題だと思う。事前に起こり得るパターンを知っておけば、オペレーション、ツールを使って未然にすべて問題に先回りして潰すのは十分可能だ。悲観的になることはない。ネガティブなことばかり書いたが、インド人エンジニアはまじめで素直で学習速度が早い。適応能力は高い。
P2Pクラウドでは会員登録してくれたユーザーに希望があれば無料で、インドオフショア開発用のオンボーディング資料を配布しています!
こちらから会員登録ができますのでよろしくお願いします!
この記事が気に入ったらサポートをしてみませんか?