JenkinsからGitHub Actionsへの移行で実現したマルチプラットフォームCIの改善

CI

こんにちは。ソフトウェアエンジニアのすぎしーです。ClientCI WG (Client Continuus Integration Working Group)というclusterのクライアントアプリのCI環境を社内向けに提供するWGのオーナーも務めています。 clusterアプリではWindows版(VR含む)、Mac版、…

オンラインマルチプレイのUnityクライアントの負荷試験環境

はじめに アーキテクチャ 負荷試験モード オンラインマルチプレイのテストとデバッグの難しさ おわりに はじめに こんにちは、クラスター株式会社のソフトウェアエンジニアのsotanです。今回はclusterのUnityクライアント開発に使われている負荷試験環境につ…

Unityクライアントのパフォーマンス改善の進め方

はじめに パフォーマンス改善についての参考文献 実機計測 フィーチャーフラグ 計測・プロファイリング 効果見積 効果計測 おわりに はじめに こんにちは、クラスター株式会社のソフトウェアエンジニアのsotanです。今回はUnityクライアントのパフォーマンス…

feature flag管理にAWS AppConfigを導入した

昔のflag管理 AWS AppConfigの導入 feature flagの管理 feature flagの利用 まとめ ソフトウェアエンジニアの浦川です。 clusterではサービス開発にfeature flagが活用されており、常時10+個程度のflagが並行して使われています。 これまでflagはgoのコード…

社内からの不具合報告をSlackワークフローを使って改善した話

こんにちは、プロダクトマネージャー(PM)のいかりです。今回の記事では、プロダクトに対しての社内からの不具合報告のフローを改善した話について紹介します。 「社内からプロダクト改善のために色々な声をもらっているけどどう対応しよう……」と困っている…

リアルタイム通信サーバーのEC2インスタンス台数を50%削減した割り当て最適化

こんにちは、クラスター株式会社でソフトウェアエンジニアをしているMito Memelです。 clusterでは、3D空間内でアバターモーションや音声を同期するためのリアルタイム通信サーバーをAmazon EC2上で動作させています。昨年から今年にかけて、このリアルタイ…

Swift Package ManagerでRenovateを利用する際の工夫点

iOS

はじめに Renovateとは? 依存関係をPackageに切り出す GitHub ActionsでPackage.resolvedを更新する おわりに はじめに こんにちは。クラスター株式会社でソフトウェアエンジニアをしているTAATです。 今回はクラスターで導入しているRenovateというパッケ…

tech blog編集担当になって1年目を振り返る

こんにちは。tech blog編集チームのFUKUDAです。 今年の4月頃からクラスター社のtech blogの編集を担当することになりました(普段はclusterで活動するクリエイター向けのメディアを運営しています。そちらも振り返り記事を書いているので、ぜひ!)。今年は…

Working Group, 委員会, それから勉強会

こんにちは クラスター株式会社で Engineering Manager(EM) をしている kurain です。 今日は、クラスターのエンジニアが参加する会議体について紹介します。会議体の作り方について長々続くので、先にまとめを書いておくと エンジニアが自律的に開発プロセ…

無停止で機能開発を継続した、clusterのシステム分割事例

クラスター株式会社でSoftware Engineerをしている thara です。 私たちは今年、clusterのシステム分割という重要なプロジェクトを完了しました。この取り組みは、私たちのメタバースプラットフォームの進化と持続可能な成長にとって欠かせないものでした。 …

clusterのログの検索、可視化の取り組み

メタバースプラットフォーム「cluster」のインフラチームの佐藤です。今回はclusterではログをどのように扱っているかをインフラ観点からご紹介します。 ログは安定したサービス提供を行うために役立つ基本的な要素です。初期の素朴な構成で発生した問題点や…

クラスター Advent Calendar 2023はじまっています!

こんにちは、メタバースプラットフォーム「cluster」を開発・運営するクラスター株式会社です。 今年もクラスター社のAdvent Calendarがはじまっています!バーチャル空間やアバター、デザイン、ワールド制作、働き方、組織開発などさまざまなトピックの記事…

Managed Stripping Levelを変更する隙にRoslyn Analyzerを導入した話

はじめに きっかけ Managed Stripping Levelを変更する際の課題 Reflection APIを使っているコードが動かなくなる 既存のワールドが動作しなくなる 並行開発中のコードが壊れる Roslyn Analyzerを導入する Roslyn Analyzerの運用上の問題 結果とまとめ はじ…

clusterの加速に耐えうる柔軟な通知機能を追加したはなし

はじめに 通知機能の概要 設計の話 さまざまな通知内容に対応するための仕組み 未読通知の管理 通知をまとめる仕組み その他工夫したこと 通知を追加する方法やポイントをドキュメント化 データの有効期限を設け、データ量が爆発したときにスムーズに消し込…

「メタバースのデータ分析とはなにをやっているのか」『急成長ベンチャーデータ人材の「アレ」を語る会』登壇レポート

2023年9月26日に行われた、データアナリストやデータ分析に興味がある方に向けたイベント『10X,ルーデル,cluster|急成長ベンチャーデータ人材の「アレ」を語る会』 tech-track.connpass.com クラスターからは、データアナリストの今井が登壇し「メタバース…

Goの自動テスト高速化のための調査と改善手法

Go

