ULTRA Beer Bashを開催しました

去る10月14日(金)弊社の主催でULTRA Beer Bashというイベントを開催しました。

f:id:takezoe:20161016023637p:plain

Web界隈のCTOさんたちがパネルディスカッションを行うトラックと、最新の技術動向のプレゼンテーションを行うテクニカルトラックの2トラック構成のイベントだったのですが、テクニカルトラックのアレンジを自分の方で担当させていただきました。準備時間も短かったのですがスピーカーの皆様にご協力いただきフロントエンドから機械学習、インフラ、DDDそしてエンジニアのキャリア論まで素晴らしいセッションを揃えることができました。

当日はイベント内容のSNSでの拡散はNGというアナウンスがされていたのですが、テクニカルトラックに関しては通常の技術イベントと同じくSNSでの拡散OKということにしておけばよかったかなと思います。せっかくの魅力的なセッションがご参加いただいた方以外に拡散しないのはもったいないのでこのエントリで各セッションの内容を簡単にまとめておきたいと思います。

普通のWeb開発者が押さえておきたいJavaScriptの現在と未来

まずはサイボウズ開発本部長 佐藤鉄平さん(@teppeis)によるJavaScriptの現在と未来についてのセッションです。

ECMAScript 2015はモダンブラウザでは90%以上サポートされているし、IEでもBabelを使うことでほぼ問題ないレベルで動作させることができるので積極的に使っていくべきとのことでした。

また、フロントエンドの動きが早すぎるという課題については、フロントエンド界隈は最新技術に飛びつくカウボーイが目立つものの、実際のパラダイムシフトは3〜4年ごとくらいに起きており、そんなに早いサイクルではないという話が印象的でした。

とはいえ多くのツールやフレームワークが乱立している状況ではあるので技術選定が難しいということは変わりなさそうです。対策として「信頼できる人に話を聞く」「心を落ち着ける」などをあげられていましたw

Forward Universal WebApps

続いてもNode.js日本ユーザ会会長古川さん(@yosuke_furukawa)によるフロントエンドのセッションで、Universal(Isomorphic)なWebアプリケーションのアーキテクチャに関するお話でした。こちらのセッションはスライドを公開していただいています。

クライアント側で行っているバックエンド的な処理をBackend For Frontend(BFF)というレイヤに分離する、そしてこの層にNode.jsを用いることでフロントエンドと一部の処理を共用できるなどのメリットあるのでいいよ!とのことでした。

ただ、以前@teppeisさんのFrontend Meetupでの「SPAには覚悟が必要」という発表が話題を呼びましたが、やはりフロントエンド界隈はまだ未知の部分が多く、こういった新しいアーキテクチャを採用するには覚悟が必要なのは間違いなさそうです。しかし、だからといって諦めるのではなく、よりよいアプリケーションを作るために覚悟を決めて取り組んでいくという決意を表明されていました。

会長の覚悟をしかと拝見させていただいたセッションでした。

なお、私は覚悟がないのでVanilla JSとjQueryで生きていこうとの思いを新たにしました。

Software Engineering in SRE @ Mercari

フロントエンドの話題から一転してメルカリのbokkoさん(@cubicdaiya)によるメルカリさんのインフラおよびSREチームの業務に関するセッションです。

世界展開を行っているメルカリさんのインフラ構成ももちろんですが、個人的に特に興味深かったのはSREチームの日常業務や制度に関する部分でした。

最近話題のSREとは、運用だけでなくミドルウェアの開発やインフラの自動化などのソフトウェア開発も担うポジションで、稼働時間の50%以上は開発に費やすべきとされているそうです。とはいえ、システムの障害対応などは最優先事項です。メルカリさんのSREチームでは約一週間交代で障害対応の当番制が義務付けられているそうです。

当番の方は行動が制限されたり、生活面でのストレスなども発生するため、代休がついたり、日当が出るなど制度面でフォローしているそうです。さらに障害対応の可用性を保つため朝は当番の方は時差出勤するといった工夫もされているそうです。

サービスのインフラを安定稼動させるために技術面だけでなく人間系の運用もしっかりされているのだなという点が印象的でした。

機械学習は何であって何でないのか 〜その基本からディープラーニングまでGunosyの最新事例を添えて〜

グノシー久保さん(@beatinaniwa)の機械学習に関するセッションです。

機械学習ディープラーニングについて初心者にもわかりやすいよう説明されていました。グノシーさんでの事例も交えつつ、ルールベースで十分な場合も多いので機械学習の前に検討するべき、機械学習を導入する際はコストパフォーマンスを考え用法・用量に注意しましょう、という現実的なお話をされていました。

グノシーさんでは年齢の推定にディープラーニングを使用することで既存の手法より20ptも精度が向上し、これによる事業貢献も大きく、ディープラーニングの成功事例としてご紹介いただきました。

ITエンジニアならば本を書いて稼ごう!

ガラッと視点を変えて技術評論社の池本さん(@XR230)によるエンジニアのキャリア論に関するセッションです。

池本さんは書籍や雑誌の編集者さんの立場から多くのエンジニアとのお付き合いがあり、中でも成功されている方のキャリアについてご紹介いただきました。「プロのためのLinuxシステム構築・運用技術」などの著書で有名な中井さんのキャリアは

  • 予備校講師時代に校内のWindows PCをすべてLinuxに置き換えてしまったのが目に止まってIBMに転職
  • Linuxの本を書いたら売れてRedHatに転職
  • 機械学習の本を書いたら売れてGoogleに転職

という常人にはまったく真似のできないものでしたがw 「勉強し続ける」「学んだことを自分のものにする」「時間の使い方が大事」といった言葉についてはどれも胸に突き刺さる思いでした。

少し時間が余ったので質問タイムも取っていただいたのですが、出版社さんに声をかけてもらうには?という質問に対して最近ではブログを書くよりも勉強会やイベントでの登壇とスライドの公開が効果的というTipsを教えていただきました。本や記事を書いてみたいと思っている方は試してみてはいかがでしょうか。

Scala/Akkaによるドメイン駆動設計とリアクティブシステムの統合について

最後はチャットワークの加藤さん(@j5ik2o)によるAkka、DDD、Reactiveについてのセッションでした。

リアクティブなシステムを作る上でのAkkaのアドバンテージを力説されていました。AkkaはJVM上でアクターモデルを利用できるという意味で独自性があり、様々な用途に応用できる汎用的なツールキットだと思います。海外では良い書籍も出ていますのでもっと興味を持ってくださる方が増えるといいなと思います。

例によってかなりアルコールを投入済みの状態での登壇で、スライドも80枚という大作の中から重要なトピックをピックアップしてお話しいただくという形でしたので、もっと時間を取ってじっくりお話しをお聞きできればと思いましたw

おわりに

自分はずっとテクニカルトラックにいたのでパネルトラックの様子はわかりませんでしたが、こちらも他ではなかなか聞けない話だったようです。平日の昼間からビールを飲むという不謹慎なイベントでしたし、テーマも雑多だったので参加しづらいところもあったかもしれませんが、多くの方にお越しいただきありがとうございました。

また、無理なお願いをさせていただいたにも関わらず快くお引き受けいただいたスピーカーの皆様にも感謝の気持ちでいっぱいです。本当にありがとうございました。