アメーバブログ エンジニアの向井です。

4月21日 昨年に続き第2回目となるBattle Conference Under 30(BCU30)が開催されました。
https://bcu30.jp/
https://twitter.com/bcu_30
https://twitter.com/hashtag/bcu30

今回はその様子をレポートします。

Battle Conference Under 30(BCU30)とは?

BCU30 #2018

Battle Conference Under 30とは「Under30 エンジニアによる Under30 エンジニアのための技術カンファレンス」です。
様々な領域の若手エンジニアが互いの知見を共有し、技術、事業、キャリアについての考えを発表し、刺激を与え合う場として開催されました。
BCU30では大きく2つ、Talk BattlePrograming Battleというイベントが開催されました。
Talk Battleは登壇者による発表、Programing BattleはBCU30参加者が誰でも参加可能なプログラミングコンテストです。
Battle Conferenceと銘打っている通り、Programing BattleだけでなくTalk Battleでもオーディエンスの投票でより刺激を受けた発表が選ばれます。
その結果については後ほど。

規模

今回の参加者は開催発表時の募集枠を大きく上回る多くの応募をいただく好評ぶりでした。
また基調講演を合わせ37名の方にご登壇いただき、大変多くの方にご協力いただくことができました。

会場

今回の会場は西新宿にある芸能花伝舎でした。

http://www.geidankyo.or.jp/12kaden/

もともとは学校だった施設をリノベーションして活用されているだけあり、木製の椅子と机が並んでいたり体育館がそのまま残っていたりと懐かしい雰囲気を漂わせる会場でした。
開催日はAbemaTVオリジナルドラマ「会社は学校じゃねぇんだよ」の第一話放送日でしたが、会社主催のイベント会場は学校でした。
よければ御覧ください(宣伝)

開会

開会式は体育館で行われました。
バスケットゴールはなかったものの懐かしさが満載でした。

社長挨拶

サイバーエージェント 藤田社長より開会の挨拶をしていただきました。
この話で初めて知ったのですが、G1サミットに藤田社長が参加したときにU-40という20,30代の人だけが集まるプログラムで若手の人たちが活き活きしていたのを見ていたという背景がBCU30の開催につながっていたようです。
これを技術者の世界に当てはめて考えたときに、今はIT業界ができてからいくらか時が経ち過去にサービスをあてた人などが注目を浴びていて若くて優秀な人が注目を浴びづらくなっている状況があり、そういった人たちが注目を浴びることができる場、自分より年上の人がいると萎縮して話せなかったような考えを思いきり喋れる場としてBCU30が企画されたとBCU30の成り立ちについてお話いただきました。
また、エンジニアと話をしていると刺激を受けるようなエンジニアが社内にほしいという話が挙がるようで、BCU30では会社の枠を超えて能力の高い人たちが集まって互いに刺激を与えあって楽しんでくださいと激励頂きました。

基調講演

dely株式会社 CTO 大竹様に「超高速で変化する厳しい世の中での戦い方」というタイトルで発表していただきました。

内容
・ITの世界は環境の変化が激しい
・自分のスキルが他のサービスによって簡単に提供される
・エンジニアという職業は一人のめちゃくちゃできる人が無限に価値を生み出し、能力のない人はマイナスを生むことさえあるという個人の能力によって成果がとても大きく変わってくる数少ない職業
・単一の分野だけでいうとその分野のNo1にならないと一人のめちゃくちゃ優秀な人に仕事がいくから意味がなくなる
・自分の価値をつくるためには「希少性」「客観性」「万能性」という武器が必要
・「希少性」・・特定の分野のNo1にはなれなくても、複数のスキルや経験である程度優秀ならばそれらの掛け合わせによってレアな存在になれる
・「客観性」・・事実上Twitterのフォロワーが多い人が強い状況。その人がなにができるのか伝えられる能力
・「万能性」・・複数のスキルをうまく組み合わせられる能力。
・必要に駆られることでこれらの武器を手に入れる
・自分の領域外の未知の領域に飛びつく
・変化が速い=差分がある=チャンスがある

