バングラデシュの開発会社COOと対談。欧米と日本向け開発マネジメントの秘訣とは

バングラデシュ開発企業の中でも欧米企業との取引が多く、品質にこだわりを持っているNascenia社の創業メンバーCOOのFuad氏にバングラデシュのIT市場やエンジニアのマネジメント、品質についてお話を聞いてきました。

バングラデシュ開発会社COO

バングラデシュのソフトウェア開発やIT業界の現状

(西川) バングラデシュのソフトウェア開発やIT業界の現状について教えてください。

(Fuad氏) バングラデシュには多くの若い人材と優秀な大学があります。バングラデシュの首都はダッカですが、ITが得意でエンジニアになりたい若い人材は皆ダッカに来ます。

 バングラデシュは有望なソフトウェア産業を持っており、システム開発企業の多くがダッカに拠点を置いています。カナダ、アメリカ、ヨーロッパ全域など、多くの外国との提携や協業での取引をしています。また、インフラ面でもインターネット接続、電力など、必要なものは整っているため、非常に優秀な人材プールや環境を備えていると言えます。

外国の企業はインドやベトナムなどの企業にオフショア開発のアウトソーシングをする傾向がありますが、今ではインドの場合は他国とは状況が異なります。インドは大国で、優秀なエンジニア層は実際には自国のインドを離れてアメリカやヨーロッパに行ってしまいます。

そのため、インドの企業にオフショア開発をアウトソースすると、優秀なソフトウェアエンジニアがアサインされることは難しいことが多いのですが、バングラデシュの場合はそうではありません。バングラデシュの優れたオフショア開発ソフトウェア企業にアウトソースすれば、非常に優れたエンジニアリソースを得ることができます。

これが私が言えるIT業界の現状です。

エンジニアが持つ主なスキルや技術、開発体制

(西川) Nasceniaのエンジニアが持っている主なスキルや技術、開発体制について教えてください。

(Fuad氏) 2010年の設立以来、私たちは主に北米とヨーロッパの企業と協業することにフォーカスしてきました。北米やヨーロッパの企業は最先端の技術を導入しようとしています。そこで私たちは設立当初から品質面に重きを置いてきました。

スキルに関しては、2010年にウェブアプリケーション開発で事業をスタートし、2013年頃からはモバイルアプリケーションの開発も技術スタックに加えました。そして過去数年間で、AI人工知能とブロックチェーンもポートフォリオに追加し、それらのプロジェクトをいくつかローンチしてきました。

一つ言及すべきことは、私たちはカスタムソフトウェアソリューションプロバイダーであるということです。

したがって、明日どんなクライアントが来るかはわかりません。どの様なクライアントでも、適切な仕様があれば、それをソフトウェアに実装できます。

また、私たちは特定のテクノロジーに依存しない会社です。クライアントには様々なニーズがあるため、新しい技術を採用または学習し、それらを提供しています。例えば、私たちはRuby on Railsを使用したウェブアプリケーション開発において専門知識を持っています。これは他のバングラデシュのオフショア開発企業でも稀な存在といえ、またPHPのフレームワーク、特にLaravelを活用しています。それ以外でも、Microsoft .net技術も活用しています。

モバイルアプリケーション開発では、AndroidとiOSの両方で対応しております。技術を選択する際には、KotlinやSwiftのようなネイティブ技術と、Flutterのようなハイブリッド技術の両方を使用したりします。また、React.jsを使用したフロントエンド開発にも専門知識があります。その他にも、実際に一流のデザインサービスを提供する優れたデザインチームが社内にいます。

バングラデシュ開発会社COO対談

(西川) 確かに以前にNasceniaさんで担当されたヨーロッパ顧客のサイトのデザインをいくつか見せて頂いた時に、デザインが非常に洗礼されていた事に驚きました。欧米企業との取引がメインのバングラデシュ企業ならではというか、ベトナムや他の東南アジアのオフショア開発だとデザイン面はなかなかこのように洗練されたものにはならなく、基本的にデザインは日本等の本国のデザイナーが担当するケースが大半の為、この点は非常にバングラデシュオフショアのアドバンテージだと感じます。

(Fuad氏) そうですね、そこは差別化のポイントだと言えます。また、私たちは主にFigmaを使用し、ブロックチェーンに関しては、ERC20ベースのNFTマーケットプレイスの開発経験があります。人工知能では、SalesforceベースのEinsteinチャットボット、自然言語処理、推薦エンジンの開発経験があります。

また開発方法については、アジャイルとスクラムの手法で行います。それによってプロジェクト全体の品質を維持しやすいと感じています。

