2019年10月11日、新潟にてMOBILE CREW NIIGATAという技術カンファレンスに参加してきました!
モバイルアプリにフォーカスしており、かつ地方開催という珍しいフォーマットで、更に登壇者も豪華な方々だったため、個人的にはかなり早い内(=イベント開催決定告知の翌日)から参加を決め当日を楽しみに待っていました。
行きたいンゴ☺️☺️☺️ https://t.co/hCid8o10rn
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) August 20, 2019
この記事では、このイベントの全8セッションの感想や懇親会の様子等を当日のツイートを交えつつまとめて行きたいと思います!
朝7時発の北陸新幹線に乗車し、約2時間。会場の「JR東日本ホテルメッツ 新潟」に到着しました。駅舎直結の会場で、アクセスは大変良かったです。
上陸した! #mcniigata pic.twitter.com/1P8RTzOBCF
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
✌ #mcniigata pic.twitter.com/XbFoxQWKD3
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
早く着きすぎてしまったせいもあり、まだ誰も座っていない席の最前列左端でひたすらTwitterとDroidKaigiのCfP作成をしていたのですが、開始時刻が迫るにつれてどんどん座席が埋まっていき、しまいには部屋いっぱいに…!
人めっちゃ集まってる👀 #mcniigata
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
新潟でエンジニア向けのアプリのイベント開いたら、人が山ほど来て感動してる #MCniigata pic.twitter.com/jwFACYp9Dh
— クマ・ボスティーノ (@ph_i_hq) October 11, 2019
熱量高くてびっくりしました。ホントに。
最初のセッションは、FULLER株式会社新潟支社で働く氏川さんの話。
長岡花火公式アプリ・NHKキッズ・Snow Peak公式アプリに代表される、FULLER社さんの共創事業における技術選定と、その開発現場で感じたことがメインでした。
年に数日しか使われない長岡花火公式アプリで、「開発リソースやお金を割けない制約の中、やりたいことを実現する」ためにCloud Firestoreを採用した話は、僕だけではなく会場の多くのエンジニアの共感を得ていたように思います。
NHKキッズの方でも、「保守性を維持しつつ、複雑な画面遷移やアニメーションの実装を進める」ためにSingle Activityによる実装を選定したとのこと。正に、モダンな技術を随時キャッチアップしつつ、これを「新しいから」ではなく「要求される仕様や取り巻く環境に最も適合するから」という理由で採用している様子が、エンジニアとしてあるべき姿そのものだと感じました。
イベントアプリ怖いよねわかる(技術書典アプリもドキドキする) #mcniigata
— なかざん (@Nkzn) October 11, 2019
2人目はウォーターセル株式会社のAndroidエンジニア、渡邉さんの話。
5年以上稼働しているAndroidアプリの新規機能実装時に、LiveDataとDatabindingを導入してみたという内容。ガッツリAndroidの話で、必要最低限のコードを見せながらLifecycleも考慮に入れた安全なコードをシンプルに書けることが分かりやすく伝わってきました。BindingAdapterが肥大化してつらくなる辺りも、実際に落とし穴踏み抜いたリアリティが感じれて良かったです。
これからは既存機能をLiveDataやDatabindingに置き換えにチャレンジして欲しい…!ここ、僕が現在進行系で苦しんでいるので、互いに知見交換をしたい…!
午前中最後はDroidKaigiのオーガナイザー・日高さんのターン!モバイルアプリにアーキテクチャを導入するモチベーションがどこにあるかを紐解き、アーキテクチャの導入に尻込みしてしまう人の背中を押す、そんな発表でした。
「プロダクトに対して開発者ができる貢献は、持てる技術による開発速度の向上である」「開発速度の向上には、生産性の向上が鍵となる」「生産性に及ぼす影響は、ソフトウェア技術以外の要素の方が多い」というイントロからはじまり、終始頷きポイントだらけでした。日高さんの発表を聞いて毎回思うのが「抽象的概念に対する言語化スキルの高さ」で、今回も普段自分達が業務中に抱く課題感と、それに対する解決のヒントが言葉として多くの人の脳内に残ったのではないでしょうか。
生産性の向上でもって価値創出のスピードを早める #mcniigata
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
生産性が鍵、アーキテクチャは原動力#mcniigata
— ABEChan@iOS/Android Developer (@yutaabe200) October 11, 2019
「生産性の最大化や価値創出の意思を持った上で、その思想を言語でもってソフトウェアに反映させる」って話、めっちゃ腹落ちする #mcniigata
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
「捨てやすさ」も技術選定のポイント #mcniigata
— Sota Hatakeyama (@chooblarin) October 11, 2019
業務で壁にぶつかった時、記憶や印象に残る言葉が解決の糸口になったり困難に立ち向かう勇気をくれたりした経験は僕自身多々あるので、僕もそんな話が前でできる人間になりたいと強く感じました。とりあえずDroidKaigi 2020のCfP、通って欲しい🙏
お昼は、Twitterで流れてきた地元の方オススメのラーメン屋で腹ごしらえ。あっさり醤油スープと縮れ細麺がサクサク胃袋に入ってめちゃ美味かったです👍
🍜 #mcniigata pic.twitter.com/wR04XabDT6
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
無心で食べていたら、Kotlin愛好会で何度かお世話になった七島さん(@jollyjoester)とまさかのエンカウント☺️
まさかの〜☺️
— Hideyuki Nanashima (@jollyjoester) October 11, 2019
それから、株式会社クーネルワーク提供の雪室珈琲とヤスダヨーグルト、セッションの合間にいただきましたが最高に美味しかったです!
美味い!!!!!! #mcniigata pic.twitter.com/Xyuj0Jj9of
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
地方IT企業の戦略を広げる 技術選択としてのReact Native
午後の1人目、ウォーターセル株式会社の中川さん。BtoB(toB)の事業、かつ人材流動性の低い地方でIT企業として生き残るためReact Nativeを選定した道筋と、React Nativeメインの開発組織で生み出す価値を最大化するためのポイントを聞くことができました。
決してキラキラではない、前例もリソースもないなかで泥臭く目の前の課題と向き合い今日まで価値を生み出し続けたことがヒシヒシと伝わり、ものすごくためになるセッションでした。技術選定の上で、「新しいから」「流行りだから」ではなく、「自分達が抱える課題の解決に最も適しているか否か」という視点で中川さん以上に突き詰めた人は、東京にもそういないのではと感じました。中川さんの下で働くことができるエンジニアのみなさんがめちゃくちゃ羨ましいです!
それから、セッションの本筋とはズレてしまうもののこんな感想も抱いたというツイート🤔
「地方=人材リソースが限られている」状況下で価値を出すための話だったけど、都内のベンチャーも「リソースで殴って人材を確保」してもそれは幸せな採用と言えるのか🤔っていう命題は存在するはずで、その辺りにも示唆をいただけてなかざんさんの話マジ学びでした( ˘ω˘) #mcniigata
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
お昼にたまたまエンカウントした、七島さんのセッション!個人的にエンジニアコミュニティでのオーガナイザー(およびカンパイヤー)としての印象が強かったので、七島さんのゴリゴリ技術の話もとても楽しみにしていました!
メインは、「ここ数年、機械学習におけるモデル作成のハードルが大きく下がったことで、新たなアプリの機能開発の道が拓けるのでは?」という内容でした。ネット上の文献も紹介しつつ「機械学習を機能開発にどう組み込むのか」「組み込む際に考えるべきこと」の2点がシンプルにまとまっており、機械学習とアプリ開発を組み合わせた未来を解像度高くイメージできたように思います。
ユーザー体験の先頭に立ってるモバイル(フロントエンドも含む?)エンジニアだから、MLを使った機能実装やってみようよ!というメッセージ、なるほどみが深い #mcniigata
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
近年のAIバブルの影響で、僕も機械学習に対して誤った先入観を抱きがちなのですが、アプリ開発における新たな課題解決・価値創出の道として紹介してもらえたおかげで、今までとは明らかに違う「機械学習触ってみよう!」のモチベーションが湧いてきました!一応ネタはある、なにから触ろう…🤔
WebベースでアプリライクなUI/UXが実現できる「PWA×SPA」という選択肢
午後3本目。株式会社クーネルワークCTOの入澤さんのセッションです。Web歴の長い入澤さんのセッションは、「モバイルフレンドリーなWebアプリを作るための技術紹介」がメインです。
特にAMP・PWA・SPAの3つについての解説がされましたが、モバイルアプリエンジニアにとっては正に「かゆい所に手が届く」内容だったと感じます。Web技術、興味はあるものの、いざキャッチアップのために調べると新旧入り交じった大量の情報が出てきて溺れてしまった経験が僕自身何度もあるのですが、このセッションではAMP・PWA・SPAの勘所を独特の言い回しでわかりやすく伝えていたので、とても勉強になりました!
新潟直送計画の合言葉は「米しかないと、思うなよ。」
— なかざん (@Nkzn) October 11, 2019
バチクソかっこいいじゃん……#mcniigata
余談ですが運営しているECサイトの合言葉、マジでかっこいいと思います👍
Integrate your app to modern world in Niigata
次はtry!Swiftオーガナイザーの松館さん!
内容はガッツリSwift UIのお話。iOS13以上が要求されるSwift UIへ、将来的に完全移行するために従来のUI Kitで頑張るノウハウがコードベースで解説されていました。
コードからなんとなく香る「Swiftの言語機能をモリモリ使って実装した」感がエンジニアとしてとてもワクワクしたのですが、如何せんSwiftを知らなすぎたせいもあり雰囲気しか掴むことができませんでした。興味はめちゃくちゃあるので、これを気にiOSもキャッチアップしていきたいお気持ちが高まっています!
ラストはFULLER株式会社新潟支社の伊津さんのトーク!長岡花火公式アプリの開発、および花火当日の運用裏話を聞かせていただきました。
運営本部にアナログな形で情報が集まってくる→フラー社員が手打ちしてpush通知
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
血の滲むタイプのアレだ… #mcniigata
足で駐車場情報取りに行ったのすごく素晴らしい #mcniigata
— ⑨ (@circled9) October 11, 2019
開発・運用の裏で、上記のような「それが最適解であればアナログな手法も厭わず実行する」姿勢がとても印象強く残っています。また、花火当日に本部に集まったデータを「Pull Requestの形でミスがないかレビューできるよう」にCSV+GitHubで管理し、Bitriseを使ってCloud Firestoreの更新をかけた話は、本当に長岡花火の事例でしか聞けない内容だったと思います。
新潟のエンジニアの方々、ゲストスピーカーの方々、全員からユーザーに対する価値提供と眼前の課題解決に真摯に取り組んでいることがヒシヒシと伝わってきたことが1番の思い出です。そして、純粋に技術だけは乗り越えられない壁を八方手を尽くして越えた経験、これを普段ITの最新情報やリアルの空気感に触れることが難しいであろう新潟という地で共有する姿は、僕を含めた聴講者の多くが影響を受けたのではと感じます。
間違いなく、すごく良いカンファレンスでした!来年以降も開催されれば参加したいです!
東京の宅配🍕&🍣も大好きですが、新潟のご飯は格別でした!肉もポテトもめちゃくちゃ美味しかった!
懇親会〜! #mcniigata pic.twitter.com/b1IAUKT9mZ
— Hideyuki Nanashima (@jollyjoester) October 11, 2019
それから訂正。今回のカンファレンス1番の思い出はコレでした😇 技術力が上がる水です😇
本日のハイライト #mcniigata pic.twitter.com/Z1WSHyXF62
— [¥275,644]にしこりさぶろ〜 (@subroh_0508) October 11, 2019
マジな話、割と飲んだのに翌日殆ど2日酔いしなかったので、新潟の日本酒は最高なのです🥰