wwwave's Techblogのフィード
https://zenn.dev/p/wwwave
株式会社ウェイブのエンジニアによるテックブログです。 弊社では、電子コミック、アニメ配信などのエンタメコンテンツを自社開発で運営しております! https://wwwave.jp/service/
フィード

OpenClawをGemini無料枠で試す:セットアップからSlack連携、ブラウザ操作まで
wwwave's Techblogのフィード
はじめにAIにブラウザ操作を任せるとどのように動くのか気になったので、今回はOpenClawをセットアップして触ってみました。この記事を読むと、OpenClawとSlackを連携し、SlackからAIエージェントにブラウザ操作を依頼できるようになります。!OpenClaw本体はオープンソースのため無料で利用でき、Gemini APIなど無料枠のあるAIモデルを使えば、完全無料で試すことも可能です。!今回は安全面を考慮してAmazon WorkSpaces上で検証しているため、本記事のように同じ仮想環境で試す場合は別途利用料が発生します。⚠️OpenClawの機能を網...
18時間前

『レガシーコードからの脱却』を読み、RSpecを導入した話
wwwave's Techblogのフィード
はじめに私の所属するグループでは、ビジネスの根幹を支える数多くの業務システムを保守・開発しています。長年運用されてきたシステムも多く、中にはロジックが複雑化し、変更のハードルが高くなっているものもあります。そんな技術的負債を解消すべく、先日、一部のシステムを対象としたものではありますが、コードの構造を整理して見通しを良くする「リファクタリングプロジェクト」を無事に完遂しました。このプロジェクトをやり遂げた達成感がある一方で、私の心のどこかには拭い去れない不安が残っていました。それは、テストコードを書いていないということです。「せっかく綺麗にしたこのコードを、1年後もこの状態...
3日前

AmazonQ でAWSコストチェックをサポートしてもらう
wwwave's Techblogのフィード
Amazon Qの存在は知っていたのですが、実際に使ったことがなかったので、使用してみました。 AmazonQとはAmazonが提供しているAIアシスタントです。AI アシスタント - Amazon Q - AWSAmazon Bedrock をベースに構築されており、タスクに最適なモデルが選ばれて実行されるようです。サービス形態は2種類あります。Amazon Q Business企業向け、データ統合やワークフロー生成など。Amazon Q Developer開発者向け、コーディングやQAチャットなど。今回利用した、Amazon Qチャットは、Amazo...
17日前

ディレクトリ管理をしよう
wwwave's Techblogのフィード
社内で共有されていたこちらの記事を参考に、VScodeの開発環境を整えてみました記事はclaude code用ですが、私はgithub copilotを使用しているので少しだけ変えてますhttps://dev.classmethod.jp/articles/claude-code-directory-autonomy/ きっかけこの記事はざっくりいうと、コーディングエージェントにとって作業しやすいフォルダ構成にしようというものです。私はこれまで、特に理由もなくリポジトリごとに別々に開いて作業していました。copilotもそれぞれで動くので、backendからfrontに渡して...
25日前

物理ネットワーク構築ハンズオンやってみた
wwwave's Techblogのフィード
はじめに普段何気なく使用しているネットワーク。クラウド上で構築したことがあっても、L2スイッチ、L3スイッチ、ファイアウォールを使用して物理的なネットワーク構築は今まで行ったことがありませんでした。今回は、たまたま物理ネットワーク構築のハンズオンの講習を発見したので、受けてきました。構築したものと感想を簡単に紹介します! L2、L3スイッチについて簡単に用語の説明をしておきます。資格の勉強などでL2,L3スイッチという単語を聞いたことがある方は多いと思います。!L2スイッチ:OSI参照モデルのレイヤー2、データリンク層に位置する。MACアドレスを用いて同じLA...
1ヶ月前

Claude Codeにレビューを任せてチームの負担を減らす
wwwave's Techblogのフィード
はじめにチームのコードレビューの負担を少しでも減らすために、Claude Code の Skills を使い、backend(Rails)レビュー用の /review-backend を作成しました。!組み込みの /review は手軽ですが、汎用的なコマンドである以上、標準のままではプロダクト固有の仕様や既存ルールまで踏み込んだレビューは期待しづらいです。Skills にレビュー基準を持たせることで、毎回の指摘の粒度や出力のブレを抑え、より実務で使いやすいレビュー結果に近づけられます。この記事では、/review-backend の使い方と、実際に配置した設定ファイルを...
1ヶ月前

ClaudeでFixtureをFactoryBotに移行した
wwwave's Techblogのフィード
概要RailsのMinitestで使用していたFixtureをFactoryBotに移行した。Claude Codeで移行計画と実装を行い、人がレビューした。人が修正内容を確認できるように、小さいスコープを修正するサイクルを繰り返した。 想定読者Railsアプリ開発者テストの改善を検討している方 背景古いテストはFixtureに依存しているものが多いかつFixtureのYAMLファイルの数が多いため、Fixture起因のテスト失敗時の原因特定と、修正および修正による副作用の有無の確認が大変だった。 FixtureとFactoryBotの比較...
1ヶ月前

