newmo 技術ブログ

技術で地域をカラフルに

生成AIの入出力品質は「フォーマット」で決まる ― 中間表現とテンプレートの組み合わせ

生成AIにドキュメントからテストケースを生成してもらったり、仕様書からコードを生成してもらったりする機会が増えてきました。しかし、こんな経験はないでしょうか? 入力の理解が不十分 - AIが仕様を読み飛ばす、重要な制約を見落とす 出力フォーマットが…

今 newmo で流行っている 3D プリンタを使った創作

はじめに 今日は newmo のプロダクトエンジニアの間で最近流行している 3D プリンタを使った創作について紹介します。 newmo の東京オフィスには大きめの 3D プリンタがあり、社員が交代で印刷しています。 3D プリンタが実際に稼働している様子 オフィスに…

ergo - Goのエラーライブラリを自作して1年間利用してみた振り返り

はじめに Goのエラー処理 Goのエラー処理に何かライブラリを利用していますか? この質問はGo 1.0のリリースから10年以上経つ今でも、日本のGoコミュニティでよくされる質問です。筆者(tenntenn)もよく他社の方からされます。 pkg/errorsやgolang.org/x/xe…

LangfuseとDSPyを使った定量的なプロンプト評価と改善の仕組み

(この記事は心のこもった手書きでお届けしております) @kuといいます。 10月に放送された「ガイアの夜明け」で紹介された、タクシーに乗りたいお客さまからの電話を受けて指定場所に迎車するLLMプロダクトmaido(Mobility AI Dispatch Operator)の開発に携わ…

Design Tokenが変化することを前提にした型安全なCSS — newmoでPanda CSSを採用した理由

© 2023-Present Segun Adebayo newmoでは、1行目のCSSを書く前に1つ目のDesign Tokenを定義しました。Design Tokenを起点にした開発を実現するため、CSSスタイリングフレームワークにはPanda CSSを採用しています。 しかし、創業期のスタートアップでは、デ…

仕様解読困難な状況を AI と共に解読した話

はじめに newmoグループでは参画してくれたタクシー会社のDXを行っています。タクシー業界は老舗企業が多く、運用されているシステムに関する知見が社内に残っていないケースが珍しくありません。また、長年稼働してきたシステムは技術的にもレガシー化が進…

LLMの安定した出力のために - Prompt Linterの活用

newmoでは様々なタクシー業務の内製化・効率化(DX)に取り組んでいます。 タクシーはアプリを利用して呼ぶこともできますが、電話による配車も昔からのお客さまや、事業者の方などから根強い人気があります。 私はるふ(@_ha1f)の所属するMaido(Mobility AI …

newmoでのAlloyDBの最適化の日々

1. はじめに newmoではメインのデータベースとしてGoogle CloudのAlloyDBを利用しています。サービスの成長に伴い、GraphQLやgRPCを通じたリクエストが増加し、最近、本番環境のデプロイ時にCPU負荷が90%を超えるという問題に直面しました。 本番環境へのデ…

ルックバック ニューモ エンジニアリング 2025

はじめに newmo Engineering として、はじめて Advent Calendar を実施する運びになりました。 いままでも一部のエンジニアは各々カンファレンスなどで発表しておりますが、普段発信しないメンバーも含めて newmo に所属のエンジニアがどのようなことを行っ…

Google ADK × DeepEvalで構築する音声AI Agentの会話評価基盤

newmoでは、GoogleのAgent Development Kit(ADK)を用いて音声配車AIエージェント「Maido」を開発しています。 これは従来オペレーターが電話で行っていた配車を、音声対話で自動化する取り組みです。Maidoについては以下のnoteで詳しく解説しているので、…

GitHub ActionsでESLintのShardingを実装して、CIの実行時間を51%削減しました

newmoでは、pnpm workspaceで管理している複数のアプリケーションやライブラリに対してESLintを実行しています。 プロジェクトの成長とともにLint対象のファイル数が増加し、CI実行時間とメモリ使用量が増加していました。GitHub Actionsのmatrixオプション…

monorepoでのApollo Client v4移行 - pnpm named catalogとLLMによる段階的移行

Apollo Client v4が2025年9月にリリースされました。エラーハンドリングの改善やバンドルサイズの削減など多くの改善が含まれていますが、破壊的変更も多く含まれています。特にmonorepo環境では、複数のアプリケーションや共有ライブラリが同じパッケージに…

Go Conference 2025 でワークショップ「†開発を加速させる黒魔術講座†」を開催しました!

先日開催された Go Conference 2025 にて、newmo のエンジニアから「†開発を加速させる黒魔術講座†」というワークショップを開催させていただきました。本記事では、現在も公開しているこのワークショップの内容について紹介します! †開発を加速させる黒魔…

renovatebotとpnpm catalogで実現する依存関係の自動アップデートとハンドブックによる安全な更新

はじめに モノレポ環境での依存関係管理は、プロジェクトの規模が大きくなるほど複雑になります。 newmoでpnpm catalogを導入してOne Version Ruleを実装し、パッケージのバージョンを一元管理する仕組みを構築しました。詳細はmonorepo内でのパッケージのバ…

feature flag 入門と newmo の feature flag 基盤について

こんにちは。Platform Team の tobi (@iam__tobi) です。 本記事では feature flag の基礎的事項の説明と、Platform Team で開発してきた newmo 独自の feature flag 基盤の設計思想と全貌について二段構成でご紹介します。 これから feature flag を導入し…