eureka Go ~pairsのGo言語フルスクラッチの舞台裏〜

2015/12/12(土)14:00 〜 20:00 開催
ブックマーク
Go, AWS

イベント内容

概要

eureka Go ~pairsのGo言語フルスクラッチリニューアルの舞台裏~

株式会社エウレカでは昨年年始から1年間をかけ、自社サービスのpairsのサーバサイドをGo言語でフルスクラッチ開発しました。

Webベースの大規模アプリケーションを全てGo言語で書き直した例は、国内では数少ない状況です(と言うかほぼ皆無かと思います)。エウレカとしましては、この知見をイベントとして広く皆様にお披露目させていただければと考えています。 Go言語を導入されている企業のみなさま、Go言語の導入を検討されていらっしゃるみなさまのお役にたてるような時間となれば幸いです。

ご来場をお待ちしております。

当日の予定・登壇者紹介

1) 登壇発表パート

  • 株式会社エウレカ 執行役員CTO 石橋 準也

    • 「キーノートスピーチ」
    • フルスクラッチ開発の背景、Go言語を選択した理由、プロジェクトの全容。リリースした今だからこそ言えることなどもお話しいたします。
  • 株式会社エウレカ Engineering Manager 金子 慎太郎

    • 「pairs-goのアーキテクチャと運用を考慮したプロジェクト基盤の整備について」
    • 大規模プロジェクトにおけるレポジトリ管理や、リリース後の運用を考慮したGo言語の基盤をどのように整えたかをお話いたします。
  • 株式会社エウレカ Senior Engineer 森川 拓磨

    • 「Go言語周辺ライブラリの活用」
    • Go言語のAws SDK、課金周りApple/Google/Paypal SDK、ORM 等、Webアプリケーションに必須な外部ライブラリを中心に、各ライブラリの状況や導入時のストーリーをお話いたします。
  • 株式会社エウレカ Infrastructure Manager 松尾 健司

    • 「Go言語アプリケーションを実現したインフラ」
    • 大規模アプリケーションのインフラを再設計した際の、多数の環境やデプロイのコントロールをどのように実現したのかお話いたします。
  • 株式会社エウレカ Engineering Manager / Scrum Master 泉森 達也

    • 「大規模プロジェクトマネジメントの勘所」
    • エンジニアリングチーム、ディレクションチーム、インフラチームの作業同期のとり方や進捗管理、品質管理マネジメントについてお話いたします。

※内容は当日一部が変更になる場合がございます。ご了承ください。

2) 分科会パート

登壇で発表できる項目に限界がありますので、個別に登壇発表者を中心にグループで懇談できる時間を設けさせていただきました。 本ページの下部に pairs-goの技術概要 を掲載いたしましたが、ざっくばらんにみなさまとお話させていただき、現場の知見共有をできる機会を、一同楽しみにしております。

3) 懇親会パート

当日は懇親会費としまして、500円を頂戴させていただく予定です。 ご用意お願いいたします。

日時

  • 12/12(土) 14:00 - 20:00

会場

  • 株式会社エウレカセミナースペース
  • 〒107-0062 東京都港区南青山2-27-25オリックス南青山ビル5F
  • https://goo.gl/i7RH3l

当日は出席管理のためにお名刺を頂戴いたします。ご用意をお願いいたします。

こんな方々にオススメ

  • Go言語に興味がある方
  • Go言語をプロダクション導入したいと考えておられるエンジニアの方
  • 現状Go言語での開発を進めており、Webアプリケーションでの事例を知りたい方
  • 大規模サービスにおけるフルスクラッチプロジェクトの事例を知りたい方

著作権注記

イベント画像に利用したGo言語のキャラクターGopherの原著作者はRenée Frenchさんです。

(資料)pairs-goの技術概要です。

以下、pairs-goが採用している技術概要です。 分科会時の質問にお役立てください。

サーバーサイド

  • バックエンド: Go言語
    • アプリーケーションフレームワーク:Revel/Goji
    • i18n対応(pairsは日本・台湾の2カ国で展開していますが、ワンソースで提供しています)
    • ORM:xorm
    • マイグレーション:goose
    • Test:assert、Facadeパターンを採用したControllerレベルの結合テスト、CircleCI
  • フロントエンド: TypeScript + AngularJS
    • ProtractorによるE2E, Karma + Jasmine によるUnitTest、CircleCI
    • PC版・スマートフォンWeb版・管理画面全てをSPA(Single-page application)で構築
  • API設計:
    • Json Hyper SchemaでのAPI設計
    • -> RunscopeによるAPI監視、gatlingによるパフォーマンステストのベースにもなっています
  • サブシステムのMicroservices化
  • タスクランナー(gulp)による大規模開発コマンドの統一

ネイティブ

  • WebフロントエンドアプリとネイティブアプリでAPIを完全に統一しています(Restful API)
  • それに合わせて、ネイティブアプリのバックエンドも全て書き換えています。

インフラ

  • AWS上のImmutable Infrastructureで、BlueGreenDeploymentを実現(Ansibleベース)
  • Mackerelでのリソース・死活監視
  • Amazon Auroraのプロダクション使用
  • Elasticsearchによる検索バックエンドリプレース
  • Embulk/FluentdによるGoogle BigQueryとのデータ連携・分析基盤構築

注意事項

※ こちらのイベント情報は、外部サイトから取得した情報を掲載しています。
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。

関連するイベント