ブックマーク / engineering.cocone.io (16)

  • 【テックリードインタビュー後編】 エンタメ企業としてのSRE

    2023年夏より始まったココネエンジニアの新体制。 開発メンバーのマネジメントを担うエンジニアリングマネージャー(EM)を新たに設けることで、テックリード(TL)と役割を分担させ、グローバル展開に向けた組織強化を図ってきました。 これまで下記の投稿から、EM/TL、そしてCTOそれぞれの視点から新体制で得られたこと、課題や葛藤などについて紹介してきました。 「【テックリードインタビュー前編】より技術と向き合うために、マネジメントの役割を分けてみて」 「エンジニアリングマネージャー3人に聞いてみた10の質問」 「エンジニアリングマネージャー体制の成功と、生成AIについて考える」 特に役割の分担によって生まれた作業や時間の余裕から、チャレンジングな取り組みを積極的に生み出せる土壌が整いつつあることは、新体制による喜ばしい結果だと考えます。 TLインタビューの後編となる今回は、まさに新体制によっ

    【テックリードインタビュー後編】 エンタメ企業としてのSRE
    yug1224
    yug1224 2024/04/11
  • エンジニアリングマネージャー3人に聞いてみた10の質問

    EMの重要性、今後の課題、開発者としての葛藤について 以前投稿した記事「エンジニアリングマネージャー(EM)体制の成功と、生成AIについて考える」では、当社のEM体制に至った経緯や途中経過の概要をお伝えしました。 今回ご紹介するのは、ココネのEM体制に関してさらに深堀りした話です。 事業部ごとに任命された3人のEMに、これまでの取り組みやEMの重要性、そして開発とマネジメントの間で揺れる葛藤などについて話を聞きました。 <ココネEMメンバー> ▲左から岡田、齋藤、川瀬。それぞれ数年単位で運営されるサービス(事業部)のEMに昨夏就任。齋藤はEMリーダーを兼任している。 開発者として葛藤もあったが、チームの力が伸びる楽しみややりがいを知っていた ー ココネにおけるEMの役割は? [齋藤] ひと言で言うと、エンジニアという人たちと向き合う仕事かなと思います。ココネのEMはチームリーダーも兼ねてい

    エンジニアリングマネージャー3人に聞いてみた10の質問
    yug1224
    yug1224 2024/03/07
  • エンジニアリングマネージャー体制の成功と、生成AIについて考える

    2023年、超速で進化しつづけるAI技術を筆頭に、エンジニア界隈では多くの変革や革新があったかと思います。 同じくココネも大きく変化・成長した一年でした。 事業組織の強化を図るため、5月にホールディングス化。グローバル展開を格始動し、最先端の技術も採り入れた海外向けのアバターサービスも複数展開しました。 ココネのエンジニア陣もここ数年で100人ほどのチーム規模にまで成長。組織強化に向けて昨年初めて設けたエンジニアリングマネージャー(EM)体制や、Copilotを含むAI技術の導入など、当社のなかでも大きく変化した組織のひとつとなりました。 今回、CTOに昨夏就任した倉とEMのリーダーを務める齋藤に、エンジニア組織強化の成功事例ともいえるEM体制、そしてAI技術の導入について話を聞いてみました。 <プロフィール> 倉 秀一 / CTO 2003年 株式会社コナミデジタルエンタテインメント入

    エンジニアリングマネージャー体制の成功と、生成AIについて考える
    yug1224
    yug1224 2024/02/16
  • GitHub Copilot Chat だけでガチャプログラムを作ってみた

    皆様こんにちは。 サーバーエンジニアのOと申します。 弊社では GitHub Copilot および GitHub Copilot Chat の導入が順次進んでおり、業務において自由に活用できます。 この記事の執筆は11月上旬なのですが、Copilot Workspace が発表されるなどエンジニアとってコード生成AIを使いこなすスキルは近いうちに必須となるでしょう。 この記事では、GitHub Copilot Chatを使ってプログラムコードを書かずにガチャプログラムを作ってみたいと思います。 最初に結論 充分に実用的なプログラムが作れます。 10分程度で基的なガチャ抽選ロジックが自動テスト込みで書けました。 人間相手ではないので、回答が気に入らなかったらどんどん後出しで条件を追加し、修正させれば良いです。 GitHub Copilot Chat とは GitHub Copilot と

    yug1224
    yug1224 2024/02/01
  • 雑誌 Software Design 2024年2月号:インタビュー 「最新テクノロジーでサービスを構築したメリット」辛東根・金政澤【後編】

    雑誌 Software Design 2024年2月号:インタビュー 「最新テクノロジーでサービスを構築したメリット」辛東根・金政澤【後編】 2024年1月26日 前編はこちら 第8回 最新テクノロジーでサービスを構築したメリット 3Dベースでデジタルアートトイの収集を楽しむ『C.A.T. Club』。2023年9月にリリースしたばかりの新しいアプリなので、最初からAWS FargateやMongoDB Atlasなど新しいサービスを採用し、運用の効率化を図っている。どのような効果が得られているのか。詳細をココネ グローバルスタジオ 辛東根氏と同 金政澤氏に聞く。 ━━自己紹介と担当をお願いします。 辛東根(以下、辛)  ココネ グローバルスタジオ C.A.T. Clubプロジェクト 開発チーム クライアントテックリードを務めている辛東根(シン ドングン)です。 金政澤(以下、金)  同じ

    雑誌 Software Design 2024年2月号:インタビュー 「最新テクノロジーでサービスを構築したメリット」辛東根・金政澤【後編】
    yug1224
    yug1224 2024/01/27
  • Qiitaアドベントカレンダー2023を振り返る

    こんにちは!エンジニアリングマネージャーのSです。 2022年にココネでは初めてQiitaのアドベントカレンダーに参加し、昨年末も2回目となる参加を致しました。 年は明けてしまいましたが、カレンダー1つ分、25名の記事について、簡単ではございますがこちらに紹介させて頂きます。 記事の紹介 12/1 2023年後半 ココネ開発組織の取り組み [著者]@kura_shuichi [内容]トップバッターはCTO倉による、2023年のココネの開発組織をスケールさせるにあたっての改善の取り組みの内容が書かれています。組織拡大に伴う開発リーダーの負荷、という世間的にもよくある課題をどう捉え、どのように改善していったのかが書かれています。 [感想]TLもですが、特にEMメンバーが円滑に決まったのがココネらしさを感じて良い話だなと思ったりします。人に恵まれております。 12/2 re:Invent 202

    yug1224
    yug1224 2024/01/24
  • マージリクエストの書き方について

    こんにちは、ポケコロツインプロジェクトでクライアントエンジニアをやっているKです 早速ですが、みなさんはコードレビューをやっていてモヤっとしたことはないでしょうか? 例えば、人によってプルリクエスト(マージリクエスト)の書き方や大きさが違って、「何をやりたいかわからないけど、なんか問題なさそうだから、ヨシ!」となってしまった記憶など・・・ 今回はその問題を解決するための取り組みとして私たちのプロダクトで行った、マージリクエスト(以降MR)の記載内容のルール化について書かせていただこうと思います! 私たちのプロダクトではMRのテンプレートを使って、被レビュー者がレビュー前に記載する内容のルールを作っています。 まずは最初にお見せした方がイメージしやすいと思うので、以下に実際に使用しているテンプレートの一部を掲載させていただきます。 # 目的 *こちらに改修の仕様、バグのチケット、相談内容や背

    yug1224
    yug1224 2023/12/26
  • 雑誌 Software Design 2023年12月号:インタビュー「『リヴリーアイランド』リブート後の改善への取り組み」井上真悟・髙藤佑馬【後編】

    この記事は「Software Design 2023年12月号」に掲載された記事を許諾を受けて転載しています。 Web3の新時代を拓く ココネのエンジニアリング力を探る 世界に愛されるデジタルワールドでトップレベルの実績 【前編】の記事はこちら 第6回 『リヴリーアイランド』リブート後の改善への取り組み 2003年に誕生した人気のペット育成アプリ『リヴリーアイランド』は2019年にいったん終了したものの、ココネが権利を取得し、2021年7月にスマホアプリとしてリブート(再始動)することになった。リリースから1ヵ月で30万ダウンロードを記録するなど、予想以上の人気にチームはサーバ負荷の対策に追われたことも。今回はリリース後の改善の取り組みについて、ココネ リヴリープロジェクト 井上真悟氏と同 髙藤佑馬氏に聞く。 ━━自己紹介をお願いします。 井上真悟(以下、井上)   ココネ リヴリープロジ

    雑誌 Software Design 2023年12月号:インタビュー「『リヴリーアイランド』リブート後の改善への取り組み」井上真悟・髙藤佑馬【後編】
    yug1224
    yug1224 2023/11/28
  • Go並列実行時のmapについて

    お疲れ様です。サーバーエンジニアのSです。 今回は業務で体験した、普段は正常に稼働しているのに数回に1回しか発生しないので発覚しづらいエラーについて、原因と解決方法についてご紹介できればと思います。 事象と原因 Gogoroutineなどを使用して並列処理を行っている場合、mapの読み込み中にmapへの書き込み処理が走るとpanicが発生します。 以下を実行すると実際にエラーを発生させる事ができます。 import ( "fmt" ) func main() { m := map[string]string{} fmt.Println("START") for i := 0; i < 10000; i++ { go func() { m["key"] = "value" }() } fmt.Println("END") } START fatal error: concurrent ma

    yug1224
    yug1224 2023/08/13
  • 雑誌 Software Design 2023年6月号:インタビュー “世界のプレイヤーを相手にじゃんけん対戦を楽しんでもらうために” 堀尾大地・戸丸良【後篇】

    堀尾  1対1のじゃんけん対戦をリアルタイムで行い、先に2勝したほうが勝ちとなります。シンプルで気軽に楽しめるサービスですが、配られたグー・チョキ・パーのカードをどのように出すかという戦略を練るおもしろさもあります。対戦相手は世界中のプレイヤーからランダムに割り当てられます。 戸丸  格闘ゲームやレースゲームほどシビアではありませんが、リアルタイム対戦を実現するために、通常のAPI呼び出しとは異なる設計・実装が必要となります。 リアルタイム対戦の実装手法について 堀尾   リアルタイム対戦が要件となるものはココネではあまりやっていないので、最初は模索が続きました。gRPCを使う必要があるだろうと目星を付けたあたりで戸丸さんがチームに合流してくれました。リアルタイム処理の経験があったんですよね? 戸丸  子どものころからゲームが好きで、とくにMMORPG(Massively Multipla

    雑誌 Software Design 2023年6月号:インタビュー “世界のプレイヤーを相手にじゃんけん対戦を楽しんでもらうために” 堀尾大地・戸丸良【後篇】
    yug1224
    yug1224 2023/06/07
  • 子要素の数によってスタイルを変更させる

    こんにちは。ウェブ開発室でフロントエンド業務を担当している石井です。 最近、Netflixで配信されているサイバーパンク: エッジランナーズというアニメを観ましたが、面白すぎて久しぶりに夜通しで一気観してしまいました٩( ᐛ )و 年齢制限のある作品なので、過激な表現もありますが、TRIGGERが好き、サイバーパンクの雰囲気が好きという方にオススメのアニメです! 今回の記事では「CSSで子要素の数によってスタイルを変更させる」方法について、ご紹介します。 DEMO 百聞は一見にしかずと言うので、まずは事前に用意したDEMOをご覧ください。 See the Pen dynamic-style by Yusuke Ishii (@ishii_cocone) on CodePen. 解説 <!-- 子要素が1個 --> <div class="container"> <div class="it

    yug1224
    yug1224 2022/11/25
  • ソフトウェアの品質向上のためのQA手法

    こんにちは、ココネQA室のIです。 今回は、ココネにおける品質保証にフォーカスし ソフトウェアの品質向上のためのQA手法の一部を紹介してみたいと思います ソフトウェアテストの7原則の話をしようかとも思ったのですが、もっと(会議室じゃなくて!)現場で起こっていること、現場で役に立つ考え方を紹介できればと。 ※「QAって何?」と思った方は、是非ともコチラ(以前のQAの投稿)をご覧ください。 ①品質を向上させる為にできること ひとえに「品質」と言っても、コンテンツや組織によっても様々なイメージがあると思います。 ここでの「品質」は「エンタメアプリにおいて、お客様が操作される状況で遭遇する不具合の多寡」と置きます。つまり、その不具合を最小限にすることが品質を向上させることであり、QAに求められる役割ということになります。 そのためにQAが行うこととして、リリースされる前の動作チェック(テスト)はも

    yug1224
    yug1224 2022/11/01
  • json-generatorでテストデータを作成してみる

    こんにちは!cocone connectでクライアントプログラマーを担当している I です。 ソフトウェア開発において、実装したコードが想定通りに動作しているか確認したい時、テストデータが必要なケースってあったりしますよね。 検証に必要なデータを一から自分で作成する方法もありますが、データ生成ツールなどを使用してテストデータを自動生成できれば、作業時間を減らすこともできて便利です。 そこで今回は、ソフトウェア開発において汎用性の高いjsonデータを自動で生成するTipsを紹介したいと思います。 記事で使用するテストデータ自動生成ツールは、”JSON Generator” です。 まずはhttps://json-generator.com/のURLを開いて頂くと、下記のようなコードが直接編集可能なエディター上に表示されるかと思います。 [ '{{repeat(5, 7)}}', { _id

    json-generatorでテストデータを作成してみる
    yug1224
    yug1224 2022/10/26
  • コードの整理、その前に

    こんにちは、cocone connectでサーバ開発を担当しています、原です。 突然ですが、開発をしていると「ここのコード、もうちょっと良くしたいな」って思うこと、ありますよね。 ただ、“コードを改善する”と言ってもその観点によって様々な対応があって、なかなかどこから手を付けて良いのか、途方に暮れてしまう事も多いかと思います。 特に、エンジニアとしてコードを書き始めて数年の方などは、先輩から「このあたりのコードちょっと汚くなってきてるからリファクタしておいて」などと依頼された際、具体的に何をすれば良いのか分からず困ってしまう事もあるのではないでしょうか。(私の実体験です…笑) 今回はそのような方々へ向け、具体的な改善の方針を決める前にコードの見通しを良くし、パターン化しやすく、普段の設計・実装にも活かせる、(より大きな改善可能点を見つけるための前段階の整理として意識している事が多い)全体を

    yug1224
    yug1224 2022/07/05
  • ECS on EC2のDatadog監視設定の話

    こんにちは、ココネのサービスインフラを担当しているSです。 今回は新プロジェクトのECSクラスターで動かしているコンテナを、Datadogで監視する設定方法をご紹介できればと思います。 (DatadogはクラウドSaaS型運用監視サービスで、インフラ・APM・ログを一元管理・監視できる特徴があります。) ホストにDatadogAgentをインストール・設定する方法 最初Alpha環境のECSはEC2インスタンスを一台のみ起動してますので、直接ホストサーバにDatadogAgentをインストールし、コンテナを監視しました。 構成

    yug1224
    yug1224 2022/06/23
  • MongoDBのインデックスについて

    はじめまして、ココネでインフラ・データベースを担当しているYです。 ココネではメインDBとしてMariaDBとMongoDBを使っていますが、今回はMongoDBのインデックスについてお話しできればと思います。 MongoDBのインデックスはRDBのB-Treeインデックスと似ていますので、それをベースにいくつかのTipsをご紹介します。 インデックスの管理コスト クエリのパフォーマンスを高めるためにコレクションにインデックスを追加しますが、インデックスは維持するのに管理コストがかかるものです。 コレクションにデータを登録するコストを1とすると、インデックスキーを追加するコストは一般的に1〜1.5くらいだと予想されます。 例えばインデックスが3つあるコレクションにデータを登録すると、そのコストは約5.5(1 + 1.5 * 3)くらいになります。 インデックスの数が増えれば増えるほどデータ

    yug1224
    yug1224 2022/06/21
  • 1