コラム
2021/04/13
【対談インタビュー】これぞ、“モノづくり”の神髄だ!ハッカソン優勝チームに聞いたプロダクト開発のウラ側
在宅勤務でのマネジメントやコミュニケーションの課題を解決するツールを発案する「ハッカソン」の審査会を2020年12月7日に開催。組織・職種混合の7チームが結成され、総勢37名のエンジニアやデザイナー、マネージャーが参加しました。今回は、偶然の出会いを加速させる1on1活性化ツール「KIKKAKE(きっかけ)」を開発し、優勝したチームに座談会形式でインタビューを実施しました。ハッカソン当時の様子を振り返ってもらいました。
【ハッカソン開催レポート】在宅勤務マネジメントの課題を解決せよ!グループ横断でハッカソンを開催
ハッカソンで開発したプロダクトを教えてください
K.W.:
僕らが開発した「KIKKAKE(きっかけ)」というプロダクトは、偶然の出会いを加速させる1on1活性化ツールというコンセプトで、面談希望者同士を自動でマッチングし、1on1コミュニケーションをサポートします。社内でまだ話したことがない人とのつながりをつくるきっかけに特化していることが特徴です。面談頻度と関連テーマを登録しておくだけで、「KIKKAKE」がマッチング処理を行い、適した相手との1on1を自動的に予定登録します。1on1の公開メモ・非公開メモを残すことができ、1on1で話したことを周りに伝えたり、自分だけのメモを見返して振り返りに役立てたりすることもできます。
デザイン・開発面での特徴や工夫を教えてください
J.M.:
ツールを使うこと自体が目的ではないので、UIはあくまで「普通」「特に何も感じない」ことをテーマにしました。画面の左側に1on1の項目(キーワードと頻度)、右側に詳細な記録や今後の予定などの必要な情報を一覧化して、すぐに把握できるような構成に工夫しました。ハッカソンで開発したツールではありますが、今後も開発を継続する想定で簡易的なデザインシステムまでを構築し、流行のダークテーマに対応しました。
K.F.:
実運用を見越して拡張性、保守性を考慮してシステムを設計しました。フロントはNext.js、バックエンドはRails API、インフラはECS Fargate + Github Actionsで構成し、それぞれ並列で開発することで、短い期間で高品質なプロダクトに仕上げることを目指しました。開発期間中は、Github IssueやPull Request、Discordを駆使して非同期にコミュニケーションを取りました。
優勝おめでとうございます!振り返って率直な感想を!
H.K.:
業務以外の場で、純粋に“モノづくり”だけを考えらえる機会で、とても楽しむことができました。優勝するつもりでハッカソンに臨んだので、優勝が実現して嬉しいですね。また、引越し侍やQiitaを開発するエンジニアなど、普段の業務では関わらない人たちとも開発できる貴重な機会だったと思います。
K.K.:
事業におけるプロダクト開発は、市場環境や変化、競合サービス、ユーザーのニーズなど、事業を取り巻くあらゆる要素があります。その中で、売上や利益など事業成長に貢献できるプロダクトでなくてはなりません。“モノづくり”の背景に様々な理由やロジックがないと成り立たない。ですが、このハッカソンで結成されたチームには、「マネジメントやコミュニケーションの課題を解決したい」というシンプルな課題があり、解決するための技術や考え方などのアプローチの観点が同じ。共通認識・言語でコミュニケーションを図れる。プロダクト開発を純粋に楽しむことができたのはよかったですね。
K.W.:
エイチームは自動車・金融・ヘルスケアなど様々なマーケットでサービスを展開しています。そのため僕たちは、その業界や領域に興味や関心がなくてもサービスをつくることがあります。事業を成長させるという点でサービスをつくり、改善していくことはもちろん楽しいです。ただ一方で、サービス開発においては、エンジニアやデザイナー以外にも営業やマーケターなどのビジネスサイドの方とのコミュニケーションが不可欠です。正直、技術やデザインの考え方や概念、“モノづくり”の大変さや難しさをビジネスサイドの方に説明するのはとても大変なんです。今回のハッカソンは、エンジニアとデザイナーの混合チームで、自分たちで企画を考え、自分たちが持つ知識や技術を使っての制作で、スピードは非常に速かったです。
K.F.:
1ヵ月という短期間で、ゼロイチでプロダクト開発を経験できて楽しかったですね。今までは「ハナユメ」や「Qiita」など既存サービスの開発に携わってきたため、新規でゼロから“モノづくり”をする機会があまりなかったので。また、今まで一緒に仕事をしたことがない人たちと関わることができてよかったです。
チーム構成は、ハッカソン運営メンバーが組み合わせたもので、メンバーを見たとき正直おどろきました。それぞれが各事業で圧倒的な成果を出している精鋭たちで「すごいチームに入ってしまった」というのが率直な感想。
自分は役割として何をやれば良いのだろうか。チームの一員として、受け入れられるのだろうか。そんな不安を感じたのは一瞬で、お互いが建設的な意見を出し合い、それぞれの強みや得意領を発揮しながら、プロダクト開発を行うことができたと思います。任せられたし、自分も任せてもらいました。
J.M.:
僕もK.F.さんと同じで「とんでもないチームに紛れ込んでしまった」というのがチーム配属された直後の感想。新卒1年目で実務経験も浅く、せっかくの機会なので挑戦しようと思ってハッカソンに参加したものの、正直最初は気後れし、不安がありました。しかしそれは杞憂に終わり、メンバーのみなさんと一緒に相談しながらも、刺激し合い、楽しく開発に取り組むことができました。
プロジェクトはどのように進行したのでしょうか?
K.W.:
チーム結成後のスタートダッシュが良かったですね。まずはみんなで集まって、ごはん食べながら、今回のテーマである「在宅勤務におけるマネジメント、コミュニケーションの課題解決」についてざっくばらんに話してみました。
H.K.:
会議形式でかしこまってつくりたいものを議論した…というより、解決したい課題、考えられる選択肢、実際に在宅勤務を初体験したメンバーの考えや感想などを意見交換しながら、どんなものをつくっていきたいか楽しく議論しましたね。結構、盛り上がりました。
K.K.:
議論を進めながら、ぼんやりと作りたいものがある程度見えてきた。自分なら、こういう場面でこうした課題があると考える。そこに今回提案したプロダクトがあれば「こう使うよね」って盛り上がってきました。最終的には「ガチで使いたいよね!」ってなって、「じゃあ、どうやってつくろうか」と、具体的なプロダクト制作に必要な議論に発展していったような気がします。
J.M.:
今回のプロダクトを考えるにあたり、自分たちの体験も大きかったかもしれませんね。僕は2020年4月に入社して、ちょうど原則全社員在宅勤務に切り替わったころでした。社会人として初めて働くなか、上司や先輩、同期や同僚とオンラインでのコミュニケーションがメインでした。周りの社員の人たちも在宅勤務が初めてで、今回のテーマに対して共通の課題感を持っていた気がします。お互いが同じ目線だったのも、議論がスムーズに進んだ理由の1つだったかもしれません。
K.F.:
メンバーのチームでの役割の決まり方もスムーズでしたね。つくりたいプロダクトのイメージがある程度見えてきたタイミングで、やるべきタスクを書き出していきました。そして、それぞれに対してメンバーが「自分がやります」的な感じで役割が決まっていきましたね。振り返れば、各メンバーの役割がすぐに決まって、知らないうちにUIができていて、気づいたらサーバがたっていて…(笑)。各自が自身の役割を遂行していった結果、プロダクトマネージャーがいないにも関わらず、自然とプロジェクトが進んでいった。そんな感じでしたよね。
H.K.:
改めて、なぜそれが実現できたかと考えてみると、お互いが「リーダーシップ」と「フォロワーシップ」の両方をうまく使い分けていたからじゃないでしょうか。ある役割の主担当メンバーが「リーダーシップ」を発揮し、責任感もって、他のメンバーを巻き込みながらミッションを遂行していく。自分の担当領域ではない役割であれば、各自「フォロワーシップ」を発揮して、主体的にお互い働きかけていました。宙に浮いた議論やタスクがあれば積極的に取りに行く。この関係性が成り立っていたので、意思決定もスムーズだったし、自分の役割を全うしながら、お互いを支え合うことができたんだと思います。とてもバランスが良いチームだったと思います。
プロダクト開発でうまくいったことは?
K.K.:
日ごろの業務でエンジニア・デザイナーとしてプロダクト開発の経験や知識があるから、共通言語でコミュニケーションがとてもスムーズでしたね。さらに、作りたいものが明確で、開発の前提条件や知識に共通認識を持てていたから、技術やツールなどの選定もやりやすかったです。
こうした開発の進め方は、ハッカソンならではだと感じましたね。普段の事業における開発ではなかなかできない。プライベートでの開発ならではの自由度があって、ときには冒険したりもして、新しい発見がとても多かったです。
K.W.:
J.M.くんはUIやグラフィックが得意領域で、けっこう早い段階でUIが出来上がっていましたね。これからつくるプロダクトをちゃんと想像できたから、メンバーそれぞれが、必要な機能や技術が浮かんでくる。「こう作ると、こんな感じで動くだろうな」と、イメージが湧いていたと思います。
K.F.:
確かに。早いうちにUIがあったから、開発側では「こういうAPI連携できるといいな」「データの扱い方はこうしよう」とかイメージできましたね。プロダクト開発でよくある前の工程に戻ったりとかはなかったですね。たぶん、プロジェクト初期にしっかりとプロダクトの目的、デザインや仕様の合意形成が取れていたからじゃないかな。
K.W.:
僕らが開発した1on1活性化ツール「KIKKAKE」は実に様々なシーンで活用されることを想定しています。なので、上司や部下、先輩や後輩、同僚同士、部署を越えた人同士…など、いろんな1on1がある。また、相談したい側、相談にのりたい側など、様々な方向からもプロダクトの在り方を議論しないといけない。開発段階でこうしたレベルで議論を深めることができたのもよかったです。ふんわりとしていたら、「結局、何を実現したかったんだっけ」となって、開発が進むどころか、後退していたかもしれない。
J.M.:
デザインと機能をとことんシンプルにした点はとても良かったと思います。K.W.さんの受け売りですけど、「あの機能も入れよう、この機能も入れよう」という考えはとことん排除しました。ものづくりの考え方の前提として、またメンバーみなさんの経験上、「念のため」で実装した機能は使わないことが多いということ。複雑化して、結局使いづらいツールになっては使用感や手触りが悪くなってしまう。なので、シンプルにこだわりました。
H.K.:
「KIKKAKE」は1on1したい人同士をマッチングします。開発当初は、マッチングした相手に対して承諾する機能も案として挙がっていました。ですが、ここはあえてシンプルに。在宅勤務によって、オフィスで生まれる偶発的なコミュニケーションが減ってしまったことに課題を感じていたので「偶発的な出会い」にこだわりたかった。喋ったことも、会ったこともないかもしれないけれど、1on1してみると新たな発見や気づきがあるかもしれない。結果的に、この判断はとても良かったと思っています。
ハッカソンを通して得た気づきや学びは?
K.W.:
業務では「ここまで悩み抜けないなぁ」ってくらい悩みながら進められたし、熱量の高いチームで刺激し合いながら開発を進められて楽しかったですね。
1ヵ所の小さいアニメーションを実装するのだけでも、ライブラリを探して、ドキュメント読んで…とかやっていましたが、普段の業務だったらこんなにやれていなかったはず。あと、座学での知識だけだったTypeScriptも1からコンポーネントを作ったりして、学びが多かったです。新しく試したものがイマイチだった…とかもありましたけど、業務だと安全な選択をしがちなので、失敗もよい経験でした。開発期間が短い中、たまにはこうやって燃え尽きそうなくらいのほうが、生きてる心地がします(笑)
J.M.:
制作を進めていくフローや制作に必要なスキルなどはもちろん、通常の業務ではなかなか体験できない大枠の意思決定の現場に参加できたことがとても学びになりました。普段の業務は工数を意識する必要があるのでコストパフォーマンスが高い選択をすることが多いですが、今回のような機会では最善を突き詰めて議論をすることができました。
K.K.:
普段の業務では既存プロダクトや機能を活かして開発することが多く、新規での開発の機会は正直少ない。ですが、今回のハッカソンでは、ゼロベースで、様々な開発に積極的に取り組むことできました。“モノづくり”に対して熱量の高いメンバーが集まり、「これぞ“モノづくり”の神髄!」と心から思えました。寄り道をしながら開発していたからこそ得られた発見があったと思います。
K.F.:
実サービスでは導入することができない未発達のライブラリなどを実際に使ってみることができました。また、開発技術においても、React、Next.js をほぼ初めて使ったので、率直に楽しかったですね。
また、このようなインプットとアウトプットを集中的にやる時間はとても大事だと思いました。ノウハウやスキル、経験としても、めちゃくちゃ勉強になりました。他のチームが開発したプロダクトも面白かったです。自分にはない観点でのアプローチや技術の使い方、デザインなど、学びの機会としては最高でした。
H.K.:
エイチームのエンジニアやデザイナーのレベルが高いことを再認識できたと思います。ハッカソンの成果物はどのチームのプロダクトもレベルが高かったです。短期間でこれだけのクオリティが出せるなら、チーム編成を工夫すれば新規事業の推進や事業拡大のスピードが上がるのではと感じました。そして、その前提として職能関係なく相互理解は重要ですし、目的やゴールなど目指すものが一致していることも重要だと感じました。
今後のさらなる成長に向けて一言
H.K.:
言語化されていない開発ノウハウや思考をチームメンバーから学べる良い機会だったと思います。新しいものを作るというプロセスを踏むこと自体が素晴らしい価値で、経験でした。優れたプロダクトを作るためには、チームが同じゴールに向かって進めるかが重要であることを実体験しました。今回の経験を思い出に終わらせるのではなく、自分が所属する組織に持ち帰り、今一緒に働いている他のメンバーに共有したいと思います。このハッカソンの成功体験を、事業においても再現していけるよう頑張ります。
K.W.:
業務はどうしても似たような作業の繰り返しが多くなりがちで、強い意志で自主学習する人じゃなければ、スキルや知識の成長が鈍化する懸念があると思います。今回のハッカソンのような社内公式イベントでお互いに火をつけ合える機会が生まれると、そうした懸念を打破できそうだと感じました。自分たちで、自らの成長機会をこれからも増やしていきたいですね。
K.K.:
エイチームの事業は、市場環境やユーザーニーズなどをくみ取ってから事業化してプロダクト開発を始めるマーケットインの考え方です。そうすると、僕たちエンジニアは、そのサービスの開発に必要な技術を使っていきます。反対に、そのサービスで必要とされない技術を業務で使う機会がなかなかありません。
そう考えると、実務では使ったことがないけれども、実は様々な高度な技術を持っていることもあり得ます。実際に今回のハッカソンでも、他のチームでは、リアルタイムのボイスチャット機能を実装していました。この短期間で、あれほど高性能のものを作れるのは本当にすごい。高い技術力がないとできないことですし、チャットツールやWeb会議ツールなんかも内製できるんじゃないかなって思えてきます。僕たちは、実はとてつもないポテンシャルを持っているんじゃないかなって思えます(笑)
J.M.:
新規事業案コンテスト「A+」でも、今回のハッカソンのようにプロダクトアウト的な発想で発案する機会があってもよいかとも思いました。実際のプロダクトがあって、目で見て、触れて、体験して、そのサービスの具体的なイメージが湧くこともあるかもしれません。
エンジニアやデザイナーがプロダクト開発をする機会がこれからもどんどん増えるといいなと思います。その経験は必ず、普段の業務にフィードバックできるほど力になるはずです。
K.F.:
最後になりますが、今回のハッカソンを通して感じたことは、僕たちは思っている以上に高い技術力を持っているという確信です。個々の高い技術の専門性に加え、多様なビジネス領域で築き上げた転用性あるシステム開発能力があります。「なんでも作れる…!」そう思えてなりません。
今後の当面の目標は、今回発案した1on1活性化ツール「KIKKAKE」を完成させ、社内に導入すること。そして第2回目のハッカソンにも参加して、今回のように優勝を目指したいと思います!