アジャイルまたはスクラムの開発には、JiraやPivotal Tracker、Trelloのようなプロジェクト管理ツールを使用します。コードリポジトリにはGitHubを使用しており、作業がレビューでき、開発者がコードをコミットすると、別の開発者がレビューしてから受け入れるためにプルリクエストを送ります。

また、クライアントのためにクラウドサーバーも設定しています。そのため、Amazon AWS、Microsoft Azureのようなサービスでアプリケーションをデプロイする専門知識があります。まずはテストまたはスタディ環境を設定し、そこにデプロイしてテストを行い、スケジュールに従って進めていき本番サーバーにデプロイします。一部のクライアントには自動テストコードも提供し、Hudsonのようなサーバーを設定しています。そうするとテストコードが実行され、継続的統合が行われます。

これが私たちのスキルセットや開発の流れです。

国によってオフショア開発に求められるポイントや品質基準

(西川) 欧米や日本など、国によってオフショア開発に求められるポイントや品質基準はどのように違いますか?

(Fuad氏) 国の違いというよりは、実際にはクライアントの企業単位でそこは変わると思います。

我々は多くの欧米企業とのオフショア開発をしてきましたが、実際には何の要件も持っていなかった会社も結構多いです。例えば、単に「Uberのクローンを作りたい!」または「Airbnbと同じプロダクトを作りたい!」という希望だったり、「このウェブサイトをコピーして、レプリカを作りたい!」と言った要望を持つ日本企業からもこれらの要望がありましたが、そのようなクライアントが見逃しているポイントは、まずプラットフォーム上で表面的に見えるものは、あくまでもそのごく一部でしかないということです。実際にはそのバックエンド側でより多くのことが行われています。

例えば、誰かが私たちのところに来て、「Googleのようなサイトを作りたい。どれくらいかかりますか?」と言ってきたとします。Googleのプラットフォームで表面的に見える部分では、1ページと1つのテキストボックス、1つか2つのボタン位のものですが、バックエンド側で非常に多くのことが実施されています。

それらの要求や基準はその会社に依存する為、私たちは多くをラボ型契約でプロジェクトを進めます。既に仕様が固まっていて委託でのプロジェクトをしないわけではありませんが、ソフトウェア開発自体は常に柔軟性を持たせることが重要と考えており、これにより将来的に要件の変更があっても対応が出来ます。

しかし、一部のクライアントに対しては、要件に基づいていくつかのワイヤーフレームを作成したり、デザインを作成します。なぜなら、多くの会社はプロダクトの概要アイデア自体は持っていますが、ソフトウェア開発に落とし込んだ時にそれがどのように機能するか、ソフトウェアプロセスの流れがどのように機能するかまでは見通せていない為です。

そのため、私たちはこのようなクライアントの為にいくつかのスケッチを作成したり、ワイヤーフレームを作成して「こんな感じのものを求めていますか?」とビジュアルで提示します。当然、それには少しコストがかかりますが、適切な要件や仕様を持っていない一部の企業には自分達が考えているプロダクトやサービスが可視化されるので非常に役立ちます。

(西川) プロトタイプを作るようなイメージですね。これをするとクライアントは自分たちのイメージと合っているか初期段階から目線合わせできますからね。

(Fuad氏) そうですね。イメージ的にはそのような感じです。

バングラデシュ開発会社COO Fuad氏

クライアントごとの品質基準への対応

(西川)  品質基準は国ごとの特徴というよりクライアントごとで変わるという事ですが、それら特定の基準を満たす為に行った事の事例などはありますか?

(Fuad氏) 具体例なアイデアを初期段階で持っていないクライアントに対しては、仕様をユーザーストーリーの形で提供するよう依頼します。ユーザーストーリーはアジャイルやスクラムにおいて一般的なものです。そして、私たちは実際にいくつかのテンプレートを彼らと共有しています。ですから、これまでの多くのプロジェクト経験に基づいて、私たちはいくつかの要件分析、要件収集のテンプレートを持っていますので、それを提供し、一部のクライアントに対しては、クライアントとのディスカッションの後に自分たちで作成しますが、常に、彼らの期待と初期に書かれた内容との間には多少なりともギャップが存在します。

バングラデシュでのエンジニア採用

(西川) エンジニアの採用についてはどうですか? 例えば、クライアントの要件に対して現在のチームでカバーできないプログラミング言語などがある場合など。

(Fuad氏) まず、新しいスキルセットが私たちのチームにあるものと似ている技術かどうかを確認します。

例えば、クライアントがAngularを使ってプロジェクトを進めたいが、Nasceniaの社内にAngularのエンジニアがいない場合です。その場合、すぐにAngularのスキルセットを持つエンジニアを新規採用するのではなく、まずはReact.jsに精通しているエンジニアを社内で探します。なぜなら、Angular.jsとReact.jsの間には多くの類似点があるからです。