感想
発表では業界の変化の速さ、それに伴う自分のスキルのコモディティ化による価値の減少の危機感について触れ、ではどうすればそういった環境で戦うことができるのかについてお話しいただきました。
複数のスキルや経験によって希少性を得るという話の実感として、今回登壇されていた方の中でもビジネスとエンジニアリング両方に理解があったり、サーバもアプリも両方作っている人がいたり複数のスキル、経験を持つ人が多い印象でした。
一方で受賞歴や最先端の技術の知見を持つ登壇者など、一分野に特化して高い見識を持つ人もいて、たしかに優秀と言われる人はどちらかに分類されるように思いました。
どちらの戦略をとるのか考えつつ、必要なものが定まったらそれを得られる環境に身を置くことがこれからの時代を戦うひとつの戦い方であると思いました。

Talk Battle

Talk Battleのテーマは「崖越え」
技術、事業、キャリア、様々な軸での「崖越え」経験を披露していただきました。
Talk Battleではセッションを4つの部門(サーバー・インフラクライアント開発プロセスデータ)に分けてそれぞれの部門に沿った発表をして頂きました。
聴講できたセッションをいくつか紹介します。

機械学習ブームの裏側に [データ部門]

ヤフー株式会社 池上さんによる発表です。
自己紹介で仰られていて思い出したのですが、バレンタインの時期に話題になった「人工知能でバレンタインチョコが本命か義理かを判別する」の著者の方でした。

内容
・機械学習の波が来てることはエンジニアのみならずビジネス寄りの人もわかってる
・しかしまだまだ機械学習=難しいというイメージがある
・「機械学習って面白い!!」ということを伝えたい
・興味をもってもらうためには多くの人が抱える課題を解決すること
・オーディエンスに来てるエンジニアにとって重要な課題 = 「女性エンジニアが少ない」
・男性から見た問題「やる気がでない」、女性から見た問題「同性同士でコミュニケーションがとれない」
・男性が女性になればいいのでは?
・見た目は頑張ればなんとかなる
・次は声を変えよう -> 機械学習による音声変換
・GAN(Generative Adversarial Network)によって元の男性の声を女性の声に聞こえるように音声を変換
・これに限らず機械学習面白いのでどんどん活用していきましょう!

質疑
リアルタイムな音声変換は可能?
訓練には時間がかかるが一旦訓練すれば可能
クオリティを上げるにはどうすればいい?
きれいな音声データをとるために収録環境を整える必要がある

感想
機械学習=難しくてとっつきにくいというイメージから実用的かつ切実(?)な課題を題材にして機械学習に対して興味をもってもらおうという発表でした。
扱った課題がユニークで発表中会場からも笑いが起こっていました。
音声変換手法そのものに対する質疑もあり、こういったとっつきやすい例を入り口にすることで機械学習をやってみようという人が増えるのではないでしょうか。

4年間のデータ分析基盤の変遷とデータレイクの作り方 [データ部門]

株式会社ミクシィ 生島さんによる発表です。
スマホアプリサービス「モンスターストライク」のデータ分析基盤として利用されている基盤システムについて発表していただきました。

内容
・ユーザの行動を分析してどのように遊んでもらっているのかを可視化
・4年間運用するうちにデータを保持しているテーブルが増加
・分析ツールがデータを参照するときにデータの場所を気にしないといけない負担
・Hive Metastoreを使うことでデータを抽象化
・MySQL上でHive Metastoreを稼働させてこれを経由してデータにアクセスすることでデータの場所を気にせずに利用が可能になった

感想
ユーザの行動ログ蓄積、分析はどの分野のサービスであっても関心の高い領域だと思います。
さらにモンスターストライクというユーザ数の多いアプリで実際に4年間運用されてきたなかでの知見ということで実戦として参考にしやすい内容だったのではないでしょうか。
こういった分析基盤をうまく稼働させるテクニックとして一段抽象化のレイヤーを挟ませるというアイデアは他にも転用しやすい考え方だと思いました。

U30エンジニアだからこそ実現できた劇的ビフォーアフター [サーバー・インフラ部門]

株式会社エイチーム 田中さんの発表です。
社内の課題に対して実際にどのように新技術を導入し改善を行っていったのか、今回は特に障害検知から対応のフローについてお話し頂きました。

