GameWith Developer Blog

GameWith のエンジニア、デザイナーが技術について日々発信していきます。

Froala 徹底解説! #GameWith #TechWith

はじめに Froala とは 導入 TypeScript Tips カスタムボタンの実装 サンプル カスタムドロップダウンの実装 サンプル カスタムポップアップの実装 サンプル カスタムアイコンの実装 サンプル メソッドの紹介 取得系 挿入系 テーブル系 その他 オプションの紹…

認定スクラムマスターが自チームにスクラムを導入しないわけ #GameWith #TechWith

こちらの記事は12/20日のアドベントカレンダーです。 こんにちは。@esuEichi です。 ツール開発チームというチームで普段は開発やディレクションをしたりしています。 このチームでは各種ツールを起案から製造まで行っています。 例えば今流行っているツール…

functions を使って firestore のGETをキャッシュしてコストを抑える #GameWith #TechWith #firebase

こんばんは! @peka3 です 今回の内容は、firestoreの読み込み結果をキャッシュしてインフラコストも抑えましょう、という話です 今回もfunctionsを利用します firestoreと利用料と怖いところ 2022/12現在の東京リージョンのfirestoreの利用料は以下のような…

firestore で物理削除を使うか、論理削除を使うか考える #GameWith #TechWith #firebase

こんばんは、peka3 と申します! 最近はポケモンSVでランクマッチに潜っています GameWithのポケモン交換掲示板も大変賑わっております!! 今回は firebase/firestore を使った投稿系サービスにおける「削除」の話になります 運用してきて思ったこと、気づ…

Amazon SQSを使って処理をキューイングするシステムを構築してみた #GameWith #TechWith #AWS #SQS

こんにちは! スケールアーキテクトチームの@shgx です。 今回はAWSのSQS(Simple Queue Service)を使って処理をキューイングするシステムを構築してみた話になります。 そもそもキューイングって何なのか?とか言うところもあるかもしれないと思うので、そ…

Autifyを用いたE2EテストをJSで工夫した話 #GameWith #TechWith #Autify

この記事は GameWith アドベントカレンダー2022 及び Autify アドベントカレンダー2022の5日目の記事です。 はじめまして!サービス開発部のdanaです。 GameWithではサーバーサイド開発を担当しています。 今回はE2Eテストで採用しているAutifyの話をします…

「振り返り」と「インプット会」による相乗効果 #GameWith #TechWith

はじめに チームの紹介 振り返り インプット会 どのような相乗効果が生まれたか 終わりに はじめに こんにちは。GameWith のエンジニアの tiwu です。 今年も始まりましたアドベントカレンダー! GameWith アドベントカレンダーの初日は自分が担当します! q…

マイクロアニメーションコンポーネントを実装しました #GameWith #TechWith #vue #vuejs #vuecli #lottie #lottieweb

こんにちは! @53able です。 今回は、再利用可能なマイクロアニメーションを実装した話を行っていきたいと思います。 Web コンポーネント(Web component) カスタム要素の data-animation 属性に指定したアニメーションが再生される仕様のコンポーネントを作…

社内でFlutterを採用しアプリと管理画面を開発した話 #GameWith #TechWith #Flutter

はじめに GameWithのクライアントアプリチームでリーダーをしているkyamです。 その前は価値検証チームというところで、色々新規サービスの事業検証などを行っていました。 先月、Flutterで作成したポケGO最新攻略&レイド招待ツールアプリをiOS・Androidア…

シューティングゲームの銃弾の当たり判定を作ってみる #GameWith #TechWith #Unity #C#

はじめに FPSゲームっぽくするにはどうする? 当たり判定とは? Unityで当たり判定を実現する方法 OnCollision OnTrigger Raycast Colliderの準備方法 Rigidbodyの準備方法 スクリプトの用意 OnCollision用スクリプト OnTrigger用スクリプト Raycast用スクリ…

Vue テンプレート上のイベントハンドラ引数からオブジェクト参照を渡す方法を考えました #GameWith #TechWith #vue #vuejs

こんにちは! @53ble です。 今回は、<template> 上からリアクティブプロパティの特定要素を更新させる UI が多数あった場合に、イベントハンドラ定義を減らす方法について話していきたいと思います。 概要 SFCの <template> ブロック内に記述されているイベントハンドラ引数から</template></template>…

GameWithエンジニア入社雑記(Case: shgx) #GameWith #TechWith

・はじめに こんにちわ!はじめまして、@shgxと申します。 今年の5月辺り、GameWithのサービス開発部に中途入社しました。 入ってからもう大体6ヶ月くらいになります。時間は早いものですね。 今回は入社してからの雑記みたいなものを、入社の経緯・オンボー…

リモートワークになって最近の働き方 #GameWith #TechWith #リモートワーク

あいさつ 担当している業務内容 1日の流れ 残業について 終わりに あいさつ こんばんは、 @peka3 と申します。 久しぶりの投稿です。 GameWithはコロナ禍以降、リモートワークを中心とした働き方になりました。 そこで、自分が今どういうサイクルで1日を過ご…

モジュールをオンデマンド自動インポートする仕組みを導入しました #GameWith #TechWith #typescript

こんにちは! @53able です。 今回は、VueCLI プロジェクトにおいてモジュールのオンデマンド自動インポートの仕組みを導入したお話をしていきたいと思います。 概要 TypeScript コード上で一部の import 文が省略できるようになります。 開発環境 プロダクシ…

複数の環境変数ファイルで変数定義存在チェックを自動化しました #GameWith #TechWith #vue #vuejs #vuecli