OpenSearchと仲良くなろう
wwwave's Techblogのフィード
新卒入社してから一年が経ちましたこの一年でいろんなことを学んだので「ちょっとできるようになってきたかも!」と調子に乗っていたら、OpenSearchにボコボコにされました🫠🫠 やりたいこと検索に使う情報を追加検索キーワードを完全一致から部分一致にする 検索データの追加まず引っかかったのはここです。OpenSearch用語が全くわからない。私は名称を覚えるのが苦手です。特にカタカナ。OpenSearchの用語は、普段見る単語でも絶妙に意味が違うので理解するのに苦労しました。OpenSearchの代表的な単語インデックスデータベースでいうところのスキーマ情報。ど...
2ヶ月前

クッキー型3Dモデルメーカーでオリジナルクッキー型を作ろう
wwwave's Techblogのフィード
会社の懇親会がバレンタイン時期だったこともあり、クッキーを作って配ることにしました。(いきなり)(参照: エンジニアチームのカオスな懇親会|wwwave for engineer | ウェイブ エンジニア)最近会社で3Dプリンタを利用できるようになったので、オリジナルクッキー型を印刷して、それを使って型抜きしてみようと思いました!当初は自分で書いたイラストをSVGにして、Blenderで読み込み、メッシュ化して、、と手作業で型を作っていたのですが、慣れない作業でとても大変でした。そこで、クッキー型3Dモデルメーカーを作成することになりました。 クッキー型3Dモデルメーカークッ...
2ヶ月前

【SEO対策】狙ったページの掲載順位を8.2位→3.2位に改善した実例
wwwave's Techblogのフィード
はじめにサブスク型のアニメ配信サービスにおいて、特定の検索キーワードで伸び悩んでいたページを対象に、約3か月間かけてSEO最適化に取り組みました。手探りで調査と改善を重ねた結果、対象キーワードの掲載順位は 8.2位 から 3.2位 まで改善しました。本記事では、実施した施策の内容と、その結果から得られた学びをまとめます。!外部に公開できない内容もあるため、具体的な改修内容をすべてお伝えすることはできませんが、可能な範囲でどのような対応を行ったのかを記載しています。 プロジェクト概要特定の検索キーワードで流入が見込めるページの掲載順位を改善し、まずはサイトに訪れるユ...
2ヶ月前

【プロンプト設計実践】AIで進める Rails 8.0→8.1
wwwave's Techblogのフィード
はじめに以下で作成した設計プロンプトをブラッシュアップし、AI に任せる形で Rails 8.0.4 から Rails 8.1.1(本記事執筆時点での最新)まで上げる取り組みを実施しました【プロンプト設計実践】AIで進める Rails 7.1→7.2【プロンプト設計実践】AIで進める Rails 7.2→8.0本記事では、その際に使用した設計プロンプトの中身や、実際に適用した差分などをまとめますRailsのアップデート実施を考えている方へ、少しでも参考になれば幸いです 環境バックエンド:Rails8.0.4(APIモード)インフラ:AWS開発環境:Do...
3ヶ月前

恵方巻きガッチャしよう
wwwave's Techblogのフィード
暦はすでに二月となり、立春を迎え、節分の月となった。古人の曰く、光陰矢の如し...なんちゃって!さてさて、みんな様は恵方巻きを食べていますか?恵方巻きの具材を悩んでいるのでしょうか。定番具材7種だと言われ、それ以外もたくさん挙がられる恵方巻きですが、何を入れるのがなかなか悩ましいですよね。そんなあなたに、ピッタリなアプリを作りました! 背景今年1月に入社した新米社員ですが、OJT研修の一環として、Vueを用いたアプリ開発に挑戦する機会をいただきました。旨は面白さを重視しつつ、今度の全社懇親会でみんなが一緒に「遊べるもの」であること、また時節が節分であることを踏まえ、恵方巻...
4ヶ月前

Railsでセマフォを使ったキャッシュスタンピード対策を実装するときの注意点
wwwave's Techblogのフィード
TL;DR(3行まとめ)問題: セマフォ+ポーリングでキャッシュを読み取ろうとするとnilが返り続けてタイムアウト🥺原因: LocalCacheに保存されたnilのキャッシュがRedisへのアクセスをブロック🥴解決: Rails.cache.send(:bypass_local_cache) でLocalCacheをバイパスしてRedisに直接アクセス😎 はじめにごきげんよう。ComicFestaの開発をしているほざえもんです社会人になると出会いよりも別れの割合が増える気がします(自分だけ?)そんなメンタル深界六層な今日この頃、私が出会ったのはタイムアウトの問題で...
5ヶ月前

