tatsumackのブックマーク (437)

  • 【Go/GCP】ライブゲーム「あてっこ!ぷにまるず」を支えるバックエンド技術 - Mirrativ Tech Blog

    バックエンドエンジニアの makino です。日は、先日リリースしたライブゲーム「あてっこ!ぷにまるず」のバックエンド技術について紹介します。 ライブゲーム「あてっこ!ぷにまるず」について ライブゲームとは、Mirrativアプリ上で遊べるゲームであり、配信中のゲームに視聴者が介入できることが特徴です。 「あてっこ!ぷにまるず」では、配信中に視聴者を招待して一緒にGvGバトルを楽しむことができます。 開発スタッフがプレイした動画をご紹介📺✨ バウンド数に注目👀⁉ こんなに連鎖できたら気持ちよさそう…🐰💕 動画を参考にレッツ❗チャレンジ💁 SNSスタッフは2回バウンドできました🙌 まだまだ道のりは険しい…🏔 pic.twitter.com/YdZMRKxbgv— 【公式】あてっこ!ぷにまるず (@punimals_jp) 2023年7月18日 Mirrativのライブゲーム

    【Go/GCP】ライブゲーム「あてっこ!ぷにまるず」を支えるバックエンド技術 - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/07/28
    久々に書きました
  • あてっこ!ぷにまるずを支える技術紹介 〜モバイルWebGLの開発事例〜 - Mirrativ Tech Blog

    Unityエンジニアのいも(@adarapata)です。 みなさんはUnityでWebGLプラットフォーム開発していますか? ミラティブでは先日「あてっこ!ぷにまるず」というライブゲームをリリースしました。 これはモバイルブラウザで動くWebGLです。 PCブラウザ想定のWebGLは多くありますが、モバイルブラウザを想定したゲームはあまり多くはありません。 いざ開発しようとしてもそもそも動くのか?このライブラリは対応しているのか?要求水準は満たせるのか?といったさまざまな課題が待ち受けているでしょう。 エントリーでは、あてっこ!ぷにまるず(以下ぷにまるず)を実際にリリースするにあたって利用したライブラリの簡単な紹介や、ちょっと気をつけるポイントなどを紹介していきます。 個別の技術スタックに関する話は別途エントリを書いていくので、ここでは全体のサマリーと簡単な選定理由などに留めておきます。

    あてっこ!ぷにまるずを支える技術紹介 〜モバイルWebGLの開発事例〜 - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/07/26
  • Unityチームでの輪読会の取り組み紹介とUniRx/UniTaskクイズ - Mirrativ Tech Blog

    こんにちは。ミラティブUnityエンジニアの菅谷(tetsujp84)です。Unityチームの一員として、私たちが週に1時間を費やして行っている輪読会について紹介したいと思います。輪読会では、チーム内で読むを都度決め、それを読み進めていきます。これまでにはパフォーマンスチューニングのやUniRx/UniTaskのを読みました。また、後半にはUniRx/UniTaskので学んだことを元にクイズを作成しましたので是非挑戦してみてください。 具体的な流れ チーム内で読むを決め、全員が(現物 or 電子書籍)を用意します。輪読会では、前回の続きから読み始め、15分程度経ったら区切って次の人に交代します。ある程度のまとまりを読んだら、それぞれの意見や重要そうな点、気付きなどを議論します。1回の勉強会は1時間で、できるだけメンバー全員に参加してもらっています。 ポイント・メリット 輪読会に

    Unityチームでの輪読会の取り組み紹介とUniRx/UniTaskクイズ - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/07/19
  • iOSプロジェクト内の神クラス解体の進め方 - Mirrativ Tech Blog

    こんにちは、クライアントエンジニアの竹澤(@to4iki)です。 Mirrativでは、リアルタイムの配信視聴時のコメントやギフト機能を実現するために、WebSocket ベースの仕組みを利用して、サーバー・クライアント間でPub/Subのメッセージングを行っています。*1 サーバーからのHTTPレスポンスをマッピングするように、ペイロードのJSONを受け取り、それをクライアントで扱う型に変換して使用していますが扱いにくい点がありました。記事では改善に取り組んだ内容と進め方を紹介します。 目次 課題 ゴールと進め方の認識あわせ 1. 最初にゴールの定義を行う 2. 段階的な進め方の方針と見通しを立てる ゴールまでの道筋を可視化する 3. 技術的な懸念事項などを先に潰し作業をパターン化する 動作検証に利用する再利用可能なサンプルのペイロードを定義する Decodable準拠のレスポンスでI

    iOSプロジェクト内の神クラス解体の進め方 - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/06/27
  • Go Conference 2023 にて Go/Cgoで映像・音声のリアルタイム処理をやるまでの道のり というタイトルでお話してきました - Mirrativ Tech Blog

    こんにちは ハタ です。 このたび Go Conference 2023 Online にて Go/Cgoで映像・音声のリアルタイム処理をやるまでの道のり というタイトルで発表しました 久しぶりの大きなカンファレンスでの登壇だったのでとても緊張しましたが、10周年を迎えた機会に登壇できて光栄です gocon.jp 今回発表した資料はこちらになります、当日のアーカイブは近々公開されると思いますのでお待ち下さい speakerdeck.com (2023/06/28追記) アーカイブ公開されたようです! もし当日ご覧になれなかった方はこちらからご視聴ください! zenn.dev さて、今回登壇するにあたり資料を用意していたのですが、発表時間の関係で削除してしまった内容がいくつかあるため、ここで紹介させてください go <-> cgo のオーバーヘッドを何とかしたい トランポリンコードの世界 c

    Go Conference 2023 にて Go/Cgoで映像・音声のリアルタイム処理をやるまでの道のり というタイトルでお話してきました - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/06/07
  • LeSS Huge を参考にしたスクラムのスケーリング - Mirrativ Tech Blog

    こんにちは、エンジニアのちぎらです。先日 開発組織にはじめてのスクラムを導入する という記事を公開しました。先日の記事にも課題として記述した通り、組織の一つのチームにスクラムを導入した後は、他のチームにどのようにスクラムを展開していくか、全社的な開発体制をどうやって変えていくかということを考えていく必要があります。 ミラティブでは、その後の半年弱の期間で3つの開発チーム全てにスクラムを導入しました。さらに、LeSS Huge を参考にした開発体制を敷くことで、チーム横断の開発施策の把握や、全社的な開発施策の透明化を推進しています。 スクラムを他チームに展開する 先日の記事を書いた時点では、ひとつの開発チームにスクラムを導入したのみでした。いずれかのチームでスクラムの導入経験があれば、他のチームへのスクラムの展開は比較的簡単です。一方でチームへのスクラム導入のタイミングは重要で、メンバーの混

    LeSS Huge を参考にしたスクラムのスケーリング - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/05/23
  • ChatGPTを使った社内ドキュメントを読み込んで回答できるアシスタントBotを作りました!|howdy39

    2023.04.25 予想以上に見られているので追記 ChatGPTAPIでの利用なので学習はされません。また入れてる情報は社内のだれでも見れてよい情報に留めており、顧客情報を始めとした個人情報などは一切含めていません。STORES サービスに関わる情報も含んでおりません。 入れているのは社内業務における経費精算などの各種申請の手順、オフィスの利用ルール、福利厚生の解説などに限定されています。 この記事は STORES PX Advent Calendar 2023 Spring 16日目の記事です こんにちは!STORES のPX部門IT部でマネージャーをしている@howdy39です。 先日、社内向けにChatGPTを使ったアシスタントBot(Slack Bot)を開発しリリースしたのでそのご紹介記事になります。 リリースアナウンスのSlackメッセージどんなBOT?STORES

    ChatGPTを使った社内ドキュメントを読み込んで回答できるアシスタントBotを作りました!|howdy39
    tatsumack
    tatsumack 2023/04/26
  • 24年新卒から次の新卒に伝えたい、ミラティブに感じた技術的な面白さ - Mirrativ Tech Blog

    前書き 初めまして。山倉拓也と申します。 私は2022年9月26日から現在(2023年3月)まで、株式会社ミラティブの基盤開発部でインターンをさせていただいており、2024年度に正社員として入社する予定です。この記事では、私が具体的にミラティブで今までにどんな仕事をしたのか、どんなところに技術的な魅力を感じて入社を決意したのかをお伝えします。 目次 前書き 目次 ミラティブを支えるバックエンド&インフラの技術的な話 インフラに、インメモリデータベースであるRedisを内製化して使っている Go/クリーンアーキテクチャ、に現在移行している いままでミラティブでした仕事 エモモランあーるぴーじーで、イベントが切り替わるタイミングでライフを自動回復する機能の実装 背景・概要 学んだこと 1. メンテナンス期間をいれない、シームレスなライフ管理のバージョン移行 2. ミラティブ独自のパーティショニ

    24年新卒から次の新卒に伝えたい、ミラティブに感じた技術的な面白さ - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/03/31
  • MirrativにおけるUnityのWebGLを用いたライブゲームの仕組み - Mirrativ Tech Blog

    はじめに 2022年のCEDECで講演した内容の詳細について解説します。特に、UnityのWebGLを用いたライブゲームの仕組みに焦点を当てて紹介します。 tech.mirrativ.stream WebGL技術を活用したライブゲーム ライブゲームには、WebGLの技術が使用されています。UnityでWebGL向けにビルドを行い、MirrativアプリのWebView上で実行されています。 ライブゲームの例 Mirrativで遊べるWebGL製ライブゲームは増え続け、ゲームのクオリティも日々向上し、魅力的なものが次々と誕生しています。 Mirrativでリリースしている「みんにゃで!ねこメダル」です。メダル落としゲームがライブゲームとして遊べます。視聴者は自分のアイコンをひもづけて様々なアイテムを贈ることができるようになっており、メダル落としゲームに視聴者協力プレイが融合したライブゲーム

    MirrativにおけるUnityのWebGLを用いたライブゲームの仕組み - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/03/24
  • 【ミラティブ】CI/CD Conference 2023 に登壇 & スポンサーとして協賛します - Mirrativ Tech Blog

    こんにちは、ミラティブの野呂です。 いよいよ来週開催される CI/CD Conference 2023 by CloudNative Days にて、ミラティブから近藤(@udzura)が登壇します。さらに、ミラティブもスポンサーとして協賛をさせていただきます! CI/CD Conference 2023については以下公式サイトをご覧ください。 https://event.cloudnativedays.jp/cicd2023 登壇内容 Track A 2023/03/20 12:20-13:00 大規模レガシーテストを倒すためのCI基盤の作り方 by Uchio Kondo 従来のCI基盤の課題を解決するためにどのような技術選定とアーキテクチャ設計をし、またいかにコスト等を最適化したかをお話しします。 また、CI基盤のベースとしてCloud Build、Cloud Functions、C

    【ミラティブ】CI/CD Conference 2023 に登壇 & スポンサーとして協賛します - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/03/17
  • ミラティブの開発組織をアプデしました February 2023 - Mirrativ Tech Blog

    2023年もよろしくおねがいします、よこて @n0mimono です。今回もミラティブの開発組織を更新したよという話をします、結構大きな変更が入っています。 前回記事はこちら tech.mirrativ.stream プロダクト開発と体制 組織 ミラティブではゲーム配信とライブゲーミングのプラットフォーム『Mirrativ』を展開しています。メンバーは111人、73%程度がプロダクトに関わります(2023年1月時点)。 前回は技術部を2つに分けた話をしました。 ミラティブ事業部 プロダクト開発 Unity アプリ バックエンド 基盤開発 バックエンド インフラ・ストリーミング 今回はこれをさらに推し進め、部化しました。 ミラティブ事業技術部 開発1 開発2 開発3 Unity 技術戦略部 基盤開発部 バックエンド基盤 インフラ・ストリーミング ライブゲーム コミュニティエンジニ

    ミラティブの開発組織をアプデしました February 2023 - Mirrativ Tech Blog
    tatsumack
    tatsumack 2023/02/07
  • Goのtestingパッケージにコミットした話 - Mirrativ Tech Blog

    Illustrated by egonelbre. The Go Gopher was designed by Renee French. こんにちは、バックエンドエンジニアの藤井脩紀です。 今回はGoにコントリビュートすることができたのでそのお話をさせていただきたいと思います! 概要 早速コミットの内容からですが、並列実行されるテストで環境変数を設定できなくするというものです。 コード的にはtestingパッケージのT.SetenvとT.Parallelを組み合わせて呼び出すとpanicを起こすようにするという変更になります。 (正確にはもとからそういった実装になっていたのですがカバーされていないケースがあったのでその対応をしました) testing: T.Setenv can be called after T.Parallel · Issue #55128 · golang/go ·

    Goのtestingパッケージにコミットした話 - Mirrativ Tech Blog
    tatsumack
    tatsumack 2022/12/23
  • ミラティブのインターンで趣味開発と大規模開発のギャップを体験しました - Mirrativ Tech Blog

    皆さんこんにちは、earlgray(@earlgray329) と申します。 10月17日〜12月19日の期間で、株式会社ミラティブの就業型インターンシップに参加していました。私は基盤開発技術部のバックエンドチームに所属して様々なタスクに携わらせて頂きました。 インターンシップの中で、普段行なっている趣味開発と Mirrativ という規模の大きいアプリケーションの開発の間で様々なギャップを経験することができたので、今回はインターンの中で着手したタスクとそれによって得られた知見等を紹介します。 目次 目次 基盤開発技術部とは 着手したタスク 1. Mirrativ 管理画面のログイン画面の SPA(React) 化 背景・概要 苦労したこと・得られたこと 2. 任意のユーザとしてログインできるようなデバッグ機能の追加 背景・概要 フィードバック 3. エモカラのオススメのアーティスト一覧と

    ミラティブのインターンで趣味開発と大規模開発のギャップを体験しました - Mirrativ Tech Blog
    tatsumack
    tatsumack 2022/12/15
  • Mirrativ のWebフロントエンドで使っているライブラリを紹介する! - Mirrativ Tech Blog

    こんにちは、フロントエンドエンジニア 兼 バックエンドエンジニアの駒木です。 iOS / Android / バックエンドのライブラリ紹介に引き続き、MirrativのWebフロントエンドで使用しているライブラリをご紹介します! JSフレームワーク: React with TypeScript / Vue.js 8割以上のアプリケーションはReact + TypeScriptで実装されていますが、数年前に立ち上げた一部のイベントページはVue.js + Vanilla JSで実装されています。 ビルド・バンドルツール: Vite / Parcel / webpack 2021年5月くらいからViteを利用し始め、以後立ち上げたプロジェクトはViteベースとなっています。 Vite 8割、Parcel + webpackが2割といったところでしょうか。 webpack → Parcel →

    Mirrativ のWebフロントエンドで使っているライブラリを紹介する! - Mirrativ Tech Blog
    tatsumack
    tatsumack 2022/12/13
  • Mirrativ のバックエンドで使っているGoライブラリを紹介する! - Mirrativ Tech Blog

    こんにちは、バックエンドエンジニアの夏(なつ)です。今回はMirrativのバックエンドで使っているライブラリをご紹介します。 これらの記事のバックエンド版になります!(2年越し) tech.mirrativ.stream tech.mirrativ.stream ライブラリ一覧 https://pkg.go.dev/ オリジナルの The Go gopher(Gopherくん) は Renée French によるデザイン cloud.google.com/go/bigquery 分析チームが生成したユーザの特徴量などがBigQuery上に存在しているため、それらをバッチ処理でMySQL上に取得する際に利用しています。 tech.mirrativ.stream cloud.google.com/go/compute/metadata 開発環境などでしか動いてほしくない処理が番環境上で動

    Mirrativ のバックエンドで使っているGoライブラリを紹介する! - Mirrativ Tech Blog
    tatsumack
    tatsumack 2022/11/29
  • Raft + Redis な内製Redisサーバの紹介 - Mirrativ Tech Blog

    こんにちは ハタ です。 Mirrativのインフラ内で実際に開発・運用している内製のRedisサーバについてお話したいなと思っています。 前回の記事 は、今回紹介する内製Redisサーバで起きたメモリリーク対策に関するお話しとなっておりますので、もし未読であればあわせて読んでいただければと思います。 今回はなぜ Redis サーバを内製することにしたのかの経緯や実装についての簡単な紹介が出来たらなと思っています Redis 導入の経緯 課題感: 揮発しないでほしい 課題感: 生存時間が短いデータを保持したい 課題感: 日次データをなんとかしたい 候補 Redis Cluster のヨシアシ: slot 管理 Dynomite のヨシアシ: sharding/replication radisha = Raft + Redis + HA Raft クラスタ コマンドとデータストア レプリケ

    Raft + Redis な内製Redisサーバの紹介 - Mirrativ Tech Blog
    tatsumack
    tatsumack 2022/11/01
  • https://twitter.com/matsuu/status/1586362867506327552

    https://twitter.com/matsuu/status/1586362867506327552
    tatsumack
    tatsumack 2022/10/30
  • 「しゃぶ葉」で本気でカレーを作るとすごい

    1978年東京生まれ。酒場ライター。著書に『酒場っ子』『つつまし酒』『天国酒場』など。ライター・スズキナオとのユニット「酒の穴」としても活動中。 前の記事:マッシュルームをおのれの握力で握り潰す快感 初めての「しゃぶ葉」に衝撃 先日、初めて家族で「しゃぶ葉」へ行きました。 「しゃぶ葉」 ものすごくリーズナブル もちろんべ放題にはいろいろなコースがありました。 こんな贅沢なコースもあったり 我々はオーソドックスな「ランチ 牛2種&三元豚 べ放題コース」を選びまして、大人が通常税込み1979円で、そこに休日料金がかかって+110円。それから幼児の娘が659円。つまり、家族3人で約5000円弱で、美味しいお肉や野菜やサイドメニュー、それから子供が大喜びの、自分で作れるわたあめやデザートなんかも楽しみ、そのあまりの大満足っぷりに驚いてしまったのでした。 ところでその時に思ったのが、そりゃあ次回

    「しゃぶ葉」で本気でカレーを作るとすごい
    tatsumack
    tatsumack 2022/10/03
  • ISUCON12で優勝しました(チーム NaruseJun)

    8月27日に開催されたISUCON12 選にチームNaruseJunとして参加し、スコア341,258点で優勝しました。(ISUCON12 選の結果発表と全チームのスコア) メンバーは @sekai と @takashi_trap でした。 この記事はその参加記です。 チームについて このメンバーでのISUCONへの参加は10(予選敗退), 11(準優勝)から3回連続です。 それぞれのISUCON参加回数は @to-hutohu, @sekaiが6回目、@takashi_trapが5回目です。 予選準備 7月9日と7月17日に予選のために集まって作戦会議をしました。 7/9 1時間程度集まって素振りに向けた作戦会議 素振りの環境準備、チートシート、初動のAnsible整備、Goを思い出すなどがそれぞれ宿題として持ち帰ることに 7/17 素振り会(ISUCON11予選) 5時間くらいで初

    ISUCON12で優勝しました(チーム NaruseJun)
    tatsumack
    tatsumack 2022/09/26
  • Mirrativ Tech Community & Activity Policy - Mirrativ Tech Blog

    はじめに 「ミラティブのエンジニアの発信の文化やポリシーってどうなってるんですか?」 ドキュメントは、多くの方に聞かれるこの問いに答えるものになります。 好きでつながり、自分の物語(ナラティブ)が生まれる居場所 ミラティブはエンジニア技術に対する強い思いによって成り立つチームです。ミラティブのエンジニアのミッションは、ミラティブというチーム・プロダクト・技術に貢献することであります。 一方、私達はナラティブが生まれるコミュニティの会社であり、わかりあおうとし続けるために、エンジニアチームのビジョンとして、ミラティブをテックな組織としてブランディングすることを掲げます。 すなわち、ミラティブのエンジニアは社外に対して積極的に発信し、イベントに参加し、OSSコミュニティに強く貢献するものであります。当然、社内においてもエンジニア同士が積極的に交流し、勉強会を開催し、互いの健やかな成長を促す

    Mirrativ Tech Community & Activity Policy - Mirrativ Tech Blog
    tatsumack
    tatsumack 2022/09/26