Hatena Developer Blog
https://developer.hatenastaff.com/
はてな開発者ブログ
フィード

大規模トラフィックを支えるGigaViewer for AppsのAPI負荷対策
Hatena Developer Blog
こんにちは。iOS、Androidアプリエンジニアの id:tokizuoh です。『Inside GigaViewer for Apps』連載13回目は、Webアプリケーションエンジニアの id:magaming と一緒に出版社向けマンガビューワのアプリ版である「GigaViewer for Apps」(以下 GigaApps)における API での負荷対策についてお話しします。今回は、少年ジャンプ+アプリ版のリプレイスにおける負荷対策の例をご紹介します。 背景 計測 負荷試験の目標設定とシナリオの定義 試験結果と課題 改善 データベース側の対策 大量のIN句の分割 取得するレコード数を絞る…
13日前

Slack上でみんなで育てるAI bot 「resident-ai」
Hatena Developer Blog
システムプラットフォームチーム SRE id:MysticDoll です。 この記事では、私が作成し現在はてな社内のSlackで稼動中のAI bot、「resident-ai」を紹介します。 resident-ai とは 実行例 仕組み 実装時の課題 システムプロンプトの保存場所 Canvasの取得 bot自身のIDの取得 まとめ ウニウニ! 締め resident-ai とは resident-aiはSlack上でAIとチャットができるbotですが、特にチャンネルのCanvasを最大限に活用できる点が強みです。 @resident-ai <質問内容など> とリプライすると起動し、その後は実行…
14日前

Hatena Engineer Seminar #34「オブザーバビリティの実現と運用編」をオンラインで開催しました #hatenatech
Hatena Developer Blog
2025年7月30日(水)に開催した Hatena Engineer Seminar #34「オブザーバビリティの実現と運用編」のレポートです。はてなでオブザーバビリティに取り組む3名のエンジニアが登壇しました。トークの発表資料と動画アーカイブを掲載しています。ぜひご覧ください!
18日前

モニタリングを超えた“次のあたりまえ”へ - エンジニアに10年選ばれ続けるMackerelの"らしさ"を探る【後編】
Hatena Developer Blog
はてなが開発・運用するオブザーバビリティプラットフォーム「Mackerel(マカレル)」は、2014年9月17日に正式リリースして以来、10年にわたり多くのエンジニアに選ばれ続けてきました。 これまでサーバー監視・管理の領域に力を入れてきたMackerelは、より複雑な問題やシステムの変化に対応していくため、「始めやすくて奥深い、可観測性プラットフォーム」としてオブザーバビリティ領域の開発に力を入れることを宣言し、2025年5月1日(木)にはMackerelのAPM(アプリケーションパフォーマンスモニタリング)機能を正式リリースしました。 技術の進化による環境の変化の中で、Mackerelが変…
20日前

なぜ「痒いところに手が届く」のか? - エンジニアに10年選ばれ続けるMackerelの"らしさ"を探る【前編】
Hatena Developer Blog
はてなが開発・運用するオブザーバビリティプラットフォーム「Mackerel(マカレル)」は、2014年9月17日に正式リリースして以来、10年にわたり多くのエンジニアに選ばれ続けてきました。 これまでサーバー監視・管理の領域に力を入れてきたMackerelは、より複雑な問題やシステムの変化に対応していくため、「始めやすくて奥深い、可観測性プラットフォーム」としてオブザーバビリティ領域の開発に力を入れることを宣言し、2025年5月1日(木)にはMackerelのAPM(アプリケーションパフォーマンスモニタリング)機能を正式リリースしました。 技術の進化による環境の変化の中で、Mackerelが変…
20日前

AWS Database Migration Service(AWS DMS)を利用した MySQL から PostgreSQL へのデータ移行
Hatena Developer Blog
Mackerel チームで SRE を担当している id:taxintt と申します。 はてなの SRE が毎月交代でブログ記事を書く Hatena Developer Blog の SRE 連載、7月号です。6月の記事は id:masayoshi さんの NotebookLM で 社内のSREに関するブログや登壇資料を学習させ、SREのオンボーディングに活かせるか? - Hatena Developer Blog です。 Mackerel は、今年の4月にAPM・トレース機能を提供するシステムのメンテナンス作業を実施しました。このメンテナンスでは、AWS Database Migration…
21日前