感想
ニーズにあった技術を選ぶことが重要で、本当にその技術が今抱えている課題を解決してくれるのか考えることがチームに浸透させる大事な点だと思いました。
かつて自分のチーム内での開発上の課題を解決するために自作ツールを使ってもらっていたときがありましたが、そのときは驚くくらい浸透していました。それ故に本当に課題を解決するものは自然とチームに浸透するという思いがあるので今回の話に共感できました。
お話の最後では、採用する技術が新しいかより気持ちいいかで決めようとも仰られており、そのための感覚を身につけるためはいろいろな技術にアンテナを張っている必要がありそうです。

僕が中学の頃から存在するサービスをモダンな技術で再構築しているのだが、、、(仮) [クライアント部門]

GMOインターネット株式会社 門田見さんの発表です。

内容
・struts1.1だったりステージングと本番とでDBのカラムの型が違ったり
・ステージングで確認してリリースしたら画面真っ白
・日本語が得意ではないメンバーとのコミュニケーション
・普通の環境にすることをまずは目指す
・コミュニケーションの共通言語はプログラミング言語
・なにをしているのかはコードを見ればわかるので、なんでしているのかをコメントに書く
・意識的に用語を統一させる
・ビジネス的な要望を断る勇気をもつ。代替案を出す
・通らなければ諦めて作るしかない
・ダイレクトチャットでやりとりせずにオープンな場所での会話することで情報の共有
・普通にはなってきたのでこれから最高を目指していく

感想
古いバージョンのフレームワークであったり、DBの構成が開発環境によって異なっていたりと涙なくしては聞けないお話でした。
今のシステムや環境に対して課題と思うこと、つらいと思うことをどうにかしてやるという強い意志を感じるとともにサービスのビジネス的な役割に対しても考慮がありました。
それらのバランスをとりつつ改善を進めていくという、情熱と共に地に足の着いたスタンスが感じられる発表でした。

3年連続ベストアプリを受賞するまでの開発ロードマップと体制 [開発プロセス部門]

AWA Co. Ltd. 冨樫さんの発表でした。

内容
・最初は全員ネイティブアプリ初心者
・挙手制でエンジニアの領域を決めてた
・リリース前、モックはエンジニアだけでつくってイメージを作ってた
・イメージが固まってからデザイナー加入
・仕様が固まってきたところで開発メンバー増強
・リリース
・開発軸を3つ決めて開発を3ラインに整理
・多くの機能をリリースできたのは開発軸を決めたのが大きかった
・軸の決定はしたが、機能案は開発者自身に出してもらった
・案を開発者に出してもらうことで積極性につながったり企画から開発までが一連の流れになった

感想
全体的にタイミングと割振りの最適化を意識した体制になっているのかなと感じました。
やることに対して必要十分な人員を都度割り当てることで密なコミュニケーションとなり、ひいては開発速度の向上、質の向上につながっている印象でした。
人数が増える=速度や質の向上とならないことはエンジニアであれば実感しているところですが、冨樫さんはもともとエンジニアからPMの立場になっていることもあり、その感覚が活かされているのではないでしょうか。

エンジニアが数字を作る開発チームの生まれ方 [開発プロセス部門]

株式会社リクルートマーケティングパートナーズ 小原さんの発表でした。

感想
登壇者の熱量がすごく高いと思った発表でした。
この熱意がチームにも伝わっているのがあってこその数字を作る開発チームになっているのでしょう。
基調講演にもあった、複数のスキルの掛け合わせが価値を上げていくという話がここではエンジニアリング能力とビジネスの牽引力の掛け合わせとして現れているように思いました。

CASHのユーザビリティを支える(泥臭い)技術 [クライアント部門]

株式会社バンク 熊谷さんの発表です。

感想
発表中では「コードの抽象化、設計を行わない」や「クライアント側でロジックを実装する」といったエンジニアであればうっと拒否反応が思わず出てしまうようなワードが出てきます。
しかし、スタートアップというスピード感、ドラスティックな仕様変更という性質をもった環境において早すぎる最適化は特にリスクが高い場合があるという内容だと理解しました。
爆速な反応速度や実装速度を得るための代償としてどこまで支払えるのか、必要以上にきれいなコードにこだわりすぎていないか、考えさせられる発表でした。

極寒の地でマイニングファームを構築してみた [サーバー・インフラ部門]