そして、該当のエンジニアが社内に居る場合には新しい技術を学ぶように依頼します。その後に彼らに必要なトレーニングやプロジェクト要件を共有してアサインします。

なぜ私たちがこれを行うのかというと、社内の既存チームからアサインメンバーを選べば、その人のスキルセットがどれだけあるかをマネジメント側が正確に把握しており、マネジメント面でもパフォーマンス面でもアドバンテージがあるからです。

そして、新しく採用するメンバーとは違い互いの事を知っているので、信頼関係やプロジェクトを進める上でのコミュニケーション面でもアドバンテージがあるからです。ですから、私は社内のチーム内のメンバーであればより自信を持ってサービスの提供が出来ます。従って、最初はそれを試みますが、どうしても社内の既存メンバーでの対応が不可能な場合は、新たに人を採用します。

その際には、クライアントにリードタイムを与えてもらい、その時間内に採用やトレーニング等を実施しますが、先ほどお伝えしたように私たちは常に既存のチームからアサインメンバーを選ぶことを推奨します。それがほとんどの場合、新たに採用するよりもうまく機能しクライアントにもメリットをもたらす為です。

(西川) 私も同様の考えですね。マネジメント側からしても既存メンバーの方がより信頼できますし、能力やパーソナリティを理解している事は重要ですよね。

(Fuad氏) そうですね。互いの期待値や価値観も分かっているし、新規採用だとそこはなかなかすぐには難しいですからね。

SocialZero CEO 西川

バングラデシュ開発における品質担保の体制

(西川) 品質面だと、どのように品質の担保を行っているんですか?

(Fuad氏) そこは、3つの方法で見ることができます。

一つ目は、誰かがGitHubにコードをコミットするとき、私たちはPR(プルリクエスト)レビューシステムを持っています。そのため、チームの誰かが実際にその人のコードをレビューします。彼らエンジニアはコードの品質が良いことを確認したいという要望があります。

二つ目は、私たちにはソフトウェア品質保証のQAチームがあり、実際には難しい場面に直面しても、多くのメンバーは彼らの事をレスキュー隊と呼んでいます。彼らはテストケースを書いてステージングサーバーで徹底的にテストを行います。

三つ目は、テスト用のステージングサーバーにデプロイした後、クライアントにそれを見てもらうことを依頼します。

また、一部のクライアントのために自動テストコードも書いています。その方法で、私たちは品質が目標基準に達することを保証しています。

最後に

(西川) 最後に貴社の今後のビジョンや目標について教えてください。

(Fuad氏) 現在のところ、私たちは約50名規模の会社ですが、今後数年以内にまずは200人規模の会社に成長し、次のステージへと進みたいと考えています。これまでは、当社は主に欧米企業と共に働いてきましたが、当社の次の目標は、日本市場への進出です。

既に日本の企業といくつかのプロジェクトを行っていますが、より大規模で長期にわたっての取引を行いたいと考えています。なぜなら、日本は私たちにとって非常にフレンドリーな国であり、日本への直行便もありますから、互いに行き来するのも非常に簡単です。

これまでの欧米企業との仕事を通じて蓄積したスキルと経験を活かし、日本の会社のためのオフショア開発ができると考えています。したがって、私たちの短期または中期のビジョンは、日本の会社と共に成長していくことです。

(西川) 本日はお忙しい中、快くインタビューを受けてくださりありがとうございました。

Nascenia Ltd.

Nasceniaは、バングラデシュを拠点とするシステム開発会社です。
PHP、.NET、Android、iOSなどの技術に精通した優秀なエンジニアを擁しています。特にRuby on Railsのアウトソーシングで知られ、USA、カナダ、EU、UK、日本、オーストラリアなど世界中のクライアントと協力しています。
顧客満足度を重視し、透明性と機密性を確保しながら、クライアントのニーズに応じたシステムを開発しています。
https://nascenia.com/ja/

Social Zero株式会社

“Social Zero”は「社会的なゼロ地点」を象徴し、新しい社会的な動きや変化の始点を意味します。 数多くの海外事業立ち上げを経験したメンバーやDX Agencyで長年の経験を積んだエンジニア、デザイナー、マーケターが在籍しており、多様な文化への理解と尊重を基に、海外進出支援サービスや海外プロモーションなど世界中のビジネスと文化を繋ぐサービスを提供します。
https://social-zero.com/

SocialZeroではオフショア開発会社のマッチングも行っております。バングラデシュでのオフショア開発をご検討の方はお問い合わせフォームからお問い合わせください。ヒアリングからご提案までは無料です。

気に入ったらシェアをお願いします