GMOペパボで活躍中の id:antipop を訪問 | はてな卒業生訪問企画 [#16]
Hatena Developer Blog
連載企画「卒業生訪問インタビュー」 第16回のゲストは、GMOペパボ株式会社 取締役CTO 兼 CTO室室長 兼 事業開発部部長のid:antipop こと、栗林健太郎さんです。はてな 取締役のid:onishiがお話を伺いました。
1ヶ月前

マルチテナントアプリの「GigaViewer for Apps」を支えるGraphQL
Hatena Developer Blog
こんにちは、マンガアプリチームのエンジニアの id:kouki_dan です。『Inside GigaViewer for Apps』の連載12回目のこの記事は、出版社向けマンガビューワのアプリ版である「GigaViewer for Apps」(以下 GigaApps)のAPI通信にGraphQLをどのように活用しているか、採用経緯から開発の工夫までをご紹介します。 GigaApps以前のGraphQL検証 GigaAppsにおけるGraphQL Apolloを使った設計 汎用的な処理は共通のコンポーネントで楽をする ノーマライズドキャッシュによる画面間での情報の伝播 GraphQLでのスキー…
1ヶ月前

Devinにはてラボのサービスを作ってもらったので、かかった費用を大公開
Hatena Developer Blog
こんにちは、id:kouki_dan です。先日、はてラボに1つサービスをリリースしました。 labo.hatenastaff.com これを作り始めたとき、ちょうど社内では検証用にDevinが使えるようになっていました。検証の用途はエンジニアに任されていたので、ゼロからプロダクトを作る検証として、これを全部Devinで作ったら面白いんじゃないかな?と思いつきました。そして、人間コミット禁止縛りで作り始めて、リリースまで、人間が1コミットもすることなく完成させることができました。トップコントリビューターはもちろんDevin。グラフに人がいるのは、マージコミットがカウントされているからだと思いま…
1ヶ月前

GigaViewer for Webにおける開発の進め方
Hatena Developer Blog
こんにちは。Webアプリケーションエンジニアの id:vilagia です。 この記事は『Inside GigaViewer for Apps』連載11回目の記事です。 今回は「GigaViewer for Apps」のバックエンドを担う「GigaViewer」のサーバサイド(以下 GigaViewer)において、開発がどのように進められているかについて紹介します。 GigaViewerは多くのサービスから利用されているマンガビューワです。サービスごとのマンガサイトやマンガアプリを提供する性質上、共通のしくみをお客様が利用されるだけではなく、個社個社のサービスのニーズに応じた開発も求められます…
1ヶ月前

はてなのポッドキャスト Backyard Hatena #47 - コーディングエージェントを使いこなす(id:azukiazusa) #byhatena
Hatena Developer Blog
はてな「技術グループ」によるポッドキャスト「Backyard Hatena」を更新。オブザーバビリティプラットフォーム「Mackerel」チームのエンジニア id:azukiazusa:detail です。MackerelチームでのAPM機能の開発や、個人ブログ、コーディングエージェントの活用などについて、お話を伺いました。
1ヶ月前

Hatena Engineer Seminar #34 「オブザーバビリティの実現と運用編」を7月30日にオンライン開催します #hatenatech
Hatena Developer Blog
2025年7月30日(水)にHatena Engineer Seminar #34 をオンライン開催します。テーマは、複雑化するITシステムの運用において今や不可欠となった「オブザーバビリティ」です。皆様のご参加をお待ちしております!
1ヶ月前

NotebookLM で 社内のSREに関するブログや登壇資料を学習させ、SREのオンボーディングに活かせるか?
Hatena Developer Blog
はてなのシステムプラットフォームチームで SRE として働いている id:masayoshi です。 この記事は、はてなの SRE が毎月交代で書いているSRE連載の 6 月号です。5 月号の記事は id:KashEightさんの DMARC レポートを Mackerel + OpenTelemetry でいい感じに可視化する - 実装と躓き - Hatena Developer Blog でした。 さて今回の記事ですが、NotebookLMに公開されている自社の技術ブログ(例えば本記事のSRE連載など) や自分の登壇資料や文章を学習させて、新しく入社したSREのオンボーディングへの利用やSR…
2ヶ月前

Classiで活躍中のid:aerealを訪問 | はてな卒業生訪問企画 [#15]
Hatena Developer Blog
連載企画「卒業生訪問インタビュー」 第15回のゲストは、Classi株式会社でエンジニアとして幅広く活躍されている id:aereal こと、中澤亮太さんです。はてな エンジニアリングマネージャーのid:onkがお話を伺いました。
2ヶ月前

マルチテナントアプリにおけるデザインコンポーネントの管理方法
Hatena Developer Blog
こんにちは。マンガアプリチームでデザイナーをしている id:gano-k です。 GigaViewer for Apps(以下、GigaApps)は、マンガアプリに必要な「ビューワ」「作品詳細」「マイページ」などの基本機能を共通モジュール化し、複数のサービスで再利用できる仕組みを提供しています。 各サービスごとにカスタマイズされたUIを提供しつつも、裏側では共通の基盤が動いているのが特徴です。 このような構造の中でデザインを行う際には、「各サービスへの最適化」と「再利用性を担保する共通設計」の両立が求められます。 『Inside GigaViewer for Apps』連載10回目は、Giga…
2ヶ月前

1,000万人が熱狂するマンガ雑誌を目指して - はてなが集英社と振り返る「少年ジャンプ+」の10年【後編】
Hatena Developer Blog
Hatena Developer Blogでは、「ジャンプ+」10周年という節目の年に、編集長を務める籾山悠太さんと、はてな執行役員・石田樹生の対談を企画しました。「ジャンプ+」創刊の経緯と、これまでの歩みについて振り返ります。(後編)
2ヶ月前

前代未聞の挑戦を成功させた戦略とは - はてなが集英社と振り返る「少年ジャンプ+」の10年【前編】
Hatena Developer Blog
Hatena Developer Blogでは、「ジャンプ+」10周年という節目の年に、編集長を務める籾山悠太さんと、はてな執行役員・石田樹生の対談を企画しました。「ジャンプ+」創刊の経緯と、これまでの歩みについて振り返ります。(前編)
2ヶ月前

Hatena Engineer Seminar #33「カクヨムアプリ編」をオンラインで開催しました #hatenatech
Hatena Developer Blog
2025年6月9日(月)に開催した Hatena Engineer Seminar #33「カクヨムアプリ編」のレポートです。株式会社KADOKAWAとはてなが共同開発したWeb小説サイト「カクヨム」のアプリ開発を担当するエンジニア・デザイナーの3名が登壇しました。トークの発表資料と動画アーカイブを掲載しています。ぜひご覧ください!
2ヶ月前

はてなは関数型まつり2025をシルバースポンサーとしてお手伝いします!
Hatena Developer Blog
2025年6月14日, 15日に中野セントラルパーク カンファレンスで関数型まつり2025が開催されます。 2025.fp-matsuri.org はてなはこれにシルバースポンサーとして協賛しています! はてなは、Mackerelやはてなブックマークなどのプロダクト開発でScalaを使用していたり、近年ははてなブログや、発話分析ソリューションtoittaなどでTypeScriptの利用も増えていたり、かねてから静的型の強みや関数プログラミングの恩恵を受けたサービス開発を続けています。 はてなのエンジニアも数名、関数型まつりの会場に行く予定ですので、現地でお目にかかった際は交流などよろしくお願い…
2ヶ月前

はてなのポッドキャスト Backyard Hatena #46 - プロダクトオーナー兼テックリード兼ポケカ競技プレイヤー(id:arthur-1) #byhatena
Hatena Developer Blog
はてな「技術グループ」によるポッドキャスト「Backyard Hatena」を更新。今回のゲストは、オブザーバビリティプラットフォーム「Mackerel」チームのサブディレクター id:arthur-1 です。Mackerelチームでさまざまな活躍をしてくれているarthurさんに、PO業・TL業など、仕事のことから趣味のポケモンカードのことまでお話を聞きました。
2ヶ月前

GigaViewer for Web における Flaky Test に対する取り組み
Hatena Developer Blog
GigaViewerでは、Flaky Testが発生が課題となっていました。Flaky Testは開発者の生産性や、CIの実行コストに悪影響を及ぼしています。GigaViewerの特徴やテスト方針を踏まえてFlaky Test発生しやすい背景を説明とFlaky Testに対してチームとしてどのような取り組みをしているのかを紹介します。
2ヶ月前

「10年後の自分のための基礎づくり」はてなサマーインターンシップ2025の見どころ一巡り
Hatena Developer Blog
はてなサマーインターンシップ2025 実行委員長のid:daiksyです! いよいよ、今年のはてなサマーインターンシップの募集締切が迫ってきました。 今回は、今年のはてなサマーインターンシップの見どころを一巡りしてみようと思います。 hatena.co.jp 京都で過ごす講義パートと実際のチームで働く実践パート 前半パートの講義予定をご紹介 後半実践パートの配属予定チーム インターン参加者がもれなく貰えるグッズ! はてなサマーインターンシップ2025参加のための審査のポイント はてなのインターンでEXPO級の夏を体験しましょう!応募締め切りは 2025年6月9日(月)12:00(日本標準時)!…
3ヶ月前

DMARC レポートを Mackerel + OpenTelemetry でいい感じに可視化する - 実装と躓き
Hatena Developer Blog
はてなのシステムプラットフォームチームで SRE として働いている id:KashEight です。 この記事は、はてなの SRE が毎月交代で書いているSRE連載の 5 月号です。今回の記事は前回の 4 月号の記事 DMARC レポートを Mackerel + OpenTelemetry でいい感じに可視化する - 作成に至るまでの続きとなります。 前回: developer.hatenastaff.com Mackerel へ投稿 (前段階) 投稿する要素を選ぶ SPF Alignment, DKIM Alignment, DMARC Passage Published Policies …
3ヶ月前

VRTから静的解析まで ─ GigaViewer for Apps Androidのテストをご紹介
Hatena Developer Blog
GigaViewer for AppsのAndroidテスト戦略を深掘り!UnitTestからUIテスト、VRTまで最新テスト手法を解説。
3ヶ月前

Hatena Engineer Seminar #33 「カクヨムアプリ編」を6月9日にオンライン開催します #hatenatech
Hatena Developer Blog
2025年6月9日(月)にHatena Engineer Seminar #33をオンライン開催します。株式会社KADOKAWAとはてなが共同開発したWeb小説サイト「カクヨム」のアプリ開発を担当するエンジニア・デザイナーの3名が登壇します。皆様のご参加をお待ちしております!
3ヶ月前

多様な構造の組織をマネジメントしていく | はてなで働く daiksy にアンケート [#29]
Hatena Developer Blog
はてなで働くエンジニアにアンケートシリーズ第29回は、技術グループのマネージャー、id:daiksyに話を聞きました。 EMConfで登壇するdaiksy アルムナイ入社第1号 アルムナイ入社第1号 職種組織の専任マネージャ 目先のわかりやすい成果に囚われず取り組んでいく 多様な構造の組織をマネジメントしていく ── Q. はてなidとその由来を教えてください はてなidは daiksy です。 本名の粕谷大輔をもじっています。 Daisuke Kasuya -> Daisuke Kasuya -> DaiKsy -> daiksy です。 インターネットでハンドルネームを使う際はだいたいこれ…
3ヶ月前

TSKaigi2025にはてなのエンジニアが2名登壇します!
Hatena Developer Blog
2025年5月23日-5月24日にベルサール神田でTSKaigi 2025が開催されます! 2025.tskaigi.org はてなはブロンズスポンサーとして協賛しています。また、id:cateiruがスタッフとして関わっています。 さらに、エンジニア2名のプロポーザルが採択され、id:mizdraとid:susisuが登壇します!! 登壇内容を以下に簡単にご紹介します。 また、イベントスタッフとして参加しているid:cateiruからのコメントもご紹介します。 id:mizdra フロントエンドエキスパートの id:mizdra です。私は2日目に「TypeScript Language S…
3ヶ月前

はてなのポッドキャスト Backyard Hatena #45 - 新卒 on the 新規事業チーム(id:ymse) #byhatena
Hatena Developer Blog
はてな「技術グループ」によるポッドキャスト「Backyard Hatena」を更新。今回は新規事業チームでtoittaの開発を担当する id:ymseをゲストに迎え、24年4月の新卒入社エンジニアであるymseさんに、入社後のはてなでの暮らしの話や、新規事業チームで取り組んだ「toitta」の開発や取り組みについて話を聞きました。24年4月の新卒入社後のはてなでの暮らしの話や、新規事業チームで取り組んだ「toitta」の開発やと取り組みについて話を聞きました。
3ヶ月前

「GigaViewer for Apps」 iOS アプリにおける VRT とユニットテスト
Hatena Developer Blog
iOS アプリエンジニアの id:maiyama4 です。『Inside GigaViewer for Apps』連載7回目は、出版社向けマンガビューワのアプリ版である「GigaViewer for Apps」(以下 GigaApps)の iOS アプリのテストについて、Visual Regression Testing(以下 VRT)に重点を置いて紹介します。 VRT VRT の導入経緯 VRT のツール VRT 対象の選定 VRT を実行するデバイス メディアごとの設定を反映するためのモジュール構成 VRT の実装 参照画像の作成・更新 参照画像の置き場所 VRT の運用フロー ユニットテ…
3ヶ月前

はてなのマンガアプリ開発の舞台裏がNotebookLMとAIの力でポッドキャストになったぞ!
Hatena Developer Blog
こんにちは、マンガアプリチームのエンジニアで『Inside GigaViewer for Apps』編集部の id:kouki_dan です! マンガアプリチームでは『Inside GigaViewer for Apps』と題して、チームのメンバーがGigaViewer for Appsについて代わる代わる書いていく連載をHatena Developer Blogで掲載中です。 developer.hatenastaff.com 連載は今年の2月から始めていて、まだまだ続きます。GigaViewer for Appsは、マルチテナントアプリとして提供されていて、設計上の工夫がたくさんあります。…
4ヶ月前