国内外のメンバーを巻き込んだWijmoの開発体制
メシウスでは、開発者を支援するUIライブラリを提供している。これには、.NETやJavaScriptなど、それぞれのプラットフォームで利用できるコンポーネントを含む。その中でも、「Wijmo(ウィジモ)」は、業務アプリケーション開発に必要なグリッド、チャート、入力コントロールなどを一手に収録したオールインワンなライブラリだ。Wijmoでは主にJavaScriptを使用しており、サポートしているJavaScriptフレームワークのAngularやReact、Vue.js、そしてTypeScriptを使って開発されている。
鶴蒔氏は2019年に入社し、サポートエンジニアを経て、現在はWijmoを中心にメシウスが提供するJavaScript製品のプロダクトエンジニアを務める。主な業務は製品企画や機能の企画、日本市場に向けた製品の最適化、そしてサポートエンジニアとの連携によるお客様への技術サポートなどだ。この技術サポートでは、サポートエンジニアから依頼のあった製品動作の詳細調査などを担当し、必要があれば海外の開発チームとも連携する。
佐々木氏は、2002年に入社し技術サポートを担当。Wijmoの使用方法やお客さまの要望に関する技術的な質問に対して、メールでサポートを行っている。また、Webサイトで公開しているナレッジベースにも関わっている。このナレッジベースは、製品の仕様や制限事項、技術的な情報をまとめたものだ。
鶴蒔氏は「メシウスのプロダクトエンジニアの仕事は、一般的な開発現場におけるプロジェクトマネージャー(PM)に近い」と説明した。顧客の要求を理解し、開発チームと連携する。鶴蒔氏はWijmoを直接開発しているわけではなく、海外のチームに開発を依頼し、そのチームと連携して開発を進めている。日本のプロダクトエンジニアはチームごとに2名在籍しており、それに加えてビジネス的な側面でリードするPMが存在する。海外の開発メンバーは10名ほどで、さらにQA担当が5名といった体制になっている。Wijmoのサポートエンジニアは佐々木氏含め2名。会社全体では10名だ。
困難な対応の先にある達成感と、プロダクト改善におけるジレンマ
サポートエンジニアの業務における困難さについて佐々木氏に聞くと、まず第一に、対応するフレームワークが多数あるため、製品の機能以外にも技術フレームワークなどを理解することが大変だと言う。また、顧客とのやり取りでも難しい面があるとし、佐々木氏は「メールでの質問で、お客さまによっては簡単に文章で送られてくる場合もあれば、実現したい内容をコードや画像付きで詳細に送っていただく場合もあります。その都度お客さまの要件を汲み取り、適切な回答をしなければなりません」と話した。
製品利用者からの問い合わせ内容はさまざまで、単純な使用方法の案内で解決するものもあれば、既存機能では実現できない要件の代替案や、残念ながら不具合と判明してしまった動作の回避方法などについて複数回に渡りやり取りをする場合もある。佐々木氏はそこに"やりがい"があるとし「難しい対応を行った後、お客さまから『問題が解決しました!』とお礼を言われる瞬間に達成感を感じます。嬉しく、楽しさを感じる瞬間ですね」とコメントした。
鶴蒔氏は、サポートエンジニアなどから届く、顧客からのプロダクト改善要求に応える活動をしているが、そこで実装する機能の取捨選択に難しさを感じている。
「あるお客さまの要望通りに機能を改修したものの、その結果他の部分に影響を与え、動作が変わってしまいました。他のお客さまにとっては期待外れとなってしまったのです。Wijmoは多くのユーザーが使用しているため、全てのユーザーにとって有益な機能を採用する際のバランスを取るのが難しいですね」(鶴蒔氏)
改善要求の基となるユーザーの意見はテキストで届くため、それを表面だけで受け取らないようサポートエンジニアなどと議論して課題を明確にし、開発チームに依頼をしている。
この体制について佐々木氏は「何かあればすぐに情報共有できる体制になっているので、社内ではスムーズな連携ができています。動作不良があればすぐに報告し、企画開発部に委託して素早い対応ができます。また、お客さまとのメールのやり取りでいただいた要望や、現在機能としてないものの追加要望があれば、私たちから情報を共有し、それを企画開発部で検討する流れになっています」と説明を加えた。
鶴蒔氏は、改善要求の原因や背景について仮説を立てて開発をすすめているとし、「開発チームに依頼する際『なぜそれが必要なのか』と問われたときに答えられるようにし、お客さまとの認識の齟齬がないようにしています。海外の開発チームに対しては、"誰が読んでも同じ結果が得られるような"伝達を意識しています」と語った。
なお、海外の開発チームは日本と活動時間が異なるため非同期に活動する。英文テキストで要件を明確に伝えるよう配慮しているというのだ。ちなみにメシウスでは、英語が流ちょうな人以外も翻訳ツールなどを用いて積極的に海外チームとのコミュニケーションを図っている。