はじめに こんにちは、クラスター株式会社でソフトウェアエンジニアをやっているid:shiba_yu36です。 クラスターではGoの自動テストをCircleCIで実行しています。入社して以降、この自動テストの実行時間が少し長いと感じたため、調査と改善を進めてきました…

MainActivityのJetpack Compose化が上手くいった話

はじめに こんにちは!今年の1月からクラスター社でソフトウェアエンジニアとして働いているryomaです。 クラスター社のAndroidアプリ開発チームでは、2021年からコツコツとJetpack Composeへの移行を進めており、先日ついに全画面の移行が完了しました。 そ…

メタバースプラットフォームを支えるiOS開発と運用 / iOSDC Japan 2023登壇レポート

こんにちは!クラスター株式会社でソフトウェアエンジニアをやっているTAATです。今回はiOSDC Japan 2023にスポンサーセッションで登壇させていただきましたので、久しぶりのオフライン参加の様子や発表した内容について紹介します。 iOSDC Japanとは? iOSD…

課題解決マシーン化を防ぐ - クラスターのプロダクトマネージャーチーム役務の再定義

はじめに こんにちは、2023/05 にプロダクトマネージャーとしてクラスターにジョインした Smith です!入社ブログを書こうと思ってサボってたらテックブログを書く機会を頂きました、因果応報! この記事では掲題の通り、クラスターのプロダクトマネージャー…

クラスターの開発改善活動~Unity屋さんとコードレビュー~

序文 こんにちは、クラスター株式会社でソフトウェアエンジニアをやっている獏星(ばくすたー)です! さっそくですが、クラスターは3D空間を扱うメタバースを開発しており、Unity Engineを基盤としています。社内には20~30人程度のUnity Engineerが在籍してい…

「はてなブログ DevBlog Meetup #1」に参加しました #HatenaDevBlog

2023年7月24日(月)に行われた「はてなブログ DevBlog Meetup #1」に参加してきました。 またまだ運用模索中の「Cluster Tech Blog」 今回のイベントで聞いたことを、今後の運営にも活かせればと思い、備忘録としてまとめてみました。

クラスター社のリモートワーク環境紹介 (ソフトウェアエンジニア編)

前口上 こんにちは。主にサーバーの開発を担当している id:Sixeight です。 クラスター株式会社ではソフトウェアエンジニアはリモート勤務が基本となっていて、多くの社員が自宅から勤務しています。普段は画面越しにやり取りをしつつ、月に一度、全員がオフ…

サーバーサイドのリリースフローを改善したはなし

はじめに ソフトウェアエンジニアの浦川です。クラスターでは毎週のようにサービスへの機能追加や改善をおこなっています。合わせて、どのようにリリースしていくか、の改善も日々おこなわれています。この記事では、サーバーチームのリリースフロー改善の取…

「SELECK」にclusterのバーチャルな働き方や、開発組織づくり等について語った記事が掲載されました

「SELECK」にclusterの開発組織づくりについて語った記事が掲載されました。 弊社CTOの田中宏樹と、弊社エンジニアリングマネージャーの倉井龍太郎がclusterのリモートを駆使したバーチャルな働き方や、開発組織づくりについて語っています。 ぜひご一読くだ…

メタバースを開発する企業でロボットを制作した話──エイプリルフールメイキング

はじめに クラスター社の2023年エイプリルフール企画は「『あ~んVR』発売決定」と題し、バーチャル空間と連動して食事を食べさせてくれる物理デバイスを開発・販売する、という内容でした。 ◤速報 #あ~んVR 発売決定◢現実とバーチャル空間がリンクし食事が…

メタバースプラットフォーム開発におけるSwiftUIの活用とTips / Extended Tokyo - WWDC 2023登壇レポート

こんにちは!1月にクラスターにジョインしたTAATです。 今回はExtended Tokyo - WWDC 2023というWWDCをもっと楽しむためのイベントに参加し、LTで登壇させていただきましたので、イベントの様子や発表した内容について紹介します。 Extended Tokyo - WWDCと…

Google Cloudを活用した、clusterのデータ収集基盤「Panama」の紹介

メタバースプラットフォーム「cluster」のプラットフォーム事業部インフラチームの佐藤です。 clusterではクリエイターの皆様が創造力を発揮できるよう、またユーザーの皆様がよりclusterでの体験を楽しんで頂けるように日々機能開発、改善を行っています。…

「Qiita Night~AWS vol.2~」で「Amazon Managed Service for Prometheusへ移行した話」というテーマで登壇・発表しました

エンジニアコミュニティ「Qiita」を運営するQiita株式会社が運営するイベント「Qiita Night~AWS vol.2~」でクラスター社のソフトウェアエンジニア・浦川智洋が登壇して発表しました。 increments.connpass.com 当日の発表資料は下記になります。 speakerde…

技術的負債を返済しつつmocopi対応した話

VR

こんにちは!クラスター社でUnityエンジニアをしているNatsukiです。今回は、私が担当したmocopi対応というepicについてお話しします。 特に、技術的負債を返済しつつ対応できたのが今回のepicの個人的なハイライトなので、そのことについてお話したいと思い…

Questアプリ内購入のサーバー実装でつまづいたところ

こんにちは!クラスター株式会社でソフトウェアエンジニアをしているえんじです。 クラスター株式会社には昨年10月頃に入社し、前職ではモバイルアプリのサーバサイドエンジニアとしてAPIの開発や社内ツールの開発などを行っていました。 転職後の初めてのep…