こんにちは。ご無沙汰しております。 @53able です。 今回は、静的コードチェックを強化したことについてお話しようと思います。 概要 環境変数定義のチェックを自動化し、変数定義の不足があればPull Requestに警告を出して不備に気づけるようにしました。 …

インフラ苦手エンジニアが Terraform にチャレンジしました #GameWith #TechWith

ご挨拶 はじめまして。 GameWith のエンジニアの esuEichi です。 ツール開発チームというチームで普段は開発やディレクションをしたりしています。 2021年3月に入社しました。入社時にやりたい仕事やキャリア観を聞かれた際、 「何でもやりますがインフラだ…

New GA でレポーティングを行うTips #GameWith #TechWith

はじめに こんにちは。GameWith のエンジニアの m です! このブログはアドベントカレンダーの20日目のブログになります! qiita.com 今回は New GA について記事を書きます! New GA とは 2020年10月14日に正式リリースされた次世代版の Google アナリティ…

動画の操作のログを送信する #GameWith #TechWith

はじめに 動画のログについて 再生 サンプルコード autoplay プロパティによる自動再生 停止後、再生が行われた時 終了後、再生が行われた時 停止 サンプルコード 停止した時 終了した時 終了 サンプルコード 音量 サンプルコード 最大化 サンプルコード 余…

2021年 GameWith の技術広報の1年間の振り返りとこれから #GameWith #TechWith

こんにちは。GameWith のエンジニアの tiwu です。 今年も始まりましたアドベントカレンダー! 1発目のブログは去年に引き続き、今年1年間の技術広報活動を振り返っていこうと思います! qiita.com Blog 今年(2021年12月1日時点)の投稿数は 13 本でした! 去…

GameWith のログの実装について #GameWith #TechWith

はじめに ログの環境周り 実装例 例1 例2 例3 終わりに Twitter Wanted! はじめに こんにちは。GameWith のエンジニアの tiwu です! 今回のブログは普段の開発の際にどのようにログの実装をしているか解説していきたいと思います。 ログの環境周り GameWith…

ゲームをより楽しむための攻略ツール開発コンテストを開催! #GameWith #TechWith

はじめに こんにちは。GameWith のエンジニアの tiwu です! 今回のブログは現在エントリー募集中のツール開発コンテストについて紹介していきます。 ツール開発コンテスト この度 GameWith では、ゲーム攻略のためのツール開発コンテストを開催いたします。…

コネクテッドシート導入時に意識したい料金について #GameWith #TechWith #ConnectedSheet

はじめに Connected Sheetとは 経緯 料金に関しての調査結果 料金が発生する場所 料金が発生しなかった場所 料金を軽減する為に意識したい事 補足 コネクテッドシートが有効なケース 機能概要 最後に Twitter Wanted! はじめに GameWithディレクター兼分析チ…

GDS のビルド方式をパッケージビルド方式に変更しました #GameWith #TechWith

はじめに こんにちは!スケールアーキテクトチームの @53able, @inosy22, @nog です! 今回は GDS のビルドの構成を変更したので、紹介していきたいと思います! GDS についてはこちらのブログで紹介していますので、御覧ください。 tech.gamewith.co.jp 課…

GameWith の フロントエンド を TypeScript へマイグレーションする #GameWith #TechWith

はじめに こんにちは!Incremental Stream Team の @53able です! 今回は現在自分が着手中の TypeScript マイグレーション PJ について書いていきたいと思います! GameWith の JavaScript まず GamewWith の JavaScript について紹介していきたいと思いま…

ペア・モブ作業(見積り・設計・プログラミングなど)の紹介 #GameWith #TechWith

はじめに チーム・開発サイクルの紹介 モブ見積り ペア設計 ペアプログラミング コードレビュー テスト 終わりに Twitter Wanted! はじめに こんにちは。GameWith のエンジニアの tiwu です! 以前モブ設計・モブ見積りについて紹介しました。 tech.gamewith…

開発速度・パフォーマンスを可視化する #GameWith #TechWith

はじめに 開発チームの紹介 計測 デプロイ頻度 変更のリードタイム IceBox ~ Sprint Backlog Sprint Backlog ~ Close 実装 GitHub API ZenHub API GAS DataStudio 終わりに Twitter Wanted! はじめに こんにちは。GameWith のエンジニアの tiwu です! 今回…

GameWith サービス開発だけではない話(1) #GameWith #TechWith

こんにちは!Incremental Stream Team の @53able です! 今回は、GameWith 開発するエンジニア採用強化のため、我々開発組織固有の雰囲気をカジュアルな形でより知っていただくように、 一緒に働くことをイメージできるきっかけになればと考えて GameWith …

エンジニアの採用情報をまとめた GitHub Repository を公開しました #GameWith #TechWith

ごぶさたしています。@serima です。 このたび GameWith では採用情報をまとめた GitHub Repository を公開しました。 github.com 採用に関する情報の分散化問題 GameWith ではエンジニアを積極採用中ですが、いざ採用候補者の立場にたってみると情報が各所…

ウマ娘フレンド募集掲示板の Firestore 設計と検索 #GameWith #TechWith

はじめに こんにちは。GameWith のエンジニアの tiwu です! 自分が所属しているチームではいくつか攻略ツールを実装しており、去年はあつ森交換掲示板をリリースしたりしました! その際のブログはこちらになります! tech.gamewith.co.jp 今回はウマ娘フレ…

GameWith 開発部で取り組んでいる「業務アピール会」について #GameWith #TechWith

はじめに ご無沙汰しております。GameWith の開発マネージャー @serima です。 最近は 5 歳の息子と一緒にフォートナイトの実況動画をリビングのテレビに映しながら夕飯を食べるというエキサイティングな私生活を過ごしています。 さて、今回のブログは開発…