こんにちは、People Forward本部で採用担当をしている村田です。
今年もiOSDCの季節がやってきました! マネーフォワードは「iOSDC Japan 2021」にSILVER SPONSORとして協賛しています。
突然ですが、マネーフォワードが2021年の3月から、iOS領域ではgiginetさんこと三木康暉さん、Android領域ではあんざいゆきさんのお2人を技術顧問としてお迎えしたことはご存知でしょうか?
iOSDC開催にちなみ、今回は、giginetさんにマネーフォワードの技術顧問就任にまつわるお話や、精力的なコミュニティ活動やOSS活動を支えるモチベーションの源泉についてインタビューしました。
語り手 三木康暉さん(以下、giginetまたはぎぎにゃん) @giginet 写真右上 クックパッド株式会社 モバイル基盤部 iOSテックリード。fastlane, Carthage, XcodeGenなどの著名なOSSのコアコミッター。北海道大学院 情報科学研究科を卒業後、クックパッド株式会社に新卒入社し現職。クックパッドのモバイルアプリの開発基盤改善や、リアーキテクチャを進めている。テックカンファレンスや勉強会、ブログ等での良質な情報発進や「cocos2d-xではじめるスマートフォンゲーム開発」などの執筆活動も行っている。
聞き手 須田雅之さん(以下、須田) @daasuu 写真下 マネーフォワードビジネスカンパニー 個人事業主本部 プロダクト開発部 TaxReturnグループ 兼 CTO室 スマートデバイス推進グループ リーダー。 元々Androidエンジニアだが、iOSもサーバーサイドもなんでもやるマン。
杉本至さん(以下、杉本) @itaru_sugimoto 写真左上 マネーフォワードビジネスカンパニー クラウド経費本部 プロダクト開発部 モバイルアプリグループ リーダー。 福岡在住のiOSエンジニア。ぎぎにゃん愛が深い。
技術顧問オファーをした経緯・受けた経緯
ーー今年スマートデバイス推進室の立ち上げとともにgiginetさんを技術顧問としてお招きしましたが、マネーフォワードとしては、もともと技術顧問としてどういうことをお願いしたいと考えていましたか?
須田:まずは、Slackにいていただいて自由にコミュニケーションをとれる、ということだけでもとても価値があることだと思っていました。 あとは、マネーフォワードはこれまでフロントエンドなど他の技術領域でも技術顧問の方をお招きし、2ヶ月に1回くらいのペースで勉強会を開催いただいているのが好評だという話をCTOの中出から教えてもらったので、モバイルアプリの領域でもぜひ社内勉強会をお願いしよう、ということになりました。
ーーオファーをふまえ、giginetさんはどういった検討を経て、マネーフォワードの技術顧問になることを決めていただけたのでしょうか?
giginet:オファーをいただいた時、気持ちとしては、実はわりと即決で。願ってもないオファーだったので受けたいというのは思いましたね。 元々マネーフォワードMEのヘビーユーザーだったんです。ずっとプレミアム会員で...もう6,7年くらいですかね。よく使っていつも見ている感じだったので、非常に興味があって。 あとは、マネフォのiOSエンジニアの方で、iOSDCやその他の勉強会に参加している方も多く、もともと個人でも交流があって、開発体制とかも結構お聞きしていました。
ーーそうだったんですね!
giginet:僕の場合は本業もありますし、もう一社別の会社で技術顧問をやらせていただいているので、あんまり掛け持ちしすぎてもご迷惑がかかってしまうんじゃないかなという気持ちはありました。 そのあたりは悩みましたが、折角のオファーなので、多少無理してでも受けたいなと思い、お受けすることにしました。
須田:めっちゃ嬉しいですね。
giginet:あとは、マネーフォワードはRubyの技術顧問もいらっしゃって、その方のブログ記事も読んでいたんですよね。Rubyコアの貢献についてとか。 マネーフォワードさんが、技術顧問とか、そういったOSSとかに対して力を入れているというのを事前知識と知っていたので、良い会社だなと思っていたというのもあります。
ーープロダクトやメンバーだけでなく、会社のエンジニア組織や、技術に対する姿勢も良い印象を持っていただけていたということなんですね。
これまでマネフォでやってきたこと ーー現在は、Slackに入っていただいているのと、勉強会の開催を定期的に開催していただいているということですが、みなさん印象に残っているテーマはありますか?
須田:初回にやっていただいたモジュール分割の話とかは、ぎぎにゃんさんならではでしたね。あれを聞いてうちでもやりたいな~~~でも人足りないな~~~!採用頑張るぞ!みたいな気持ちです。
ーー勉強会のテーマ決めや企画はgiginetさんに一任というかたちか、マネフォメンバーも含めてみんなで考えるかたちですか?
giginet:僕から話せそうな内容はブレストしながら出して、そこからSlackチャンネルで投票してもらって、その結果をふまえて選ぶことが多いですね。
(勉強会テーマの投票を募る様子)
ーー技術顧問として関わっているもう一社さんでも勉強会を開催されているんでしょうか?回数が多いと大変そうです。
giginet:もう一社さんは小規模なスタートアップなので、技術共有をするような開発組織の規模や体制ではないんですよね。それよりは、実際にレビューに入ったり、設計の壁当てをするみたいな関わり方が多いです。
ーーそちらでは実作業寄りな業務に関わっておられるということなんですね。 ちなみに、マネーフォワードの技術顧問としてジョインいただいて、良かった点や新たな刺激・発見があった機会などはありましたか?
giginet:そうですね。まず一つ目は、技術顧問就任についてのプレスリリースなど、マネーフォワードさんの技術顧問になることを広く発信していただいたことで、僕の方にも良い反響がありまして、自分のキャリアアップに繋がっているなと感じます。 あとは、勉強会をやる以上はいい加減な内容にはできないというのがあるので、自分で深く勉強する機会が増えました。自分だけで最新の状況をキャッチアップし続けるのは大変なことですが、こうした機会を定期的に持てることが、良い刺激になっているなと思います。
前回の勉強会ではWWDCをテーマに話をしたのですが、その際にエンジニアの方々とも結構交流させてもらって、「このセッションが面白かった」みたいな情報をたくさん聞けたりして、そういう情報交換ができるのも楽しいですね。
須田:その回は、勉強会の後にそのままリモート飲み会を実施したんですけど、そこで株とか投資とか、お金についての話も盛り上がりましたよね。マネフォならではの話題で。
giginet:そうですね。開発以外の、人生相談っぽい話もしました(笑)。そういう情報交換もできたのは嬉しかったです。
ーーそういう場に入っていただけるのはマネフォとしても嬉しいですね。
giginet:リモート飲み会をお願いしたのは、実は理由があって。単にお酒を飲みたい...ということではなくて(笑)、もともと、質疑応答をお願いしたいというお話をいただいていたんですが、自分としては質問の敷居をとにかく下げたいという目的がありました。
顔も分からない人が、Slackでなんでも聞いてください!って言っても、なかなか皆さん質問しづらいと思うんです。だから、そうした雑談の場を設けて自分の人柄を分かってもらったうえで、雑に質問を投げてもらえるといいな、という意図がありました。
ーーすごくいいですね。その場を設けてみて、実際に双方向のコミュニケーションが取りやすくなったなどの効果はありましたか?
giginet:はい、かなりコミュニケーションがとりやすくなりました。質問してくれた方について「あ、あの時こういう話をしていた方だな」とこちらもわかるようになって。やってよかったです。
ーーただ知見やナレッジを共有するだけじゃなく、社内メンバーにどういう人がいてどういう関心を持っているんだろう、という粒度まで理解を深めて入っていただけるなんて、マネフォとしては本当にありがたいです。
コミュニティ活動を続ける秘訣とモチベーション
ーーここからは、giginetさんの普段の活動についてお聞きしたいと思います。 杉本さんは、元々giginetさんをご存知だったということですが、どういうきっかけがあったんですか?
杉本:僕がぎぎにゃんさんを初めて知ったのは、iOSDCで登壇されている時でした。テクニカルな内容のレベルの高さは勿論ですが、ドッカンドッカン笑いが起こるようなLTもされていて、話も面白いし、なんて凄い人なんだ...と思いました。 クックパッドさんのスポンサーブースにもちゃんと出て色んな人の呼び込みもされていて、なんでもできるエンジニアだなぁ、凄いなぁ、というのが最初の印象です。
今も、よくイベントで登壇しているイメージなのですが、勉強会を開催するとか登壇するとか、そういうことをやりはじめたきっかけや、モチベーションについてお聞きしてみたいです。
giginet:勉強会は、学生時代から定期的に登壇していました。当時は今みたいにIT勉強会は活発じゃなかったんですが、その頃から話をしてきていたので、今もその延長でカンファレンスに出るようになったという感じです。 凄い!って言われたいというモチベーションとか...元々目立ちたがり屋なところがあるんじゃないですかね(笑)。 何かきっかけがあって発表を始めたというよりは、定期的に昔から発表する習慣があって、それをたまたま色んな方に見て頂いて認知されたという感じだと思います。
杉本:ちなみに学生のときは、東京ではなく北海道で活動していたんですか?
giginet:そうですね、札幌で、結構色んなジャンルの勉強会に出ていました。DevSapとか、僕は学生時代ゲーム開発をしていたのでゲーム系の勉強会や、昔あったRuby札幌とかも出ていましたね。
杉本:最近だと、丁度もうすぐ開催されるiOSDCもそうですが、CfPが採択されて登壇して、今だと録画して...っていう一連の流れって結構パワーを使うじゃないですか。そういうモチベーションの維持はどう考えてますか?
giginet:いやぁ、難しいですね。正直最近は、界隈とつながりを作り続けないとトーンダウンしちゃってるなという危機感があって。1年に1回くらいは顔を出したいなというのがあります。 あと、自分が勉強会に出て色んな人と繋がりをもててよかったなという経験があるので、会社に入ってきた新卒メンバーには、どんどん登壇とかコミュニティ活動していった方がいいよという話をしています。 そういう話をする以上は、自分もCfPを出さなければという感じで、それに合わせて出して...を繰り返しています。半強制的にじゃないけれど、義務感をもってやっている部分もありますね。
しかし、おっしゃるとおり大変ですよね。採択されるたびに、資料作るの大変だな...って後悔してます(笑)。 ただ、発表したら反響がありますし、わかりやすいと言ってもらって良かったなと思ったりして、それを糧に頑張るという感じです。
杉本:あと、もう一つ深掘りしたいところがありまして。 登壇も含めてですが、勉強会運営も結構やっているじゃないですか、わいわいswiftcとか。あれを始めたきっかけや、あのメンバーが集まったきっかけをお聞きしたいです。
giginet:わいわいswiftcは、僕は第一回からいたんですが立ち上げたわけではなく、最初立ち上げたのはkitasukeさんという、元々メルカリでオープンソースSwiftをやっていた方です。 try!swiftの懇親会で、当時Swiftのコミット権を持っている方が日本に2人いらっしゃったんですけど、その人が一堂に会していて。めちゃめちゃ盛り上がったんですよ。 その時に、ちょっと興味があるメンバーで定期的に勉強会してみないかっていう感じで始まったのが定期的に続いて、もう4年くらい経つんですかね。30回くらいやっててかなり盛り上がっています。
杉本:iOS界隈でみると、かなり長く続いている勉強会ですよね。毎月やっているのに毎回凄く楽しいネタが出てくるのが凄いなぁって思います。
giginet:勉強会を月イチでやると、登壇するからちょっと読むか―って、オープンソースSwiftを読んだりして、そこからSwiftコミッターになった方もいますし、やはり発表の機会があると調べるモチベになるし、話を聞いた側もモチベになって調べる、みたいな良いループが回っていて、いい勉強会だなと感じます。
OSS活動のきっかけは色んなところにある
杉本:ぎぎにゃんさんはOSSも色々コミットしていますが、コミットするきっかけやモチベーションなどもあったら教えて欲しいです。
giginet:OSS活動を、自分で公開する場合と既存のOSSに貢献する場合とに分けたとすると、自分で公開する方は、自分の作ったものにGitHubでたくさんスターがつくとか、このプロダクトで採用してますみたいなことを言われたいな、という気持ちが原動力になっている部分はあります。 ただ、作ってみても、なかなかユースケースにマッチしないとかで、実際に使ってもらうのって難しいんですよね。だから、使ってもらえるように何個か作ったり、ちゃんと発表して使ってもらうようにして、というのはやるようにしています。
杉本:なるほど。
giginet:既存OSSへのコミットの方は、最初は自分が使っていく中で機能が足りなくて困ったとか、壊れてて困ったみたいなのを、直したり追加したりするっていうのがスタートです。それをやっていると、結構OSSの制作者やコミッターの方が喜んでくれて、こんなに貢献してくれるならコミッターやらない?と誘ってくれるんです。 だから、コミッターになるためにやるというよりは、直したいから直してたらコミッターになっていたという方が近いですね。
ひとつコミッターになると、例えばGitHubでfastlaneのコミッターですみたいな表示がされて、GitHub内での評価が上がる気がしていて。他のリポジトリにPull Requestを送ったら、「こんなにいっぱいコミッターしているならぜひ!」みたいな感じで、何も言わずにコミット権が送られてくる、みたいな。相乗的に色々コミッターをやらせてもらえるきっかけになったりしていますね。
ーー好循環が生まれるんですね。
杉本:ちなみに、自分の作ったプログラムをOSSに公開するときって、どういうタイミングで出しているんですか?自分でアプリを作るときとかなんでしょうか。
giginet:僕の場合は、業務絡みが多いですね。業務上で困った課題があって、それを解決するために業務用のコードとして書いて、それをOSSとして切り出すという感じです。 例えば、今結構メンテしているのが、URL Schemeをちゃんとするライブラリで、Crossroadというのを出しています。
元々はクックパッドの中でレシピの画面を出すとか検索の画面を出すとか、画面遷移に困った課題があって。それをクックパッドのアプリの中で作ってみたら結構うまく動いて便利と言われたので、切り出してOSS化するかってやってみたら、結果的に外部でも使ってもらえるようになったとか、そういうのが多いですね。 実践を伴わないライブラリだけ作っても、使い勝手が良いものを作るのは難しいので、実験できる環境として今の仕事があって、それが相乗的にお互いに影響を及ぼしているなというのはありますね。
杉本:業務の中のツールとかライブラリとかから切り出していたりもするんですね、凄い。それは考えてなかったな、それもありですね。
ーーマネフォも、業務で開発したソフトウェアをOSSとして公開する場合、開発者個人を著作権者とするポリシーなどがあって、従業員のOSS活動をサポートしますよというスタンスの会社ですね。
giginet:業務上でコードは書くんですけど、それがオープンソースなのかクローズドソースなのかの違いだと思っていて、OSSやるぞ!ってOSSをやっているわけではなく、作ったもののうちOSSにできるものは折角だからOSSにしとこうか、という感じなんですよね、ニュアンスとしては。
杉本:社内に公開するっていうのはよくあるんですけど、オープンソースにするっていうまでが結構敷居が高くて躊躇してしまうんですよね..。
giginet:敷居の高さって言うのはどのあたりにあるんでしょう。
杉本:色々考えることが多くなるというか、例えば社内であれば多少粗があっても許容されるけれど、外に出すってなると、会社の名前のついたソースコードを出すことになるよな、っていう感覚です。しっかり書き込まなきゃ...こんなに雑なコードじゃダメか...とか。
giginet:なるほど~。色々とOSS活動をしていると、意外と、外に出てるからって必ずしもしっかりしているっていうわけでもないなという印象を持っています。 社内の社員向けのセットアップガイドの方がよっぽどしっかりしているな、みたいな(笑)。そこまで敷居を感じることもないのかなという気はします。 折角作ったんだから、少ない手間で出せるのであれば出しておくと一発当たるかもしれないですからね。一つの仕事で色んな効果が出るようにレバレッジを利かす、というのは意識してやっています。
杉本:なるほどなるほど。そういう意識を持ってコードを書いてみたいと思います。
giginet:作ってる時に「あ、これはOSSに出来そう」と思ったら、それを前提に作るみたいな感じで考えるのもいいんじゃないですかね。再利用性を意識して作るとか。
ーー例えば「これってOSSとして需要ありそうですか?」みたいな壁打ちに、giginetさんに入ってもらうのもよさそうですね。
giginet:ありですね!本業でも良いPull Requestが社内で送られてきたら、「ここだけ切り出せばOSS化できるんじゃない?」とコメントしたり、ツールのバグを見つけたら「issueに出してContributeすると良いよ」と提案したりは意識しています。Pull Requestの送り方や、パッチの書き方をアドバイスすることもありますね。
杉本:心強いですね。
giginet:そういう風にどんどん使っていただければなと思っています。
技術顧問としてこれからお願いしたいこと・やりたいこと
ーーこれまでも「こんなことをしてもらえるといいのでは」という話題がいくつか出ましたが、あらためて、今後お願いしていきたいことはありますか?
須田:OSSや勉強会の支援とかも、まずはマネフォメンバー側が積極的に「giginetさんお願いします!!」って行けるようにしていきたいですね。
杉本:もっと壁打ちできるような体制も作りつつ、困ったときにもっと気軽にお話できるようにしていけるといいですね。技術顧問ではありますが、人対人、エンジニア対エンジニアという感じでフラットに話せるようにして行けたらいいなと思いました。
giginet:僕も同じ気持ちですね。
ーーgiginetさんから、今後マネーフォワードでやっていきたいことはありますか?
giginet:まず一つ目として、もうちょっと具体的な困りごとについても解決していきたいなと思っています。今やっているのは、割と普通の勉強会で話すような、一般的な知識のインプットみたいな話なんですけど。 アーキテクチャ、リリースフロー、ログ基盤などなど、具体的に今困っている事業課題について、技術的な提案のお手伝いができたら、というのは考えています。
あとは、さっきも出ましたが、やはりOSSとかコミュニティへの参入を皆がしやすくなるような手助けもしていきたいです。 CfPを見てレビューするとか、登壇内容の提案とか。パッチ送りたいんだけどどう送ればいいか分からないとか、このOSSのバグ困ってるけどどう直せばいいかわからない、とか。そういうことのお手伝いをしていきたいと思っています。
ーーまさにgiginetさんのお強みを存分に生かしていただく、というところですね。 ぜひ今後の勉強会なども通じて、どんどんgiginetさんとマネフォメンバーとの距離を縮められるといいなと思いました。
今日はお話ありがとうございました!
iOSDCトークン: #iosforward
マネーフォワードではiOSエンジニア/Androidエンジニアを募集中です! カジュアル面談も大歓迎ですのでぜひお気軽にご連絡ください。 iOS/Androidエンジニアの募集
マネーフォワードでは、エンジニアを募集しています。 ご応募お待ちしています。
【サイトのご案内】 ■マネーフォワード採用サイト ■Wantedly ■京都開発拠点
【プロダクトのご紹介】 ■お金の見える化サービス 『マネーフォワード ME』 iPhone,iPad Android
■ビジネス向けバックオフィス向け業務効率化ソリューション 『マネーフォワード クラウド』
■だれでも貯まって増える お金の体質改善サービス 『マネーフォワード おかねせんせい』