目次
■エンジニアの軌跡
2018.10.17 2023.12.14 約4分
Forkwell Pressでは、「成長し続けるエンジニアを支援する」というスローガンの元、エンジニアが運営しているコミュニティをご紹介する企画を実施しています!今回は、国内でReact Nativeが広まることを目指して活動しているコミュニティ「React Native Japan」の運営者である、中田一成さんと松本雄太さんにコミュニティ運営の原点や想い、今後の展望などを伺いました。
――React Native Japanさんは、どういう経緯で設立されたんですか?
中田 コミュニティは、2016年4月に立ち上げました。当時はReact Nativeを使っている企業さんが少なかったので「コミュニティを作って、React Nativeを広めよう」と。最初は2〜3カ月ごとにイベントを開催し、そのうち手が回らなくなって来たので松本さんにも関わってもらいました。
松本 しばらくはもう1人を加えた3人でやり続けて、最近になって運営メンバーを6人に増やしました。僕自身もReact Nativeは早くから触っていて、React Native Japanの第1回meetupには参加者として出席していました。
中田 最初の方は人が全然来なくて発表枠も内輪で固めて回していました。最近ではすぐ埋まるようになりましたね。
――今や、コミュニティの人数も2,000人を超えています。
中田 来なかった人もカウントされているので、実数はわからないですけど。
松本 ただ、参加者が変わってきた感じはします。最近は、今まで来たことがない人もたくさん来てくれますね。
――広め方は口コミがメインですか?
中田 connpassとSNSですね。React Native meetupを始める以前に、React.js meetupというコミュニティがありました。そちらは200〜300人はすぐ埋まるぐらい盛況だったので、4回目から「合同でやりましょう」と打診して、そこから200人ぐらい来るようになりました。
――React Nativeは現在、かなりホットなフレームワークとして認識されているのでしょうか?
中田 それなりにホットなんじゃないですかね。2016年の時よりは、確実に盛り上がってきていると思います。
松本 僕が所属しているエアークローゼット社では、新規事業をやるときはReact Nativeを使ってアプリをリリースしていまして、弊社の今までSwiftで作られていたiOSアプリもReact Nativeに置き換わりつつあります。色々な会社が使い始めたのも、人気が出てきた背景にあると思いますね。
中田 手前味噌ですけど、このコミュニティをやったことも少しは要因になっているかなと思います。もしコミュニティがなかったら、世間的にノウハウはまだなかったので、ここまで盛り上がってはいなかったかなと思います。
――React Nativeは、どのあたりが優れた言語なんですか?
中田 JavaScriptでiOS・Androidの両方を構築できるのがメリットです。少ないリソースで両方のアプリが作れるところが強みだと思います。
松本 あとはWeb側といろんなパーツを共有したりとか、突き詰めていくと画面上のUIもある程度共通化されている方もいます。
中田 Web側とエンジニアの人材の話もそうですし、ソースコードの話も含めて共有しやすいのがメリットですね。
――コミュニティの活動内容を教えてください。
中田 基本は、3カ月ごとに行なっているmeetupです。あとは不定期に初心者向けのハンズオンをやったり、React Nativeの同人誌を出したり、ストリーミング配信をしたりですね。
松本 同人誌は今でもネットで買えます。React Nativeを使っている企業さんにインタビューさせていただいて、どこがよかったか、どんなライブラリを使っているのか、を聞いて書いたものになります。
中田 また、登壇内容を聞いていると「使ってみた」「試してみた」レベルの話が多くて、仕事で使っている中でのノウハウはあまり共有されていないと思ったので、同人誌はノウハウ面を意識して作りました。インタビューさせていただいたのはソニックガーデンさん、Togetterさん、キュア・アップさん、freeeさん、それから松本さんが今いるエアークローゼットさんですね。
同人誌は「React Nativeを導入したいけど、どうすれば良いかわからない」という方が購入されていると思います。当時のTwitterでも、「実際の使われ方がわかるのでいい」という反響があった記憶があります。
松本 入門書は多いですし、書きやすい内容ではありますが、実際のプロダクトで使われているケースに踏み込んだ本はあまりなかったと思いますね。その意味で価値があったのだと思います。
中田 新しめの技術なので、導入しているところもまだ少なかったですからね。同人誌については一定の評価をいただいたので、出してよかったと思っています。
――ある種の社会貢献ですね。
松本 中田は、同じことを毎回やるのが嫌いなタイプなんですよ。先見性を持って、世の中のニーズがどこにあるか考えて戦略を立てるタイプだと思います。
中田 React Nativeのmeetupを始めたのも、その一環ですね。ここ2・3年でReact Nativeは確実に盛り上がっていくという確信があったので。コミュニティをやって、本を出版した結果、この界隈でいろいろな繋がりが増えました。このあたりは、戦略的にやっていた部分もありますね。
――React Nativeに触れられたのは、何がきっかけですか?
中田 2015年の秋ぐらいに、Reactが盛り上がり始めていたんです。ただ、仕事にするにはちょっともう遅いかなと思って。そこで第一人者になるために、React以外で何かあるかなと思ったら「React Nativeがまだ来てなかったな」と気づいてそこから始めました。
ーー何らかの技術で、第一人者になりたいという思いがあったんですか?
中田 そうですね、第一人者になりたいというよりは「自分はReact Nativeを使っていて誰よりも詳しい、という存在になりたいな」と思ったんです。
松本 自分は、2016年1月ぐらいにアプリを作る仕事が来たのがきっかけです。調べていくうちにReact Nativeを発見して、試したらめちゃくちゃ面白くて一気にハマった感じですね。
React Nativeを触りたいという人は、Webをやっている人が多いですね。React Nativeを使ってアプリを作るとき、Webの知識から応用できることが多いので。あとはReactができればある程度React Nativeも使えるので、そこから学習していくケースも多いと思います。
中田 最近はアプリの制作から、React Nativeにハマっていくという逆のケースも見るようになりましたね。
――今後、どういうことを実現していきたいですか?
中田 すでに始めたことが二つあります。一つは企業さまの中でReact Nativeを採用していただくための取り組みです。React Nativeはまだ新しい技術で、対応されている企業さんもまだ絶対数は少ないです。一方、エンジニアもプライベートで触ったレベルの人はいても、仕事で扱ってる人が少ない現状があります。
ですので、企業さまに「うちのコミュニティに依頼いただければ、React Nativeを使うエンジニアの採用をお手伝いできますよ」と示せば、プロジェクトにReact Nativeを導入しやすくなると思います。エンジニアとしても、React Nativeが使えることで企業さまとのご縁ができます。結果として、コミュニティが活性化していけばいいと思っています。
もう一つは、オンラインサロンです。ノウハウの発信は増えているんですが、割と表面的な話が多いなと感じていて。前提条件としての背景の話が省かれてるケースも多いので、「深い話をできる環境を作ろう」と思って立ち上げました。
オンラインサロンではReact Nativeだけじゃなく、界隈で有名なエンジニアさんも呼んでいます。領域も立場もいろいろで、CTOもいれば一般のエンジニアもいます。さまざまな立場の人同士が話し合って、良いものは何かを考えていくのがコンセプトです。
松本 発表自体に関してはその場に集まる必要は、特にないんですよね。東京開催だと地方の人はなかなか来られないですが、動画配信にすればどの地域に住んでいても参加できます。より多くの方がノウハウを得ることができて、React Nativeの浸透につながると思っています。
中田 発表を見て思ったことを蓄積した上で、アウトプットの場を懇親会にできればいいですね。懇親会は1日ずらすとか。1日あれば、気になったことを調べられますから。
――現代のエンジニア界に対して、思うことや課題感があれば教えてください。
松本 「エンジニア、技術使いたすぎ問題」ですね。例えば「スプレッドシートでなんとかなるんじゃ?」みたいなケースでも、面倒な技術を使って解決しようとするケースがそれにあたります。
中田 オーバーエンジニアリングが多いな、と思いますね。スタートアップ界隈だとアプリを先に作って、全部それで回る形にしてからスタートする流れになっている気がしますね。でもそれだと単純にサービスができるまでリリースできないですし、中途半端に作り込むことで捨てにくいし、機能追加や今後の開発もしにくい。小さく作ってすぐ捨てられる形にして、どんどん新しいものを出して行った方が良いんじゃないかなと思っています。
例えば海外のZapposという靴のECでは、初期段階ではWebに靴の写真を掲載して、注文があると自分たちで靴屋に買いに行く、ということをやっていたんです。
人力でやれるところはやり、フローが発展してきたところでシステム化するほうが効率的なケースもあると思います。
――ビジネスサイドにも問題がありそうですね。
中田 ビジネスサイドとしても、「いついつまでに出さなきゃいけない、全部システムを作れ」みたいな話をしている気がしますね。手作業でやれば1カ月どころか1週間で終わるんじゃないの、みたいなケースは多々あると思います。
松本 ちゃんと関数化し、1個1個小さいモジュールとして動いていれば良かったものが、結合しだすと捨てられなくなる。そこを破壊すると、他のところも破壊されるので機能追加して、またどんどん悪くなってゾンビ化していく、なんてこともありますね。
中田 あとはスタートアップをやる上で、フルコミットで入ってくるエンジニアってあまり想定できないんです。副業的に携わってもらうことが多いので。そうすると、いろいろな機能が重なり合ったものに携わってもらうのは結構大変なんです。「この機能はあなたにお願いします」と切り分けしやすいのは、大事だと思います。
松本 作りすぎのオーバーエンジニアリングもありますけど、新しい技術を使いたいだけのパターンもありますね。一時期多かったのが、ブロックチェーンというワードが流行ってたときに「これはブロックチェーンでいきましょう」というケース。やりたいことを実現するのではなく、技術を使うことが目的になってしまっているケースがあるかなと。
松本 今後はオンラインサロンや採用代行を通じて、エンジニアと企業さんをつなげていきたいです。これも業界をより良い方向に導きたい気持ちがあってのことです。ご一緒できる企業さんがいれば、ぜひお声がけいただきたいです。
中田 うち以外のコミュニティでもそうなんですけど、「無償であるべき」という風潮は結構あると思います。でも、無償となると持続性がないと思うんですよね。適切な報酬があり、それを元手にコミュニティが活動して広まっていく流れができればいいなと。
松本 無償にすると継続性もなくなるし、ダレちゃうんですよね。「あ、今月は忙しいからいいかな」となってしまう。
中田 僕らのコミュニティは、企業さんからスポンサー費をいただいています。これは適切な価値に対して適切な報酬をいただく、という考えがあるからです。そのため、しっかりとした価値をご提供できるようにコミュニティやイベントは常にブラッシュアップしていかないとと思っています。毎回スポンサー費を出していただいたり、同人誌も売ったり、さらに参加費もあるので、懇親会費の出費はあるものの、毎回ある程度の売上がある感じです。これを何に使うかは検討しています。
松本 今は、売上を分配せずプールしています。
中田 元々は「海外のエンジニアを呼んだり、大きめのカンファレンスを開くためにとっておこう」という感じだったんですけど、ある程度余裕がでてきたので、よりコミュニティに還元していければと思っています。
松本 今はもちろん報酬なしではあるんですが、ゆくゆくは運営側も多少は報酬をもらってもいいかな、と思ってます。コミュニティの活性化のために運営側としてやらなければならないことは割と多かったりするので、継続的にやっていくなら、フィーが発生しないとやっていけない部分もあると感じてます。
中田 スポンサー費も当初は安かったのですが、イベントへの参加人数が増えていく中で、適切な金額に変更しました。
また採用のお手伝いをすることで、コミュニティへの貢献が採用にどれぐらい直結しているかを可視化できます。例えばうちのコミュニティでこれだけ登壇すると採用がこれだけ増えたかといったPRはできます。
――最後に、コミュニティへの参加を検討されている方にメッセージをお願いします。
松本 React Native Japanは、React Nativeを触ったことのある人が一堂に集結するアツいイベントです。興味があればぜひ来てください。また、採用代用に関して興味ある方や興味ある企業さまもご連絡お待ちしています。
中田 運営側のメンバーも募集していますので、興味ある方はぜひ。また、協力していただける企業さんもお待ちしています。
<了>
ライター:澤山大輔