ELW株式会社 テックブログ

https://techblog.elw.co.jp/

リアルなログをそのままお届けします。

フィード

記事のアイキャッチ画像
仕様駆動開発で高品質かつ省力化したワークフロー ― cc-sddとClaude Codeの組み合わせ
ELW株式会社 テックブログ
はじめに Kiroに代表される仕様駆動開発(Spec-Driven Development)は、AIエージェントによる開発に「要件→設計→タスク→実装」という構造を与えるアプローチとして注目されています。 本記事では、仕様駆動開発フレームワーク「cc-sdd」で仕様を整理し、Claude Codeのカスタムスラッシュコマンドで実装からPR作成、さらにはレビューボットへの対応まで大幅に省力化する方法を紹介します。 私が実際に運用しているワークフローであり、品質を保ちつつ人間の作業量を最小限に抑えられていると感じています。 全体像 ワークフローは大きく「仕様フェーズ」と「実装フェーズ」の2段階で構…
1ヶ月前
記事のアイキャッチ画像
OpenAI Chat Completions API におけるresponse_formatの活用
ELW株式会社 テックブログ
はじめに 以前の記事では、Function callingを使ってAIからの回答を定型化する方法を紹介しました。 Function callingは外部関数を呼び出す形式でJSON構造を取得できる便利な機能ですが、実はOpenAI APIにはresponse_format という、より直接的にJSON形式の回答を得られる方法が存在します。 本記事では、response_formatパラメータを用いた構造化出力の実装方法と、実際のKotlinコードでの活用例を紹介します。
1ヶ月前
記事のアイキャッチ画像
【Quarkus】RequestScoped備忘録
ELW株式会社 テックブログ
Quarkusを使っていると、次のようなエラーに遭遇することがある。 jakarta.enterprise.context.ContextNotActiveException: RequestScoped context was not active when trying to obtain a bean instance for a client proxy of CLASS bean これは@RequestScopedなBeanをRequest Contextが開始されていない実行パス(非同期処理・別スレッド・HTTP以外のエントリポイントなど)で使ったときに発生する。 @Request…
3ヶ月前
記事のアイキャッチ画像
個別株投資 スクリーニングツール & Claude API
ELW株式会社 テックブログ
前提:やりたいこと 投資信託だけでなく個別株式投資をしたい。数多存在する銘柄の選定を効率化できないか? 課題 詳細 対象が多すぎ 東証プライム市場だけで約1,600銘柄 指標だけでは不安 PER/PBRが割安でも実態はわからない 報告書はなるべく読みたくない 1社あたり100ページ超の決算資料 全部手動AI分析は非現実的 1,600社から選定 -> 報告書収集 -> AI分析 解決策 → 定量で絞り込み → 報告書と乖離がないか上位だけAI分析 用語集(株式指標) 用語 説明 PER 株価収益率(株価÷1株利益)低いほど割安 PBR 株価純資産倍率(株価÷1株純資産)1未満は割安or低評価 R…
3ヶ月前
記事のアイキャッチ画像
QuarkusでMCPサーバーを構築し、AI AgentとSlack botを連携させる
ELW株式会社 テックブログ
CTOの村上です。本記事では、Quarkusを使用してMCPサーバーを構築し、OpenAI Agent SDKを使ったAI Agentとの連携、さらにSlack botとしての実装までをプロトタイプとして作成しましたので、その解説をさせていただきます。なお、記載しているコードについては、Production用ではなく、記事のために省略・改変をしている旨をご了承ください。また、実装をもとにLLMに記事の土台を作成させ、手で加筆修正しました。
4ヶ月前
記事のアイキャッチ画像
検索エンジンとMongoDB Atlas Searchについて
ELW株式会社 テックブログ
はじめに CTOの村上です。弊社では一覧検索でMongoDB Atlasを使用しています。 DRIVE SFAではエンティティに対してカスタム項目を設定でき、標準の項目でもカスタム項目でも部分一致検索が出来るという仕様上、途中からパフォーマンス観点の対策として採用しました。 そこで勉強会で技術周知のために共有しました。LLMも使って資料を作りましたのでご了承ください。
5ヶ月前
記事のアイキャッチ画像
OpenAI Chat Completions API におけるfunctionsの活用
ELW株式会社 テックブログ
◆ はじめに AIからの回答を、JSONなど定型の構造体に収めてアプリケーション上で活用したい、という場面はよくあると思う。 プロンプトで「このような型で回答してほしい」といった要望を逐一指示することも可能ではあるが、実際にやってみると回答にブレが生じる場合があり、期待した型でパースができないといった問題が生じる。 このようなケースで functions パラメータを用いると、回答の定型化を行うことができる。
5ヶ月前
記事のアイキャッチ画像
MCPを理解する
ELW株式会社 テックブログ
エンジニアの井立田です。 本記事では、最近注目されているMCPの基本的な概念について、簡潔にわかりやすく解説します。
9ヶ月前
記事のアイキャッチ画像
Redis Streamsを利用した通知アーキテクチャ
ELW株式会社 テックブログ
◆はじめに 揮発性のある軽量な通知機能をWebアプリに実装する必要があり、時系列でメッセージを記録可能で既読処理も単体で実現できるRedis Streamsが適当だと思い採用した。以下、その時行ったサーバー側実装を備忘録的にまとめる。 (※実際の名称などは変えています)
9ヶ月前
記事のアイキャッチ画像
Tanstack Router
ELW株式会社 テックブログ
今回のフロントエンド勉強会では、話題のルーティングライブラリ TanStack Router を取り上げました。 現在、弊社で開発中のプロダクトにおいて採用を検討しており、要件を満たせるかどうかの観点から調査を行いました。今回はその中でも、導入前に最低限押さえておきたいポイントに絞って、公式ドキュメントや関連リンクとともに紹介していきます。
9ヶ月前
記事のアイキャッチ画像
Kotlinpoet による Kotlinコードの生成
ELW株式会社 テックブログ
LLM時代には、ルールベースで決まるコードはスクリプトで生成し、それを使ってLLMにコーディングしてもらうのが一つの効率的なやり方だと思っています。今回は、Kotlinpoetを使ったKotlinコード生成について勉強会で話したので共有させていただきます。
10ヶ月前
記事のアイキャッチ画像
Django と Quarkus + Kotlin に学ぶバックエンド開発スタイル比較
ELW株式会社 テックブログ
1. Djangoとは オープンソースのPython製フルスタックWebフレームワーク(初版 2005 年)。 MTV構造:Model=DB層、View=ロジック、Template=画面。役割が分かれ保守しやすい。 “Batteries‑included” フィロソフィ ─ ORM・管理画面・認証・国際化などを標準搭載し 迅速なプロトタイプ開発 が可能。 URL ディスパッチャ + テンプレートエンジンにより 疎結合なページ生成、CSRF/XSS 対策などセキュリティ機能も内蔵。 よく使われる場面:CMSや社内システム、スタートアップのMVP、大規模サービス(例:Instagram)。
1年前
記事のアイキャッチ画像
vinxiやviteなどのエコシステムを整理
ELW株式会社 テックブログ
CTOの村上です。現在Tanstack Startの採用を検討していますので、 そこで使われているツールやSDKなどについて整理してみました。
1年前
記事のアイキャッチ画像
Reactの<ViewTransition>コンポーネントを使ってみた
ELW株式会社 テックブログ
ViewTransitionAPIとは ページを遷移する際にスムーズなアニメーションを追加できるブラウザネイティブのAPI メリット 遷移アニメーションがスムーズ 記述が簡単 ブラウザネイティブの機能ため、JavaScriptによるアニメーションよりパフォーマンスが優れている developer.mozilla.org ReactでViewTransitionコンポーネントが利用できるようになる <ViewTransition> コンポーネントが実験的にReactに追加された github.com <ViewTransition> で子要素をラップすることで、それらの間の変化をアニメーション機…
1年前
記事のアイキャッチ画像
Junieを使ってみた
ELW株式会社 テックブログ
Junieとは JetBrainsが2025年4月16日に正式リリースしたAIコーディングエージェント。 チャット欄に自然言語で依頼したタスクを自律的に計画・実行。実際にソースコードを編集、ビルドやユニットテストまで走らせたうえで差分を提示してくれる。 コードの補完機能はない。補完を行いたい場合はAI AssistantやGithub copilotを利用する www.jetbrains.com LLM Claude3.7 プランと価格 制限付きで無量レベルを提供 ただしIDE自体が有料 対応IDE(2025年4月現在) IntelliJ(有料版) PyCharm(有料版) WebStorm …
1年前
記事のアイキャッチ画像
フロントエンド実装のVibe Codingを実プロダクトで試してみる
ELW株式会社 テックブログ
ELWのCTOの村上です。LLMの活用検討会の記事となります。 バックエンドと比較してフロントエンドのVibe Codingが難しいという課題感が社内であり、 その検証のためにVibe Codingで私が既存システムの改修チケットを実施してみたのでその紹介となります。
1年前
記事のアイキャッチ画像
RDB脳のためのMongoDB覚書
ELW株式会社 テックブログ
◆用語 コレクション RDBのテーブルに相当。RDBの場合は同テーブルであれば必ず同スキーマだが、コレクションでは同スキーマである必要はなく、異なるフィールドを混在させることが可能。 ドキュメント RDBのレコードに相当。フィールドと値のペアのBSON(JSONをバイナリでエンコードしたデータ形式)で保持される。フィールドに対しインデックスを作成することも可能。
1年前
記事のアイキャッチ画像
SQL OR条件のパフォーマンス低下とオプティマイザ
ELW株式会社 テックブログ
とある実装でSQLのOR条件を多用する機会があり、そのパフォーマンスが著しく低く悩まされたので調査・改善した話。
1年前
記事のアイキャッチ画像
LATERALサブクエリについて
ELW株式会社 テックブログ
CTOをしております、村上です。今回のバックエンド勉強会では、Postgres SQLのLATERALサブクエリについて話しましたので、その内容を紹介させていただきます。
1年前
記事のアイキャッチ画像
Discordでゲームのマルチサーバを制御するbotを作ってみた
ELW株式会社 テックブログ
プライベートでDockerコンテナで動作するPalworldゲームサーバーを監視・制御するためのDiscord Botを作ったことがあるので紹介します。 主な機能は以下の通り プレイヤーの監視と非アクティブ時の自動停止 Discordメッセージによるサーバーの手動起動・停止 サーバーのステータス確認(稼働状況、リソース使用率) 起動・停止時のDiscord通知 サーバー スペック メモリ:4GB CPU:仮想4コア 容量:100GB OS:Ubuntu 22.04 言語はPythonです ※ Discordのボット機能の解説については今回は触れないでおきます。(いろんな解説記事が世に転がってま…
1年前
記事のアイキャッチ画像
フロントエンド社内勉強会: AWS AppSyncについてと既存プロジェクトでの活用事例
ELW株式会社 テックブログ
CTOをしております、村上です。今回の勉強会ではAppSyncについて話しましたので、その内容を紹介させていただきます。
1年前
記事のアイキャッチ画像
JWTを理解する
ELW株式会社 テックブログ
ELWでエンジニアをしております。井立田です。 今回はJWTとJWTを用いたセッション管理について見ていきます。 JWTとは JSON Web Tokenの略 JSON形式でデータを安全にやりとりするためのトークン 電子署名によって改ざんを検知できる
1年前
記事のアイキャッチ画像
Tanstack Startのserver functionとは
ELW株式会社 テックブログ
フロントエンジニアをしております、堀江です。 私はフロントエンド技術の情報収集に、主に『This Week in React』というニュースレターを活用しています。 thisweekinreact.com そのニュースレターで面白い記事を見つけ、勉強会として一緒に読み合わせを行いました。2つの連続した記事になるのですが、内容としてTanstack Startにおけるserver functionという概念の紹介と、それとRSCやNext.jsのApp Routerとの比較になっています。 www.brenelz.com www.brenelz.com Next.jsは記事中で紹介されているse…
1年前
記事のアイキャッチ画像
Anthropic Computer UseとBrowser Useを使ってみた
ELW株式会社 テックブログ
ELWでエンジニアをしております、井立田です。 今回はAnthoropic Computer UseとBrowser Useを実際に試してみたので、その手順と感想を書いてみました。 Anthropic Computer Use docs.anthropic.com Computer Useとは AI モデル(Claude )がコンピューターのデスクトップ環境を操作できる機能のこと 仮装環境で動作するため、ローカルPCのファイルやシステムに直接アクセスすることはできない プログラムを作らせることも可能 事前準備 クレジットのチャージ(https://console.anthropic.com/s…
1年前
記事のアイキャッチ画像
CSS設計思想の振り返りと今について考察してみる
ELW株式会社 テックブログ
単純に書けるが故にどういうルールで書くかを考えとかないとカオスになるんですよね。 クラスの命名の仕方とか、どういう粒度にするかとか、上書きどうするかとかとかとかとか。 実はその「ルール」をどうするかっちゅう設計思想というのがCSSにもありまして。 そのお話です。 !)最後にちゃぶ台返しします BEM、OOCSS、SMACSS、FLOCSS 1. BEM (Block, Element, Modifier) 2. OOCSS (Object Oriented CSS) 3. SMACSS (Scalable and Modular Architecture for CSS) 4. FLOCSS …
1年前
記事のアイキャッチ画像
Docker Desktop(mac)のコンテナログ削除
ELW株式会社 テックブログ
概要 肥大化したmac用Docker Desktopのコンテナログを削除した時の備忘録。 実行環境 Docker Desktop: 4.37.2 macOS: 15.3 CPU: Apple M3 導入 頻繁にコンテナごと down -> up していたり、ログ自体Docker DesktopのGUIで見ている分には然程気にならないかもしれないが、まあまあ長いこと動作し続けているローカルデバッグ用のコンテナに対しCLIでlogsを叩くと、さすがにスクロール量が気になってきておりログを掃除しようと思い立つ。 docker logs {コンテナID} が、具体的なログファイルの格納先はどこなのか?…
1年前
記事のアイキャッチ画像
LLMの活用状況・今後の活用方法の検討会の第二回を実施しました
ELW株式会社 テックブログ
ELWのCTOの村上です。LLMの活用検討会の二回目を社内で実施しましたので、その記事となります。 あくまで私が調べた内容や試行した結果ですので、もし間違いがありましてもご容赦いただけると幸いです。 第一回は以下となりますので、合わせて読んでいただけると嬉しいです。 techblog.elw.co.jp
1年前
記事のアイキャッチ画像
LLMの活用状況・今後の活用方法の検討会の第一回を実施しました
ELW株式会社 テックブログ
ELWのCTOの村上です。本記事の元となった会議では、私が日々の開発でLLM(Large Language Model)をどのように活用しているかを叩き台として各自どのように活用しているかの共有、そして今後のプロジェクトや日々の開発を改善していくかを議論しました。ぜひ参考にしていただければ幸いです。
1年前
記事のアイキャッチ画像
バックエンド社内勉強会: 共通化について
ELW株式会社 テックブログ
はじめに "どうしてあなたの共通化は間違っているのか"という、以下の@wolfmagnate(進捗ゼミ) さんの記事の第1章から3章をベースに勉強会を実施しました。 https://qiita.com/wolfmagnate/items/73c3770cf036eada630d
1年前
記事のアイキャッチ画像
フロントエンド社内勉強会:nuqsを使ってnext.jsのクエリパラメータの同期する
ELW株式会社 テックブログ
ELWでエンジニアをしております。井立田です。
1年前