タグ

ブックマーク / engineering.dena.com (20)

  • ほとんど個人開発しかやってこなかった人がチームで働くとどうなると思う? | BLOG - DeNA Engineering

    こんにちは、IT戦略部システム開発グループ所属のyoshiiです。 私は学生時代ひたすら個人開発をしており、就活もこの活動一で行なってDeNAに入社しました。 今回はほとんど個人開発しか経験していなかった私が、研修や実際の業務の中で、チームで働いて失敗したことや成長できたことなどをゆるく書けたらいいなと思っています。 誰得な記事になるかもですが、どうか最後まで読んでいただけると幸いです。 特に読んで欲しい人 趣味開発はやってきたけど、仕事でコード書いた経験はなくて不安な学生さんに特に読んで欲しいと思って書いています。 もちろんそれ以外の人も読んでいただければ嬉しいですが…! 個人開発に対するスタンスとこの会社に入った決め手 今回のお話をする前に、私がどういうスタンスで趣味個人開発と向き合ってきたかを説明しておきます。 私にとって個人開発をするスタンスは「自分が面白ければなんでも良い」し

    ほとんど個人開発しかやってこなかった人がチームで働くとどうなると思う? | BLOG - DeNA Engineering
  • Slab キャッシュの使用量が増加した原因を SystemTap で調査した [DeNA インフラ SRE] | BLOG - DeNA Engineering

    2022.07.28 技術記事 Slab キャッシュの使用量が増加した原因を SystemTap で調査した [DeNA インフラ SRE] by Hidetaka Masuda #infrastructure #sre #troubleshooting #stateless-server #iaas #game-infrastructure #infra-quality IT 基盤部の増田です。新卒2年目で業務では主にモバゲーや社内向け SaaS のインフラ運用を行っています。 記事ではサーバーのメモリ使用量増加の原因を SystemTap で調査したときの話を紹介します。 この記事を通して、手掛かりを元に少しずつ核心に近づいていく、謎解きゲームのような楽しさを感じていただければと思います。 問題発生 調査を開始したきっかけは、サーバーのメモリ使用量増加のアラートが頻繁に鳴るようになっ

    Slab キャッシュの使用量が増加した原因を SystemTap で調査した [DeNA インフラ SRE] | BLOG - DeNA Engineering
  • 次世代データベース TiDB の検証とその評価 [DeNA インフラ SRE] | BLOG - DeNA Engineering

    ※こちらは先日実施された DeNA インフラエンジニア / SRE MEETUP で話した内容を Blog 記事化したものです! こんにちは!IT基盤部の熊谷です。IT基盤部にて大規模ゲームのインフラを見ている 新卒2年目のインフラエンジニアです。この記事では “DeNA でのデータベース運用とそのツラミ” と、“TiDB導入への検証・検討” をご紹介させていただきます。 データベースの最適解 DeNA のデータベース構成は最適解を求めて改良を積み重ねてきました。最初期の構成、(便宜上、第1世代と呼びます) では VM Instance 上に MySQL を構築し管理する MySQL on EC2 構成。続く第2世代では、マネージドサービスを駆使した Aurora MySQL 構成。この2世代の中で生じた “ツラミ” を解消する次の世代、言わば 第3世代に該当する新しいデータベース構成を現

    次世代データベース TiDB の検証とその評価 [DeNA インフラ SRE] | BLOG - DeNA Engineering
  • 大規模Email配信システムのクラウドジャーニー | BLOG - DeNA Engineering

    こんにちは、AI 基盤部の大谷です。 最近は兼務で MLOps 以外にも様々なシステムを構築しています。 弊社では全社的にオンプレミスからクラウドに、よりマネージドに寄せていこうという大きな指針が定められています。 (参考: フルスイングの記事 ) しかし、古くから運用されているサービスなどでは、未だにオンプレミスで構築されているものも少なくありません。 また、クラウドにホストされている場合でも、マネージドサービスを完全に活用しきれていない場合もあり、EC2 ベースの IaaS な構成はまだまだ多く存在しています。 とあるサービスでも、クラウド化はされているものの、マネージドサービスを活用しきれていないメール配信システムが運用されていました。 一般にメール配信システムは、挙動の違う複数のメールプロバイダにスムーズに配信するために多くのことを気にする必要があり、その分管理コストも高くなりがち

    大規模Email配信システムのクラウドジャーニー | BLOG - DeNA Engineering
  • 仕様整理のためのテスト設計入門をJaSST'21 Tokyoで発表しました | BLOG - DeNA Engineering

    はじめに 品質管理部の河野です。先日、 ソフトウェアテストシンポジウム 2021 東京 の企画セッションで「仕様整理のためのテスト設計入門」というタイトルで発表してきましたので、ブログでは発表に至った経緯や発表の感想などを報告いたします。 発表の経緯 まず、タイトルを見た方は、仕様を整理するためにテスト設計を使うのか? と考えられたと思いますが、その通りでテスト設計はテストケースを設計する行為なのですが、実はテストケースを設計する過程で仕様を整理していることが多いです。ということで、テスト設計のための技術である、テスト設計技法を理解しながら、演習を交えて仕様の整理を実感できるような構成でチュートリアル形式で90分の発表を行いました。 それで、このようなテーマを思いついたきっかけは、私が以前作成したテスト設計の入門のテキストを近くの開発者の方に「開発者向けにやったら需要ありますか?」と質問

    仕様整理のためのテスト設計入門をJaSST'21 Tokyoで発表しました | BLOG - DeNA Engineering
  • 若手から見たリモートワーク時代のチームビルディング | BLOG - DeNA Engineering

    2020 年 4 月にコロナの影響による緊急事態宣言が発令されて久しい今日この頃ですが、多くの会社でリモートワークが余儀なくされ働き方が大きく変わりました。 DeNA がリモートワーク可能な体制へと迅速に切り替えていく中で、私自身リモートワークによる業務が9割以上を占めました。私や私の所属するチームだけでなく日中でも働くことに対する考え方が大きく変わるタイミングだったのではないでしょうか。(DeNAでは緊急事態宣言が発令される前には全社的にリモートワークがすでに可能なレベルにまで整備され、とてもスピーディーにリモートワークへと移行できました。制度や勤務体制など様々な整備をしてくださったことにとても感謝しています。) その中で、私たちがチームのコミュニケーションや課題を改善するためにどう工夫したのかをお伝えすることで読んでくださる方のチームのチームビルディングの一助にして欲しいと願っていま

    若手から見たリモートワーク時代のチームビルディング | BLOG - DeNA Engineering
  • Cloud Functions をローカル環境で統合テスト可能にした話 | BLOG - DeNA Engineering

    はじめまして。AIシステム部MLエンジニアリンググループ で学生インターンをしている 早坂( @takemioIO ) です。 普段はパケット処理などをやっているのですが、縁あってここでは MLOps の通常業務に携わっております。 私は二ヶ月間インターンとして開発に取り組んでいました。ここではその実装物の一つを紹介します。 この AI システム部 のとあるプロジェクトでは、 Cloud Functions と Cloud Pub/Sub を利用したデータパイプライン を構築しております。 そのプロジェクトは毎日のように変更が取り込まれ、非常に開発が盛んですが一方それゆえに破壊的な変更で足を撃ち抜いてしまいそれによって悩まされることがありました。 さらにはクラウドサービスを利用してるという部分からローカルでの検証環境がありませんでしたので、毎回 GCP に デプロイするしかなく、トライアン

    Cloud Functions をローカル環境で統合テスト可能にした話 | BLOG - DeNA Engineering
  • 実行時間を約90%削減する Ansible パフォーマンスチューニング 基礎 | BLOG - DeNA Engineering

    はじめに IT 基盤部の佐藤です。 社内システムのインフラを担当しています。 前回は、 Ansible で始める Linux 管理 と題しまして、構成管理ツールの Ansible について、基的な特徴と簡単なサンプルを紹介いたしました。 Ansible のパフォーマンスチューニングは、デプロイする対象(ネットワーク機器、仮想化ソフトウェア)によって様々な方法がありますが、今回は次の2つの観点でのパフォーマンスチューニングの方法を簡単にご紹介したいと思います。 タスク並列実行 情報量の削減( Dyanmic Inventory) Dyanmic Inventory とは、構成管理の対象となるサーバを動的に取得する機能です。 詳細は Ansible のマニュアル「 Working with dynamic inventory 」を参照してください。 Ansible の環境情報 パフォーマンス

    実行時間を約90%削減する Ansible パフォーマンスチューニング 基礎 | BLOG - DeNA Engineering
  • アクセス制御を厳格に行っている環境からのs3利用 | BLOG - DeNA Engineering

    こんにちは、IT基盤部第一グループの生井です。 DeNAが提供するヘルスケア系サービスのインフラを担当しています。 ヘルスケア領域ではセンシティブ情報を扱いますので、日々高レベルなセキュリティ設計・運用を行う必要があります。 今回はその一例として、アクセス制御を厳格に行っている環境からS3を利用する際に行った対応を紹介したいと思います。 はじめに あるプロジェクトで、センシティブ情報を扱う環境から、S3の特定バケットにのみ、awscliでのデータdownload/uploadを許可したいという要件がありました。 補足:特定バケットに限定するのは出口対策のためです。任意のS3バケットへのアクセスを許可してしまうと、内部犯行によるデータの持ち出しや、マルウェア感染によるデータ漏洩のリスクが高まります。 対応として、この環境で実績のある、FWでのFQDNベースでのアクセス制御を行うことにしました

    アクセス制御を厳格に行っている環境からのs3利用 | BLOG - DeNA Engineering
  • オンプレとクラウドのネットワークの話 | BLOG - DeNA Engineering

    IT基盤部エンジニアブログリレー第4回目。 こんにちは、IT基盤部ネットワークG torigoe です。 オンプレとクラウドのネットワークをどう繋げるのか、クラウド内のネットワークをどうするのか考えた話を書きます。 多くの内部サービスを持っていて、オンプレからクラウドに移行を検討しているネットワークエンジニアの人に読んで頂ければと思います。 はじまり 2018年ある日、mtgに呼ばれて急に DeNAのインフラ全てをオンプレからパブリッククラウド(しかもマルチ)に変えようと思うがどうよ? と言われました。正直その日まであまりパブリッククラウドサービスを触った事がありませんでしたが、説明された内容には納得できたのでそんな事は噯にも出さず同意し、次の日からオンプレ-クラウド移行の為に必要なネットワークの検討を開始する事になりました。(元々Openstackは触ってました) まずはAWSを色々と触

    オンプレとクラウドのネットワークの話 | BLOG - DeNA Engineering
  • Amazon SageMaker ハンズオンレポート | BLOG - DeNA Engineering

    はじめに AIシステム部・AI研究開発グループの益子です。 現在はオートモーティブ事業において、AI研究開発エンジニアとして働いています。 先月20日、DeNA社内において、アマゾン ウェブ サービス ジャパン(AWS)様より「Amazon SageMaker」ハンズオンを実施していただきましたので、その模様をレポートさせていただきます。 DeNAでは、すでに数多くのサービスでAWSを活用しています。私の所属するAIシステム部もその例外ではなく、機械学習のモデル開発に幅広く利用しています。 昨年のAWS re:Invent 2017において「Amazon SageMaker」が発表されましたが、発表の後さっそく社内でも利用したいという声が上がり、AWS様より社内エンジニア向けハンズオンを実施していただけることになりました。 Amazon SageMakerとは Amazon SageMak

    Amazon SageMaker ハンズオンレポート | BLOG - DeNA Engineering
  • サブカルのためのword2vec | BLOG - DeNA Engineering

    はじめに AIシステム部AI研究開発グループ アルバイトの五十嵐です。( @bonprosoft, ポートフォリオ:http://vbcpp.net/about/ ) 現在、東北大学大学院の修士1年で、大学院では(自然言語ではなく)高速な文字列処理アルゴリズムに関する研究を行っています。 私は2017年9月上旬から3週間ほど、アルバイト兼インターンとしてハッカドールチーム内のNLPのタスクに取り組んでいました。 その後はアルバイトとして、期間中にできなかった追加実験と実際の製品への適用に取り組んでいます。 取り組んだタスク 突然ですが、みなさま、ハッカドールはインストールされていますか? ハッカドールは、主にサブカルチャーに関する記事に特化した、ニュースアプリケーションです。 アプリケーション内のユーザーのクリックや「ホシイ/イラナイ」などのアクションを通して、ハッカドールがユーザーの好み

    サブカルのためのword2vec | BLOG - DeNA Engineering
  • JSONデータ圧縮方式をSnappyからzstdに切り替えた事例紹介 | BLOG - DeNA Engineering

    JSONデータ圧縮方式をzstdに切り替えデータ量を38.3%削減した事例、及びマイクロサービスの無停止アップデート事例について紹介したいと思います。 はじめに JPRゲーム事業部開発基盤部の池田周平です。先日 Rails5対応についてDeNA techブログに投稿 した@namusyakaと同じチームで働いています。 JSON文字列をRDBに格納する際の圧縮フォーマットをSnappyからzstdに切り替え、データ量を削減した事例を紹介したいと思います。対応を実施した目的はDB負荷対策です。DBで扱うデータをより小さくすることで、DBサーバのDiskI/O負荷とMaster-Slave間のレプリケーション遅延対策を目的としています。 「Sakasho」は、DeNAが持つモバイルゲームのためのプラットフォームです。複数タイトルのゲームを取り扱っており、一部データはゲーム毎の仕様差を吸収し

    JSONデータ圧縮方式をSnappyからzstdに切り替えた事例紹介 | BLOG - DeNA Engineering
  • JSDoc Toolkit→JSDoc 3移行ガイド | BLOG - DeNA Engineering

    こんにちわ、DeNA San Francisco の渋川と申します。エンジニアブログには初登場です。 JavaScriptのソースコードからAPIドキュメントを生成するツールには何種類かありますが、日語の書籍やウェブサイトでも情報が得やすいこともあって、JSDocの系統が幅広く使われています。Google Closure Compilerも、JSDocを拡張したドックコメントをアノテーションとして読み込んで最適化します。 JSDocは長い期間メンテナンスされているオープンソースプロダクトです。初代はPerlで書かれたJSDoc 1です。これはすでにリポジトリも削除されています。現在最も使われているのが JSDoc Toolkit (JSDoc 2) です。弊社の ngCoreのドキュメント でも使用しています。 ただ、これも現在は機能追加を停止していて、後継プロダクトの JSDoc 3

    JSDoc Toolkit→JSDoc 3移行ガイド | BLOG - DeNA Engineering
  • Perlの中をgdbで覗く | BLOG - DeNA Engineering

    こんにちは。DeNAの樋口です。 Perlで書かれたアプリを動かしているときに、Perlのプロセスが今コードの何処を実行中なのか知りたいことがよくあります。そのような場合には、gdbで実行中のプロセスにアタッチし、Perlインタプリタインスタンスの内部を覗くことによって調べることができます。また同様の方法で、プロセスのコアダンプを取り、後でじっくりデバッガで調べることも可能です。 デバッグシンボル付きのPerlを用意する まず前提として、Perlの実行形式にデバッグシンボルが付いている必要があります。無い場合でも不可能ではありませんが、現実的には難しいでしょう。デバッグシンボル付きのPerlを用意する方法はOSによりますが、例えばrpmを使っているGNU/Linuxディストリビューションであればperl-debuginfoのように分離されたパッケージにデバッグシンボルが入っていることが多い

    Perlの中をgdbで覗く | BLOG - DeNA Engineering
  • HandlerSocketソースコード公開しました | BLOG - DeNA Engineering

    はじめまして、樋口と申します。 先日のDeNA Technology Seminar #2でお話させていただきました HandlerSocket Plugin for MySQL のソースコードを公開しました。 HandlerSocketとは? 簡単に言うと、MySQLデータベースへのアクセスを高速化するためのプラグインです。MySQLSQLパーザをすっ飛ばし、ネットワーク通信とマルチスレッド処理周辺を置き換えることによって、InnoDB等のデータベースエンジンの性能を限界まで引き出します。 このHandlerSocketですが、すでにモバゲータウンにて実際に運用しています。従来MySQLとmemcachedの構成で運用していた箇所を、HanderSocketを組み込んだMySQLだけの構成に置き換えました。その結果、MySQLサーバの負荷軽減、memcachedの負荷軽減、ネットワーク

    HandlerSocketソースコード公開しました | BLOG - DeNA Engineering
  • ソーシャルゲームのためのMySQL入門その2 | BLOG - DeNA Engineering

    こんにちはこんにちは。11インチMacBook Airが欲しくてたまらないiwanagaです。 前回の記事 が幸いにもご好評を頂けた様で非常にうれしいです。嬉しくなって、ついがんばって第2弾を書いてしまいました。引き続き、ソーシャルゲームでよく使われるテーブルタイプ毎にちょっとしたテクニックを紹介していきます。 今回はちょっとライトな感じ&読み物になってしまっていますが「ユーザID単位で1つだけ持つデータ」と「パラメータなどのマスターデータ」についてご説明したいと思います。ちなみに次回はInnoDBのデータ構造の簡単な説明と複合プライマリーキーのデータについて、その次で紹介し損ねたちょっとマニアックなテクニックや性能管理のための手法を紹介することを予定しています。 その前に。。。 先日行われた JAPAN INNOVATION LEADERS SUMMIT で弊社松信が「ソーシャルゲーム

    ソーシャルゲームのためのMySQL入門その2 | BLOG - DeNA Engineering
  • DeNA Technology Seminar #2 のスライド及び動画を公開します | BLOG - DeNA Engineering

    この記事はすっかり公開し忘れていた物です。大変申し訳ありません。 気付けば、DeNA Technology Seminar の #3 の企画を立てている zigorou です。さて、だいぶ公開が遅れてしまった事を冒頭お詫び致します。 、エントリ自体は 2010/07/02 に作成された物ですので、時間軸に関しては察してあげて下さいませ。 先日行われました DeNA Technology Seminar #2 にお越し頂いた皆さん、ust を視聴して下さった皆さんありがとうございます。 当日のスライド及び動画の方を公開致します。 Spider DeNA Technology Seminar #2 - 斯波 健徳 様 究極の HA ソリューションと呼び声の高い Spider Storage Engine の最新の話を含んだ講演でした。実績も積みつつあるようなので要チェックです!

    DeNA Technology Seminar #2 のスライド及び動画を公開します | BLOG - DeNA Engineering
  • ソーシャルゲームのためのMySQL入門 | BLOG - DeNA Engineering

    こんにちはこんにちは。最近お腹痛いばっかり言ってることで有名なiwanagaです。 DeNAは外部的にはプラットフォーム的な部分の方がフィーチャーされることが多いですが、実はソーシャルゲームの提供も行っています。怪盗ロワイヤルとか、どこかで聞いたことがあるのではないでしょうか。 僕はDeNAでソーシャルゲームが誕生した辺りからずっとサーバサイドを見てきましたが、そんな運用の中で自分が貯めてきた知見とかTIPSをご紹介したいと思います。 かれこれ10タイトル近くはレビューしたり運用したりしてるため結構言いたいことはいっぱいあるので、小出しにしつつ評判よければ次も書きます。 ソーシャルゲームのためのMySQL入門一覧 ソーシャルゲームのためのMySQL入門 - Technology of DeNA ソーシャルゲームのためのMySQL入門2 - Technology of DeNA 「MySQL

    ソーシャルゲームのためのMySQL入門 | BLOG - DeNA Engineering
  • DeNA Engineering - DeNAエンジニアのポータルサイト

    技術を活かし、新しい価値を創造する DeNAのエンジニアは、想像を超えるDelightを届けるために何ができるかを考え、技術力と発想力で新しい価値を生み出しています。 多様な専門性を持ったエンジニアが切磋琢磨し、互いに刺激し合える環境や制度がさらなる成長へとつなげます。

    DeNA Engineering - DeNAエンジニアのポータルサイト
  • 1