ドメインを解き、事業を動かす。ニーリーQAの野望

こんにちは。株式会社ニーリーでQAエンジニアをしている池端です。 普段はラーメン食べてばかりでこういう記事を書かないのですが、熱量が高いうちに書き切ろうと思います。 そんなタイミングで、「#ニーリー開発組織の野望」シリーズも第3弾に突入していま…

ミッションは事業成長。PdMの働き方の現在地と、その先の「事業家集団」への挑戦

こんにちは!ニーリーでプロダクトマネージャー(PdM)をしている阿部です。 先日CTOの三宅から公開された「#ニーリー開発組織の野望」シリーズ、この記事はその第2弾となります。 note.nealle.com この記事は、以下の二部構成でお話しします。 【第一部】Pd…

AI OCRの検証記録 ~ ニーリーでの検証結果はこうでした ~

こんにちは、プロダクトAI開発の宮後(miya10kei)です。 先日、数年遅れで初コロナにかかってしまいダウンしていました(コロナ辛いですね、、、) 生成AIで画像やPDFのOCR(文字認識)を試したことはあるでしょうか? ニーリーでは事業で様々な形式の書類を…

チャットでSQL生成!データ活用チャットボットを社内公開したら結構いい感じだった

こんにちは、プロダクトAI開発の宮後(miya10kei)です。最近はMakuakeで変わったガジェットを探すのにハマっています️ 昨年、ニーリーで社内AIチャットボットのPoC開発をし、今年の4月から全社で本格的な利用を開始しました。現在は知識領域毎に特化した4つの…

大量のコールセンター通話を生成AIで自動要約し作業時間を劇的に削減

こんにちは、プロダクトAI開発の宮後(@miya10kei)です。 最近は暑さにやられて、自宅に引きこもっている今日この頃です 今回はコールセンターの通話内容を通話終了後に、ニアリアルタイムで要約する仕組みを構築したので紹介します。 はじめに ニーリーでは…

Findy Team+ Award 2025を受賞しました!〜導入から5ヶ月でスピート受賞した取り組みについて〜

はじめに こんにちは、プラットフォーム開発グループの菊地(@_tinoji)です。 この度、ニーリーがFindy Team+ 利用企業の中で特に開発生産性が優れた企業として「Organization Award Medium Division」を受賞いたしました。 prtimes.jp 表彰式でトロフィーを…

Axios 1.8 から導入された allowAbsoluteUrls の使い所と注意点

はじめに こんにちは、ARCH チームの立川です。 最近、Axios のリリースノートをチェックしていて 1.8.0 で Breaking Changes が入っていたので(ただし、メジャーバージョンが上がっているわけではない)、今回はその内容について書こうと思います。具体的…

Amazon ConnectのGUI開発体験を維持しつつ、Terraformで安全にリリースするハイブリッドIaC戦略

はじめに こんにちは、SREチームの森原(@daichi_morihara)です。 今回はAmazon ConnectのIaC化および開発体験向上に関する取り組みを共有していきたいと思います。Amazon ConnectはGUIのドラッグ&ドロップによる手作業で簡単にリソースを作成・変更できる利…

イベント登壇レポート ~ニーリーにおける生成AI活用の進め方と活用事例~

こんにちは。プロダクトAI開発の宮後(@miya10kei)です。 7/31に株式会社find様、株式会社ALGO ARTIS様と共催で「生成AI、実際どう? 〜現場エンジニアたちのぶっちゃけトークミートアップ〜」というイベントを開催させていただきました。 find.connpass.com …

Datadogのコスト最適化〜ログのコストを70%削減した話〜

はじめに こんにちは、SREチームの森原(@daichi_morihara)です。 今回はDatadogのログのコスト削減に関して最近行った取り組みを共有していきたいと思います。AWSやGCPなどのクラウドに関してはコスト削減・最適化に積極的に取り組んでいる一方で、Datadogに…

ゆるSRE#12 でみんなの武勇伝を聞いてきました!

yuru-sre.connpass.com お疲れ様です。SREの大木 ( @2357gi ) です。本日は 『ゆるSRE勉強会 #12 SRE乗り越え体験まつり 〜聞いてくれ俺の武勇伝〜』の参加レポです ゆるSRE自体は『ゆるい雰囲気で肩肘張らずにSRE関連のトピックについて話す勉強会』と銘打…

JaSST'25 Hokkaido 参加レポート ~生成AIによるテスト設計の進化を体感!~

こんにちは!QAチームの関井(@ysekii_)です。 先日、札幌で開催されたソフトウェアテストシンポジウム JaSST'25 Hokkaido に参加してきました!オフラインでのJaSST参加は6年ぶり、そしてJaSST Hokkaidoへの参加は今回が初めてです。 さて、本記事ではJaSS…

RxPYを部分的に導入するにあたって

こんにちは、ニーリーの佐古です。 現在開発速度や開発者体験の向上のため、取り組みの諸々を遂行しています。 Celeryの"接ぎ木" もともと弊社プロダクトではバッチの実行などにCeleryを利用していた経緯もあり、 高速化のために処理の並列化を考えると ある…

BigQueryで自由記述形式のデータを分類する方法 Part 2 ~ Vector Search 編 ~