GMOインターネット株式会社 梅崎さんの発表です。

内容
・北欧でマイニングファームの構築
・5000台のサーバの設置
・体育館埋まるくらいのダンボールを開く作業からスタート。これが1,2週間つづく・・
・ケーブルが固まるレベルの寒さ
・サーバが上がってこないと思ったらサーバの動作保証温度の下限を室温が下回ってた
・天気、雹がふったりブリザードになったり
・トイレに行って帰るだけで遭難の危険

感想
他では聞いたことのないお話でした。
外気による冷却ということで北欧での設置だったようですが、いろいろ想定外のことが起こっていたようです。
20代でここまでの経験をしたことのある人はなかなかいないのではないでしょうか?
今回のBCU30のテーマは崖越えなのですが、崖どころか海を越えていたお話でした。

Programing Battle

予選

予選ではスピード勝負の1問課題で、より短い時間で正解をした上位80人が本戦に出場可能なルールです。
会場として開放されていたのは小学校を彷彿とさせる椅子と机がならんだ一室でした。
見た目が教室そのものなのでそこに座って予選に挑む参加者の姿はさながらテストを受ける学生のようでした。
それでも目は真剣そのもので画面を見つめてひたすらキーを叩く光景が広がっていました。
予選通過者の結果は廊下に貼り出されるようになっており、通過者の番頭には合格マークがついていました。

本戦

本戦では2問の課題をより早い時間(ただし制限時間は15分)で解けた人が勝ちというルールでした。
本戦の課題はより頭を使うものだったようで、その会場で本戦に臨んでいた30人ほどのなかでも序盤でキーを叩いていたのは2,3人で空調の音だけが聞こえるくらい静かでした。
中盤から終盤にかけてキーを叩く人が増えてきましたが、終了後の感想では「1問しか解けなかった」「あと3時間欲しかった」といった声も聞こえ、さすが本戦という難易度だったようです。
実際あとで聞いてみると用意された2問は15分で解ける想定ではないレベルの問題らしく、
上位者というかそもそも2問解けないと勝ちの資格が得られないので解けた人がいるのか不安になるくらいでした。

プログラミングバトルの様子

※Programming Battleの様子です

表彰

Talk Battle

Talk Battleでは各部門ごとにBest Session Awardが贈られました。

各部門の受賞者は以下の方々です。

おめでとうございます ??

サーバー・インフラA部門
株式会社エイチーム 田中さんによる「U30エンジニアだからこそ実現できた劇的ビフォーアフター」

サーバー・インフラB部門
GMOインターネット株式会社 梅崎さんによる「極寒の地でマイニングファームを構築してみた」

データ部門
株式会社サイバーエージェント 岩崎さんによる「夢と現実のバナー広告自動生成」

開発プロセス部門
株式会社リクルートマーケティングパートナーズ 小原さんによる「エンジニアが数字を作る開発チームの生まれ方」

クライアントA部門
GMOインターネット株式会社 門田見さんによる「僕が中学の頃から存在するサービスをモダンな技術で再構築しているのだが、、、(仮)」

クライアントB部門
株式会社バンク 熊谷さんによる「CASHのユーザビリティを支える(泥臭い)技術」

Programing Battle

Programing Battleでは上位三名の表彰が行われました。


3名も15分以内に2問とも解けた人がいるということに驚きでした。
受賞されたお三方おめでとうございます??

全体感想

20代だからといって経験が浅くて当たり前、スキルが低くて当たり前というような風潮ではまったくない状況に既になっていることが感じられました。
むしろ、20代で高いスキルを持っている、いろいろな立場でチームを主導している、そういった能力をもつ人が多くいることがわかりました。
これから先の時代、よりこういった高い能力を持つ若者やそれを後押しする技術やサービスがどんどん出てくると思います。
これからの時代を生き残るための術を身に着けないとという危機感を得られるいい機会でした。

謝辞

昼の受付から夜の懇親会まで長い時間多くの方にご来場いただけました。
ご登壇いただいた方々、ご来場いただいた皆様、スポンサーになっていただいた企業様、大変お世話になりました。
おかげさまでとてもいいカンファレンスになりました。

ありがとうございました。

2013年新卒のエンジニアです。AWAでAndroidエンジニアをしています