フィリピンでアウトソーシングをすると効果的な理由(後編)

技術面から見た、フィリピンにアウトソースすることがオススメとなるポイント

先月は、フィリピンにおけるオフショア開発の特徴や、フィリピンに様々なプロジェクトをアウトソーシングする事に対するメリットなどを書かせていただきました。今月は、技術分野からアウトソースの可能性を考えた場合について考えてみたいと思います。
フィリピンには、以下のようなスキルを有するエンジニアが多数存在します。

HTMLコーディング

コーディングは、プログラミング言語を使用してソースコードを書く作業になりますが、サイト制作におけるコーディング(HTMLコーディング)は、マークアップ言語の代表格であるHTMLやCSS、あるいはJavascriptといったスクリプト言語を用いて、希望のデザイン通りになるようにコードを記述し、ブラウザ上で表示できる状態にすることです。オフショア委託の場合は人材費が抑えられるため、非常に低いコストで開発をすることが可能となります。

PHP

PHPとは動的にWebページを生成することができるサーバーサイドのスクリプト言語です。他のプログラミング言語と比較して仕様や文法が簡単であるため習得しやすく、エンジニアの数も多い言語です。HTMLソースの中に直接入力することが可能で、外部プログラムの読み込みを必要としないので、処理速度が速いことが特徴です。Webの世界では、一番有名なWebサイト用CMSといっても良いWordPressでも使われています。

フィリピンは、全体の技術水準も比較的高いことから、PHPやC#を利用した基本的なシステム開発を問題なく進めることができます。特に日系企業での開発経験を有するエンジニアが多く存在するため、日本独自の慣習などにも対応できる人材がフィリピンも多く、勤怠管理システムや在庫管理システムなど、様々な用途、目的に合わせた業務システム、あるいはエンタメ系などの軽いWebアプリケーション開発など、様々なシステム構築を実施することが可能です。
ただし、システム開発をオフショア委託するのであれば、委託する際の仕様書をきちんと整備することはもちろんのこと、オフショア委託先の企業が有する開発実績や納品後の運用保守能力、あるいはプロジェクトにおいて必要とされる課題解決力がどれだけあるか、といったことは事前によく確認することが重要です。

Python

開発言語の中でも意外と昔からあるPythonは、読みやすく、分かりやすいコードによるプログラムを目指したプログラミング言語のため、どんな人が書いても比較的同じようなコードになるようになっています。そして、一般的にPythonは教育場面やビギナーレベルのプログラミング言語としても利用されています。理由は、簡単な言語仕様により、比較的少ないステップ数で分かりやすいソースコードによる実装ができるからです。Pythonは、Webサイト構築や今流行りのAI関連の開発など、様々な分野で使用できる言語です。
フィリピンでは大学一年生からPythonを授業で学べます。フィリピンは16歳から大学生となるため、大学一年である16歳からPythonを学ぶ環境が整えられているため、Pythonを理解した若い人材が沢山います。

Java

Javaは世界的に見ても使用頻度が高い開発言語であり、習得したい言語として認知されている実績のある言語です。人気が高い理由としてあげられるのは、
「Javaは業務システムをはじめ、多くの現場で使われていること」
「マルチプラットフォームに対応しており、OSに依存することがない」
などの理由があります。
OSに依存しないということはかなり重要で、作り上げたソフトが動く環境を考えなければいけないというのはプログラマーにとって重大な問題です。Linux系やmacOS、Windows系なのかを選ぶことなく、マルチプラットフォームで動くシステムを開発することができるJavaという言語は根強い人気があります。

AI開発やハイレベル

PHPなどの一般的な技術だけではなく、中には機械学習やAI開発などの高い技術を持っているエンジニアがフィリピンには存在します。たとえばそのようなエンジニアをラボ契約の形でBynameによる契約を行うことで、社内のチーム内にそのエンジニアがメンバーとして参加する形の開発チームを作ることも可能です。

アウトソーシングを成功させるポイント

では、どのようにすれば、何らかの業務や開発プロジェクトのアウトソーシングを成功させることができるのでしょうか? 答えは、アウトソースしたときにどのような状態になるか、最終的な結果や納品物となる「最終成果物やゴール」をイメージすることです。最終成果物やゴールを予測できれば、費用対効果が明確となり、アウトソースすべきか否かの投資判断もより正確になるからです。

アウトソース後の最終成果物やゴールを予測する方法は、二つの考え方があります。一つは、対象となる業務を自分たちで完璧に遂行できるようにしてから、その業務をアウトソースすることです。この場合、自分たちが普段行っている業務を外部にお願いすることになるため、正確に業務内容を伝えることができます。

しかし、自社で実行できない業務、もしくはスキルを有したプロにアウトソースした方が結果的に効果的となるであろうという想定でアウトソースを実施する場合もあります。簡単な例としては、翻訳作業があげられます。たとえば自社では翻訳ができない、あるいは調査作業などで時間がかかりすぎてしまうため、翻訳のプロに翻訳業務をアウトソースする、ということが考えられます。

翻訳作業であれば最終成果物はイメージできるかと思いますが、自社で普段作業していない業務をアウトソースする場合、アウトソース後の姿を正確に理解することは難しいことも多々あります。このような場合、いくつかの考え方をベースに最終的な形をシミュレーションすることが求められます。例えば以下のようなステップによるシミュレーションの方法があります。

  • 業務フローを整理する
    アウトソーシングを想定している業務を整理し、工程ごとに切り分けで、誰がいつどの段階で実施するのかを明確にします。
  • 各工程の業務量を算出する
    業務フローで切り分けた各工程の業務量を計算します。各業務量の算出は、似ている業務の数字を参考にする、あるいは小さなトライアルを実施してみて全体を見積もるなどの方法があります。
  • アウトソースする対象業務全体の業務量を算出する
    最後に、アウトソース対象の全工程の業務量を合算し、全体の業務量を計算します。

ここまでシミュレーションがきちんとできると、費用対効果がより明確になり、アウトソーシングするか否かの意思決定を正確に行う事ができます。また、このようなシミュレーションを自社内で行う事は、委託業者に全て丸投げで任せっきりにするのではなく、自分たちが最終的な結果をコントロールすることも可能となります。

まとめ

アウトソーシングを企業が効果的に行うためには、技術面と業務面の両方からのアプローチから注意深く検討していく必要があります。さらに、アウトソーシングを行う業務の性質とプロジェクトの向き不向きを考慮しつつ、および長期的な企業戦略をもって進めていくとさらに効果的なアウトソーシングを行う事ができます。

ライター:aya

御相談、ご質問はこちら

サービスご案内資料や、特別資料「機械学習の精度を向上させる方法とは?」がダウンロードできます。

最新事例の公開情報や、イベント・セミナー情報をお届けします。

pagetop ボタン
サイバーテックお知らせ画像
©2018 CyberTech corporation ltd. All Rights Reserved.