株式会社Mobility Technologies
急拡大中の事業を支えるエンジニア採用戦略。業務委託でミドル層の人材を補完
紹介人材:アプリケーションエンジニア、iOSエンジニア、Androidエンジニア
TOPIC
近年、アジャイル開発が注目されています。今回取材したIQVIAソリューションズ ジャパン株式会社はヘルスケア企業が抱える課題に対するソリューションを提供するグローバル企業IQVIAの日本法人のひとつで、医療ヘルスケア分野のデータ・分析やコンサルティングによる専門性の高い顧客支援を展開。社内のシステム構築などを担う同社のシステムディベロップ部門も、ここ数年、スクラムをコアにアジャイル開発を行っています。今回はアジャイル開発に参画するエンジニアとしてフリーランスを活用するに至った経緯や活用のポイントなどを伺いました。
2013年にIQVIA ソリューションズ ジャパン株式会社(当時IMSジャパン)へ入社。20年以上のシステム開発経験やスクラムマスターの知見を活かし、社内の基幹システムのテクノロジーの刷新、全社的なアジャイル文化の醸成、グローバルチームとの連携、技術力の底上げなどを総合的に牽引する。
IQVIAソリューションズ ジャパンには、グローバル管轄で社内の基幹システム開発を担うシステム・ディベロップメント部門と、顧客向けのサービスやプロダクトの開発を担うビジネス部門があります。ビジネス部門発のシステム開発では外部ベンダーに一括で発注することが多いのですが、私が所属するシステム・ディベロップメント部門では、アジャイル開発を基本とし、自分たちの技術力で関連するシステムの開発・保守を自ら行う方針をとっています。
先日、あるビジネス部門から新しいシステムを開発するプロジェクトが始動、我々の部門がその開発を担うことになりました。
弊社は他のグローバル企業と同様、各国の開発案件を一手に引き受けるオフショア開発拠点があり、基本はこのオフショア部門と連携して開発を進めます。このプロジェクトも開始当初はポーランドのエンジニア6人で1チーム、インドのエンジニア7~8人で1チーム、そして日本のエンジニア5~6人で1チーム、合計3チーム・20名前後のメンバーでスクラムチームを構成する予定でした。
ただ、海外のエンジニアと協業する際には、時差、言語、商習慣、文化、期待値などの違いによるコミュニケーション・オーバーヘッドが常に課題となります。今回は、概念設計を終えた段階で、取り扱うデータが広範囲かつ複雑、仕様書やサンプルデータもすべて日本語、かつ日本の医療システム全体の理解が不可欠なこのプロジェクトでは、海外チームとの連携のためのオーバーヘッドが大きすぎると考え、急遽メンバー全員を日本のエンジニアで揃えるよう方針を転換しました。
システム・ディベロップメント部門では、例えば Hadoop、Spark、Kafka、Docker、Teiid、ELK、Angular などの前衛的な技術を積極的に利用しており、このプロジェクトでもこれらの技術を使用した先進的なアーキテクチャを考えていました。このため、メンバーの選定に当たっては、新しい技術を素早く学びつつ、それをリアルタイムに形にしていける、技術的な素地がしっかりしたエンジニアを見つける必要がありました。
まずは、社員やこれまでお付き合いのあったベンダー、パートナーシップを結ぶ企業などからエース級の人材に集まっていただきチームを組成しましたが、あと5~6名を1~2ヶ月の間に揃えなければならない、という状況でした。他のベンダーにも相談しましたが、開発のスコープを先に決めた一括請負の開発方式を打診されることが多く、アジャイル思想・スクラム方式での自社開発を基本とする我々とは基本的なベクトルが合わないんです。
そこで、業務委託の枠組みの中でも昨今のトレンドでもあるフリーランスに着目しました。フリーランスのエンジニアは自分の技術力や難易度の高い案件をこなしてきた経験、新技術を吸収するスピードを売りにしているので、我々が求めるスキルレベルを持ち合わせている可能性が高いと考えたんです。そこで御社を含め、フリーランスのエージェント数社に相談をさせていただきました。
当初の狙い通り、高い技術力や興味深い経験をお持ちの技術者を次々に紹介いただきました。面接もスムーズに運んで、1ヶ月以内に3名の候補者が見つかりました。これは我々の期待以上のスピードでした。
ただ、基本契約を結ぶまでの社内の調整に時間がかかりました。弊社は基本契約を締結する際に詳細な検証を行うため時間がかかることが多いのですが、フリーランスとの契約形態が準委任契約だったこと、また契約手続きの依頼が直前だったこともあって、基本契約の締結が確保いただいていたエンジニアへの回答期限までに終わらない可能性が高かったんです。そこで経営層が参加するプロジェクト・ミーティングで問題を報告したところ、経営層がすぐに理解を示し「戦略上非常に重要なプロジェクトだから」と法務部門に特急での対応をお願いしました。この結果、交渉期限ギリギリで契約を締結することができ、現在もこの3名のエンジニアには大活躍いただいています。
その後も、1ヶ月遅れて2名、数ヵ月後にさらに1名のエンジニアを採用させていただき、空いていた6名の枠を理想的なスキルセットをもつエンジニアで構成することができ、スケジュールへのインパクトも最小限で済みました。
一番は「自律性」ですね。どのような雇用形態でも自律的であるか、自分から新しいものを学んで解決する、自分でスコープを決めずに課題解決に取り組むといったマインドを持っているかを毎回確認するようにしています。いくら技術的に優れていても、「言われたことしかやらない」、「前の会社ではこういったやり方をしていた」と固執する方は採用しません。
この自律性を持った技術者でチームを組むと、各自が必要なスキルを積極的に学び、学んだことやお互いの経験を共有し合い、刺激しあうことでさらにチームが強くなるんです。こうした機能横断的で自律的なチームを作ることが、アジャイル/スクラム開発を成功させる秘訣のひとつです。
フリーランス、SIer、正社員などのラベルを気にすることなく、エンジニアを信頼し、彼らが最善だと思う行動や開発ができるような環境や文化をつくることを大切にしています。スクラムではスクラムマスターがチームの不安要素や障害を取り除き、エンジニアをサポートします。そうすることでエンジニアが開発しやすい環境ができ、自動的に良いものが上がってくるチームを作ることができます。まだまだ発展途上ではありますが、今回はこれが比較的うまくいっていると思います。
稼働いただいているフリーランスのエンジニアからは、「自分を信頼してもらっていて、チームの自治権があり、意見やアイデアが通ることがやりがいにつながる」と言っていただいています。フリーランスの方でも、プロジェクトの初期段階からリリースまで一貫して開発に関われる機会はなかなかないと思いますので、その点でも面白いと感じていただいているのではないでしょうか。
たくさんありますよ!
例えば、Angular のできるエンジニアに、ある Web UI のモックアップの開発をお願いしたことがあります。その方が経験しているのは何世代か前のバージョンのため、今回の開発ではキャッチアップが必要な状況でした。加えて、この UI へのビジネス要件が非常に複雑だったので、3~4 スプリント、2ヶ月くらいはかかると思っていたんです。ところが、わずか2スプリントほどで大枠を作りきってしまい、次のスプリントではログイン画面と OpenLDAP を使った認証機構を立ち上げて繋ぐところまで、一人で作り上げていました。LDAP の設定ができる開発系のエンジニアはそれほど多くなく、これ自体、1~2 スプリントかかると思っていたので本当に驚きました。後で聞いたのですが「以前、サーバーエンジニアをしていたので、思い出しながらやった」ということで、期待を大幅に上回る働きをしていただいています。
多様な背景やスキルを持った方で構成されたチームですが、スクラムチームとしての結束力や雰囲気も良く、スピードを持ってプロジェクトの成果を上げ、あるいはリスクを事前に察知することに寄与しています。ひいては会社全体のプロセス改善や市場での競争力の強化にもつながるものと信じています。今後もアジャイル・スクラム方式でのシステム開発を啓蒙し、社内での適用事例を増やしていきたいと思っています。
フリーランスなら、
ハイスキルで自律的なエンジニアの確保が可能
自律性のあるエンジニアは
アジャイル開発でも活躍