本記事では、リモート開発におけるプロジェクト管理のベストプラクティス、及びそれの体系化という話題について書きたいと思います。

完全リモート開発と通常の開発には違いがある

当たり前の事ですが、一般的な会社のように、オフィスに社員が集まって開発をするのと、弊社や他の一部の会社のように完全リモートで開発をするのとでは、当然違いがあります。

以前、これについて以下のような記事を書きました。

リモート開発に適したプロジェクト、そしてチーム – もばらぶん

通常の開発とリモート開発では様々な違いがあるため、向き・不向きがありますし、プロジェクトの進め方にも違いが出てくる、というのが本記事の要点でした。

※なお、この記事を書いた時点から1年近く経ち、その間得られた知見も多いため、内容を修正したいという思いはあります。

リモート開発のベストプラクティス

各社が試行錯誤中

では、リモート開発をうまく進めるコツみたいなものはあるのでしょうか。

一般的な「プロジェクト管理」であれば、PMBOKのような体系的な知識もありますし、「プロジェクト管理」を広い意味で捉えるならば、Scrum などのアジャイル開発の方法論もプロジェクト管理の方法論の一つと考える事も出来ます。

それに対して、「リモート開発での」プロジェクト管理はどうでしょうか。遠隔勤務の考え方は比較的昔からあるものの、それを支える技術やツールが進化してきて一般に浸透し始めたのは割と最近の事です。従って、リモート開発でのプロジェクト管理は各社が様々な取り組みや試行錯誤を行っている段階と言えるでしょう。

試行錯誤の結果、似たような結論に至る事が多い

実際に、「リモート開発」などで web を検索すると、いろいろな意見・試行錯誤が出てきます。一つ一つ取り上げはしませんが、示唆に富む良い記事も沢山あります。ただ、(弊社も含め)ある程度の期間リモート開発をやってきている会社であれば、大半の内容は経験済みかと思いますし、結論としてもある程度似通った内容となる事が多いように思えます。

弊社でのリモート開発

弊社でも、創業直後からリモート開発に取り組んでおり、現在では関わるエンジニアも10名近くになり、それなりにノウハウも溜まってきました。前項に記載の通り、他社と同様の結論に至る事も多かったですし、弊社独自と思われるノウハウなども色々見つかりました。

また、弊社の特殊事情として、フルタイムの開発者は少なく、大半がパートタイムというのもあります(他社の正社員が副業として手伝ってくれている、あるいはフリーランス)。フルリモート開発+パートタイム開発者が大半、という環境でのノウハウは、比較的希少価値が高いのではないかと思っています。

通常の開発と同じところ・違うところがある

色々書いてきたものの、リモート開発でのプロジェクト管理では、

  • 通常のプロジェクト管理と同じ手法が使える部分
  • 通常のプロジェクト管理と同じ手法が使えず、独自のノウハウが必要となる部分

の両方があります。そして、割合としては前者の方が多数を占めるため、通常のプロジェクト管理手法を学ぶというのは依然有効だと考えています。

今後の取り組み

次に、弊社の今後の取り組みについて書きます。

リモート開発のプロジェクト管理手法を体系化する

これからもリモート開発を行う会社は増えていくと思いますが、各社がそうした取り組みを別々で行い、バラバラとブログに経験談を書いていくというのは、時間としてももったいないですし、リモート開発の持つポテンシャル・長所が生かせず、結果的にリモート開発やリモートワークが広がらないという事になりかねません。

3年近く前に以下のような記事を書きましたが、弊社ではリモート開発に最適化した開発手法を作り上げようとしています。

リモートに最適化した開発手法 – もばらぶん

この「作り上げる」と言うのはある程度形になってきたと思うので、今年は弊社でのリモート開発のノウハウに加えて他社のノウハウなどを研究して、その上で、

  • ノウハウを体系化・理論化し
  • 他者・他社でも再現できる形にする

という事に取り組もうと考えています。

「プロジェクト管理を簡単にするツール」の開発

弊社では、GitHub, Slack, Google Drive などの情報をまとめて検索できる Commet というサービスを開発しています。

リモート開発の場合、通常の開発に比べてさらに沢山のツールを使う傾向があり、必要な情報がどこにあるか分からなくなってしまう事が多いという弊社(特に複数プロジェクトに関わる私)自身の課題を解決するツール、というのが出発点でした。

今年は、それに加えて、「プロジェクト管理を簡単にするツール」の開発を行う予定です。こちらも Commet と同様に、自分たちが使いやすいものというのがまずは第一目標ですが、前項の「体系化した知識」をツールの中に取り入れて、このツールを使う人が開発のプロジェクト管理を簡単に行えるようにする、というのが目標です。

ただ、前述の通り、「リモート開発のプロジェクト管理」では「通常の開発プロジェクト管理」の知識の大半や役に立つため、このツールは「リモート開発のプロジェクト管理」に特化させるのではなく「通常の開発プロジェクト管理」も含めたものにする予定です。

ご興味のある方は、以下のサイトよりユーザー登録をして頂ければ、サービス開始時にご連絡いたします。

プロジェクト管理を簡単にするやつ(仮)

まとめ

リモート開発では、通常の開発とは異なる点も多々あります。また、プロジェクト管理に関しては、通常のプロジェクト管理の手法の大部分は使えるものの、リモート開発に特化した手法なども必要となってきます。

通常のプロジェクト管理は歴史もあり、体系化された知識もありますが、リモート開発に関してはそのようなものは(少なくともメジャーなものは)存在しません。

上記のような状況を受け、弊社では今年は以下の2つに取り組んでいきます。

  • リモート開発でのプロジェクト管理の知識の体系化
  • (リモート開発も含めた)開発のプロジェクト管理を簡単に行うツールの開発

ご興味のある方、ご質問等は、以下のページよりお願いいたします。