はじめに さて今回はBigQueryで自由記述形式のデータを分類するPart 2ということで、予告通りVector Search を利用したテキスト分類を手軽にできるのか検証していきたいと思います。 (前回のブログでVector Search Indexと述べてますが、Vector Searchを利…

LLMにコンテキストを効率よく渡すには?【前編】 〜大量のファイル群から欲しい部分だけ〜

AI

はじめに こんにちは、ARCHチームの野呂です。 本当は近所の美味しいラーメン屋についてのテック(?)ブログを書こうと思っていたのですが、社内で行われている「LTL会*1」というイベントで共有するために作ったスライドがあったので、先にそれをブログにし…

AWS WAFでユーザー体験やSEOを損なわずに、厳しめのレートリミットを設定する

SREの大木 (@2357gi)です。最近スノボのオフトレにトランポリンに行ったら、初めてスノボした時ぐらい体がバキバキの筋肉痛になりました。オススメです。 すでにAWS WAFを導入し、スクレイピング対策としてレートリミットも設定しているものの、GoogleBotな…

バッチ監視改善 ~手動再実行のトイル削減とNAT gatewayコスト急増の失敗談付き〜

はじめに SREチームの森原(@daichi_morihara)です。今日はバッチの監視周りの取り組みについて共有していこうと思います。 これまではバッチのモニタリングに関して、エラーログの検知・対応のみの最低限の監視を行っている状態でした。そこでバッチ関連のオ…

Playwright移行プロジェクト奮闘記 〜現場で直面した3つの壁と、乗り越えるためのTips集〜

はじめに 本記事は、前回の記事「Playwrightへの移行 〜ノーコードツールから乗り換えた理由と、その裏側〜」 nealle-dev.hatenablog.com の続編です。 前回は、私がノーコードツールからPlaywrightへの移行を決断した背景や、準備・設計段階での工夫につい…

Datadog ErrorTracking を導入して通知アラート数を1/3以下にしました

こんにちは。最近は湿気にやられ気味のSREチームの高 (@nogtk) です。 先日、アプリケーションのエラー監視改善の一環として、Datadog ErrorTracking を導入しました。 厳密には、エラーログをデータソースとして扱う ErrorTracking for Logs を導入しており…

データカタログを社内公開するためにdbtソース定義ファイルを作った話

はじめに ソース定義ファイルとは? ソース定義ファイルはなぜ作る? yamlの生成 テーブル説明・カラム説明の追加 やってほしいこと 追記対象 カラム説明 おわりに はじめに こんにちは、Analyticsチームの清水です。 ガーゴイルゲッコーというヤモリ(8歳)と…

Playwrightへの移行 〜ノーコードツールから乗り換えた理由と、その裏側〜

こんにちは、ニーリーでSET(Software Engineer in Test)を担当している宮内です。 本記事では、私が入社して最初に取り組んだ「E2Eテスト自動化ツールの移行」について、特に「なぜ移行を決断したのか」という背景と、「移行の準備・設計で工夫したこと」…

Amazon Auroraのエンドポイントを変えずにKMSキーを交換する方法

はじめに こんにちは。SREチームの森原(@daichi_morihara)です。最近はゴルフにはまっており、先日初めてラウンドをまわりました。スコアは138、伸び代ですね。 今回はAmazon Auroraのクロスアカウントバックアップの実装と、その際に生じたAmazon AuroraのK…

既存の Angular アプリケーションの Zoneless 化への道のり

はじめに こんにちは、ARCH チームの立川です。 先日、Angular v20 がリリースされましたね。 https://blog.angular.dev/announcing-angular-v20-b5c9c06cf301 今回のリリースで v18 から Experimental であった Zoneless(Zone.js に依存しない変更検知) …

BigQueryで自由記述形式のデータを分類する方法 Part 1

はじめに Park Directでは利用者が駐車場契約の申し込みをキャンセルする時に理由を自由記述形式で入力してもらっています。なぜなら、サービスの改善や顧客満足度向上に不可欠な情報だからです。 また、 キャンセル理由をカテゴリに分類することで、 傾向の…

DevHRの募集を始めました!

プラットフォーム開発グループの菊地(@_tinoji)です。自グループのマネジメントをする傍ら、採用と技術広報でもミッションを持って活動しています。 この度ニーリーはDevHRのポジションを新設し、募集を開始したので宣伝です! 求人票はこちら! まずは結論…

【LAPRAS Engineer Talk #11】で「染み出す」カルチャーについて話しました!

プラットフォーム開発グループの菊地(@_tinoji)です。 先日、LAPRASさんのYouTubeチャンネルのシリーズ LAPRAS Engineer Talk にCTOの三宅と一緒に出演させていただき、動画が公開されたのでぜひご覧ください。 先日と言いつつ4月公開なのは許してください。…

地方都市でフルリモートって実際どうなの?デスク周りとリモートワーク環境について

はじめに こんにちは!Park Direct開発2グループの畠山です。 近年、働き方の選択肢として「フルリモートワーク」が一般的になり、都心から離れた場所で働くことに興味を持つエンジニアの方も増えているのではないでしょうか。 私自身も現在、宮城県仙台市で…

Angular Signals を用いて表示フォームとバリデーションの切り替えを効率化する

はじめに こんにちは、ARCH チームの立川です。 今回は、Angular Signals を用いて表示フォームとそのバリデーションの切り替えを効率化する方法ついてご紹介します。ユーザーの選択によって入力フィールドが動的に表示・非表示になったり、それに伴ってバリ…

構造化ログのユニットテストでassertLogsが効かない理由とStringIOを使った解決策

こんにちは。 Nintendo Switch 2 の抽選予選に無事コマを進め続けている、SREチームの高 (@nogtk) です。早く当選してこの大会からドロップアウトしたいものです。 今回は、構造化ログのユニットテストを書いたときのプチハマりと、それを解決した方法につい…

TypeScriptの条件分岐をスマートに記述するためのTips

はじめに こんにちは、ARCH チームの立川です。 今回が初めてのテックブログになります。 先日、社内で「条件分岐をスマートに評価する」というテーマで、TypeScript(JavaScript)における条件分岐の書き方について発表する機会がありました。古いコードに…