AV1は“使える技術”か?アニメ配信の文脈で考える
wwwave's Techblogのフィード
【🎄Merry Christmas🎄 WWWAVE アドベントカレンダー 最終日の記事です】少し前に、Netflixの配信の約30%がAV1で行われているという記事を目にしました。これをきっかけにAV1について調べてみたところ、動画コーデックの選定について、技術面とビジネス面の両方から整理して考えてみたいと思うようになりました。弊社では、日本向けにAnimeFestaを、海外向けにOceanVeilを展開しており、2つの動画配信サービスを運営しています。今回は、AV1を弊社サービスに導入することを想定したユースケースとして、技術選定について考えてみたいと思います。 1. 技術選定...
5ヶ月前

眼精疲労と戦う新卒エンジニア
wwwave's Techblogのフィード
【🎄Merry Christmas🎄 WWWAVE アドベントカレンダー 12/24の記事です】 背景新卒でITエンジニアとして働き始めてから、1日のほとんどがモニターの画面を見る生活になりました。コードを書いたり・読んだり。ドキュメントを書いたり・読んだり。気づいたら朝から晩までずっと目を酷使しています。働き始めの頃は特に問題はなかったのですが、次第に目の疲れが取れなくなり、目のかすみや違和感など、少しずつ不調を感じるようになりました。学生の頃はあまり意識することがなかったのですが、仕事となると疲れ方も変わってくるものですね.. やったこと最初は「そのうち慣れる...
5ヶ月前

【プロンプト設計実践】AIで進める Rails 7.2→8.0
wwwave's Techblogのフィード
【🎄Merry Christmas🎄 WWWAVE アドベントカレンダー 12/23の記事です】 はじめに【プロンプト設計実践】AIで進める Rails 7.1→7.2 で作成した設計プロンプトをブラッシュアップし、AI に任せる形で Rails 7.2.2.2 から Rails 8.1.1(本記事執筆時点での最新)まで上げる取り組みを実施しました本記事では、その際に使用した設計プロンプトの中身や、実際に適用した差分などをまとめますRailsのアップデート実施を考えている方へ、少しでも参考になれば幸いです!Rails8.0.4 → 8.1.1に関しては、文字数の関...
5ヶ月前

【DRM】Netflix の最高画質が視聴環境によって変動する基準、知りたくない?
wwwave's Techblogのフィード
【🎄Merry Christmas🎄 WWWAVE アドベントカレンダー 12/22の記事になります】 誰だお前は!?ウェイブのアニメフェスタ担当のエンジニアです。ごきげんよう。最近コンテンツを扱うサービスを担当している都合上、DRMについて調査する機会がありその際に◯mazon Prime Video, ◯アニメストア等(敬称略)の仕様や基準について調査すると、「なるほどなぁ」と思うことが少なからずあり、記事という形でまとめることにしました。 前提本記事では基本的に、PCブラウザ環境であることを前提に話を進めます。ただしLinuxは除きます。また、これは「Netf...
5ヶ月前

脱Excel!数万行の巨大ファイルをAWS×スプレッドシートで「使い回せるデータ基盤」を目指した話
wwwave's Techblogのフィード
【🎄Merry Christmas🎄 WWWAVE アドベントカレンダー 12/21の記事です】こんにちは、グロースエンジニアリンググループの塚本です。以前、AWS JumpStartの参加レポートを投稿しました。今回は、その続編とも言える実践編です 。テーマは、「膨大なExcelデータのAWS移行と再利用可能なデータ基盤の構築」。AWS上にデータ基盤を構築し、BI分析を目指したプロジェクトの裏側、特にアーキテクチャ設計で学んだ内容を中心に共有します。 プロジェクトの始まり「Excelで管理しているある商材の販売データをDBにして、BIツールで分析したい」という要望がき...
5ヶ月前

Macキッティングにかかる時間を3分→30秒へ! Lanscope × ABM で実現した自動化への道のり
wwwave's Techblogのフィード
【🎄Merry Christmas🎄 WWWAVE アドベントカレンダー 12/20の記事です】 はじめましてITソリューション部で社内SEをやっているATSです。普段は端末管理・インフラ周り・ヘルプデスクといった、いわゆる「情シスの守備範囲」で縁の下の力持ちとして奮闘しています。本日は、アドベントカレンダーの記事として、最近取り組んだ 「インフラ周り(特にMacの管理)」 の話をさせていただきます。 弊社のPC事情と課題弊社で稼働しているパソコンのOS比率は、おおよそ以下の通りです。Windows:85%Mac:15%Windowsについては台数が多いため、キ...
5ヶ月前

外部システム連携における冪等性の担保
wwwave's Techblogのフィード
【🎄Merry Christmas🎄 WWWAVE アドベントカレンダー 12/19の記事です】国内向けマンガ配信サービス「ComicFesta」でエンジニアをしているshibainuです現在、外部サービスとのデータ連携処理を検討しており、ある程度設計が固まってきましたので、その内容を共有いたします 外部連携フローと課題今回検討の対象となったのは、外部サービスとCSVファイルを定期的にやり取りするバッチ処理によるデータ連携フローです初期の設計案は以下の通りでした 技術的課題一見シンプルですが、この設計には運用上のリスクがありました バッチの冪等性の欠如バッチが「今...
5ヶ月前