エムティーアイ エンジニアリングブログ
https://tech.mti.co.jp/
エムティーアイ エンジニアリングブログ
フィード

エムティーアイ Blog Summer 2026 の最終日を迎えて
エムティーアイ エンジニアリングブログ
はじめに こんにちは。テクノロジー本部の原です。 ※この記事は「エムティーアイ Blog Summer 2026」の 6/30 分の記事です。 私たちは6月1日から30日までの間、「エムティーアイ Blog Summer 2026」と題し、 1日1記事を投稿していくリレー形式のブログイベントを開催いたしました。 イベントを終えて 全22日間にわたる投稿が、本日で一区切りとなりました。 今回も前回同様、若手からベテランエンジニアまで、さまざまな方に、 日々の業務で培った技術や知見を共有していただきました。 特に今年は、AIの活用や考え方が急速に広がっています。 そうしたなかで、AIを前提とした思…
18日前

AIに開発を任せるために、フローを育てた話
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/29 の記事です。 こんにちは、AOE部の妹尾です。 2025年12月から現在(2026年6月)にかけて、AIを活用した開発手法をプロジェクトに導入してきた経緯をまとめました。 何度も試行錯誤を重ねた結果、現在の形になるまでの変遷を振り返ります。 ベストプラクティスではないかもしれませんが、一例として認識していただければと思います。 そもそも何をやっているのか 最近、AIに開発を手伝わせることで「速く・安く・品質を保って」開発できるんじゃないかという話をよく聞くようになりました。 ただ、「何を作るか」「どう設計するか」とい…
22日前

手動診断でしか見つからない脆弱性の話
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/26 の記事です。 こんにちは、テクノロジー本部 Red Teamの石廣です。 今回は、Red Teamの強みでもある手動診断について、自動スキャンとの違いを交えながらお話しします。 目次 はじめに 自動スキャンが得意なこと 自動・手動・コードレビューの役割分担 自動スキャンが見落とすもの 1. ビジネスロジックの脆弱性 2. 複雑な IDOR(水平権限昇格) 3. 競合状態 4. 多段階の攻撃チェーン 5. 認証フローのバイパス 6. SSRF の複雑なケース 手動診断のアプローチ 手動診断にも限界はある まとめ 参考資…
25日前

セキュリティ診断で実際に使うOSSツール
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/25 の記事です。 こんにちは、テクノロジー本部 Red Teamの下山です。 普段はセキュリティ診断業務に携わっています。 本記事では、診断の現場で実際に使っているOSSツールを3つ紹介します。 目次 はじめに 脆弱性診断の一般的な流れ 1. Nmap — ポートスキャン・サービス検出 2. testssl.sh — SSL/TLS設定チェック 3. dirsearch — ディレクトリ・ファイル探索 おわりに はじめに セキュリティ診断(脆弱性診断)の現場では、有償・無償さまざまなツールが使われています。本記事では、そ…
25日前

Microsoft Foundry を学ぶ
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/24 分の記事です。 こんにちは、AI SRE部の上野です。 好きなThe Chainsmokersは「Don't Let Me Down」です。※Buildでゲスト出演した際に演奏いただいたので個人的に大満足です。 この度Microsoft Build 2026に参加させていただきました。もはや恒例となっておりますが今年もAIがトレンドでした。 イベントの詳細は社内メンバーにおまとめいただいておりますため、よろしければこちらご参照ください。 Microsoft Build 2026 参加レポート - エムティーアイ エン…
1ヶ月前

Microsoft Build 2026 参加レポート
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/22 の記事です。 こんにちは、AIオーケストレーションエンジニアリング部の涌井です。 先日、Microsoft Build 2026 に現地参加してきました。 今回の記事では、現地の様子や印象に残ったセッションや感想についてご紹介します。 なお、エムティーアイでは、毎年Microsoft Buildに参加しております。 昨年の記事はこちらです。 Microsoft Build 2025に参加しました - エムティーアイ エンジニアリングブログ 2025 MS Buildに参加したのをきっかけにAI学習 - エムティーアイ…
1ヶ月前

ローカルLLMエージェントを自作して、Claude Codeに実験管理させた話
エムティーアイ エンジニアリングブログ
はじめに ※この記事は「エムティーアイ Blog Summer 2026」の 6/19 の記事です。 こんにちは。テクノロジー本部の田中です。 以前からエージェントアプリ自作に興味があってやっていたことを改めてまとめました。 GPUなし、CPU推論だけで、LLMエージェントはどこまで実用的にできるのか。 この問いに答えようとして、Ollama + LangChain + MCP でローカルエージェントをフルスクラッチで作り、実験しました。 最初の結果は「14bは全タスクタイムアウト」という壊滅的なものでしたが、試行錯誤を重ねてある程度動くようになりました。 本記事では構成・実験設計・実験で分か…
1ヶ月前

AIエージェントにおける問題設計:タスクを「解ける形」にするということ
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/17 の記事です。 こんにちは。スマートコンテンツ事業部の藤木です。 AIにタスクを任せてうまくいかないときには、漠然とタスクの与え方が悪かったとかAIの性能が低いからなどと考えがちです。 難しいタスクについてどこまでAIに任せるべきか、そもそもAIが解決できるのかという悩みを持つこともあると思います。 なので今回は、AIにタスクを渡して解決させるとはどういうことかを考え、実務で必要な観点を考察したいと思います。 目次 目次 AIに与える問題は4つに分類できる 原理的に解くことができない問題とは 解ける問題に近づけるには …
1ヶ月前

mutation testing(変異テスト)── カバレッジでは見えないテストの穴を探す
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/10 分の記事です。 こんにちは!AIオーケストレーションエンジニア部の原です! 今回は「mutation testing(変異テスト)」という手法を紹介します。ざっくり言うと「テストコードがちゃんと仕事をしているかを検証する」という考え方です。実際に手を動かして試してみました。 本記事では、まず mutation testing とは何かを整理します。そのうえで C#(Stryker.NET)で実際に動かし、「カバレッジ100%なのにテストに穴がある」状態を自分の目で確認していきます。 もくじ テストの「正しさ」は誰が保…
1ヶ月前

AIエージェント時代のターミナル整備。リミットが見えれば、作業が止まらない
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/8(月) 分の記事です。 スマートコンテンツ事業部で保守・開発を行っている 兒玉 です。 今回は、Claude Code や Codex CLI のターミナル表示を整えた話を紹介します。 前回の記事(2024 年のターミナル整備編)の続きとして読んでもらえると、少し文脈がつながると思います。 AI 活用について 本記事の構成・初稿の作成には Claude Code を一部利用しています。最終的な文章・公開判断は執筆者が行っています。記事の内容が Claude Code 活用とも関連しているため、こうした形での活用例として紹…
1ヶ月前

踏み台サーバーとは?仕組みから今どきの代替手段まで解説
エムティーアイ エンジニアリングブログ
※この記事は「MTI Blog Summer 2026」の 6/9 分の記事です。 こんにちは!AIオーケストレーションエンジニア部の原です! 最近、業務で踏み台サーバーを経由してEC2インスタンスに接続する機会があったのですが、手順通りに操作はできたものの、「そもそも踏み台サーバーとは何か」「なぜ必要なのか」をちゃんと理解できていなかったので、改めて調べてみました。 本記事では、踏み台サーバーの仕組みを前提知識から整理し、今どきの代替手段であるAWS Systems Manager Session Managerとの比較までをまとめていきます。 前提知識: VPCとサブネット 踏み台サーバー…
1ヶ月前

AIエージェント氾濫時代の交通整理 — ハーネスエンジニアリングで読み解くAIの適材適所
エムティーアイ エンジニアリングブログ
※この記事は「MTI Blog Summer 2026」の 6/5 分の記事です。 こんにちは、AIエンジニアリング部の平野です。 普段はデータサイエンスやソフトウェアアーキテクチャまわりの仕事をしていて、最近はデータや生成AIをどう業務に活用するかという観点での技術検証や、ガイドライン整備をやっています。 この記事では、最近社内情報共有会で発表した内容を一般向けに書き直してお届けします。テーマは「AIエージェントに何でもやらせるのが、本当に最適解なのか?」という問いです。 Claude CodeやCursor、Devin、GitHub CopilotのAgent Mode……ここ数年で実用レ…
2ヶ月前

Claude Codeの会話ログで振り返る、自分のAI活用
エムティーアイ エンジニアリングブログ
※この記事は「MTI Blog Summer 2026」の 6/4 分の記事です。 こんにちは!AIオーケストレーションエンジニア部の原です! 今回はClaude Codeのセッションデータの構造と、それを使って自分のAIの使い方を振り返ってみた話を紹介します。 はじめに 現在AIが随分と普及してきた中で、今度はどうAIを制御して使用者に最適化された形にしていくのかという部分が話題になっています。Claude CodeでいうとCLAUDE.mdに制約などを書いて充実させていくことなどが1つのケースとして挙げられますね。ただそうなると、自分の使い方や使いづらかった点を振り返りながら制約としてAI…
2ヶ月前

Microsoft Foundry でチャットアプリを書いたら、3 年前の自分のコードが 8 割消えた話
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/3(水) 分の記事です。 スマートコンテンツ事業部で保守・開発を行っている 兒玉 です。 今回は、かつて自分が関わっていた社内チャットアプリの話を供養しつつ、Microsoft Foundry を使うと当時のコードがどれだけ消えるかを Before/After で紹介します。 はじめに(AI 活用について) 本記事の構成・初稿の作成には Claude Code を一部利用しています。最終的な文章・公開判断は執筆者が行っています。記事のテーマと相性が良いため、こうした取り組みの実例として活用方法も含めて紹介します。 はじめに…
2ヶ月前

人と AI の分業ラインをどこに引くか ── Claude Code Skills で運用 SQL を半自動化した話
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2026」の 6/2(火) 分の記事です。 スマートコンテンツ事業部で保守・開発を行っている 兒玉 です。 今回は、日々の運用業務で発生する SQL 作業を Claude Code の Skills 機能を使って半自動化してみた、という取り組みを紹介します。 はじめに(AI 活用について) 本記事の構成・初稿の作成には Claude Code を一部利用しています。最終的な文章・公開判断は執筆者が行っています。記事のテーマと相性が良いため、こうした取り組みの実例として活用方法も含めて紹介します。 はじめに 運用フェーズの業務には、「やる手順…
2ヶ月前

エムティーアイ Blog Summer 2026(夏のAdvent Calendar)の開催!
エムティーアイ エンジニアリングブログ
はじめに こんにちは!テクノロジー本部の原です! 日に日に蒸し暑さが増す今日この頃ですが、負けず劣らずホットな「エムティーアイ Blog Summer 2026」を開催します! 昨年開催したBlog Summer 2025に続き、今年も6月1日から6月30日(土日除く)の間、エンジニアがホットな技術記事をお届けします! エムティーアイ Blog Summer 2026とは? Advent Calendarの夏バージョンです。弊社のエンジニアが日頃の業務や学習で得た知識やノウハウを共有する技術ブログのイベントになります。 公開スケジュールと記事一覧 公開日タイトル 6/1エムティーアイ Blog…
2ヶ月前

AI-DLC継続管理機能:ドキュメント更新を支援する仕組み
エムティーアイ エンジニアリングブログ
はじめに こんにちは!AOE部の荒川です。 私たちは、日々の開発業務でClaude Codeを使用しており、AI-DLC(AI-Driven Development Life Cycle)という開発手法で開発を進めています。AI-DLCでは、AIが要件定義、アーキテクチャ設計、実装計画といったドキュメントを大量に生成します。 しかし、AIが生成したドキュメントは開発途中で古くなっていってしまいます。 実装中に設計変更があったとき、どのドキュメントを更新すべきか分からず、結局ドキュメントが放置されてしまう...。 せっかく生成したドキュメントが誰も見ない資料になってしまうのではないか、と考えまし…
4ヶ月前

AI-DLCは開発をどう変えるのか
エムティーアイ エンジニアリングブログ
テクノロジー本部 AI エンジニアリング部の吉田です。 2025 年 11 月 17 〜 19 日の 3 日間、アマゾンウェブサービスジャパン合同会社が開催する、「AWS AI-DLC Unicorn Gym」というワークショップに参加しました。 本記事では、3 日間のワークショップで得た気づきと、学びを共有します。体験したからこそわかったこと、見えてきた課題について、率直に綴ります。 AI-DLCの基本概念については詳しく触れていないため、次のセクションの参考資料をご参照ください。 なお、本記事の内容は筆者個人の見解に基づいています。 AI-DLC / AI-DLC Unicorn Gym …
7ヶ月前

DroidKaigi 2025 参加レポート
エムティーアイ エンジニアリングブログ
こんにちは、アプリ開発支援部の涌井、タンです。 先日、DroidKaigi 2025 に参加してきましたので、その内容をレポートします。 目次 DroidKaigi の概要 DroidKaigi とは? イベントの特徴 ダイバーシティへの取り組み 参加した経緯 セッション Building cross-platform apps in Kotlin with Compose Multiplatform 意外と知らない Android と Google Play の世界 「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド〜新メンバーを活躍に導くオンボーディング戦略〜 Kotlin…
9ヶ月前

iOSの非同期処理をメインスレッドとバックグラウンドスレッドから理解する
エムティーアイ エンジニアリングブログ
はじめに こんにちは!アプリ開発支援部の小林です! iOSのアプリを開発していると、多くの場面で非同期処理が登場します。 しかし、「非同期処理とは何か?」と改めて聞かれると、説明するのは難しいのではないでしょうか?(私もです) なんとなく、「時間のかかる処理には async/awaitやTask を使う」ということは知っていても、実際にその仕組みを理解するのは容易ではありません。 そこで、本記事では、非同期処理がある場合と無い場合を比較しつつ、メインスレッドとバックグラウンドスレッドの観点からiOSの非同期処理についての解説を行います。 そして、非同期処理を「使える」から「理解できる」へステッ…
10ヶ月前

エムティーアイ Blog Summer 2025の最終日を迎えて
エムティーアイ エンジニアリングブログ
はじめに こんにちは。アプリ開発支援部の佐藤です。 ※この記事は「エムティーアイ Blog Summer 2025」の 8/29 分の記事です。 私たちは8月1日から31日までの間、「エムティーアイ Blog Summer 2025」と題し、1日1記事を投稿していくリレー形式のブログイベントを開催いたしました。 イベントを終えて 全20日間にわたる投稿が、ついに本日で一区切りとなりました。 新卒からベテランエンジニアまで様々な立場のメンバーが参加し、日々の業務で培った技術や知見が共有されました。 またフロントエンド、インフラ、AI、設計、働き方に関するものまで、非常に幅広いテーマが投稿されてい…
1年前

オブジェクト変換におけるAutoMapperの使い方
エムティーアイ エンジニアリングブログ
はじめに はじめまして!2025年に新卒入社し、テクノロジー本部に所属している原です。 今回は私がC#でASP.NET Coreを学習している中で知った「AutoMapper」というライブラリについて紹介したいと思います。 ※この記事は「エムティーアイ Blog Summer 2025」の 8/28 分の記事です。 目次 AutoMapperとは 使用例 マッピング設定 ASP.NET Coreでの登録方法 まとめ 感想 1. AutoMapperとは AutoMapper公式ドキュメントによると、AutoMapperは「似た構造を持つオブジェクト間のマッピングを自動化するライブラリ」とされて…
1年前

フロントエンドにおけるデータアップロード時のアイテム追跡機能(履歴表示)について
エムティーアイ エンジニアリングブログ
スマートコンテンツ事業部の兒玉です。 直近バックエンド&フロントエンドのデータ取り込み部分の改修を担当し、その中で面白い学びがあったので共有したいと思います。 自身が学生の時に知っていると嬉しいなと感じることがあったので少しでも学びの糧になれば幸いです。 ※この記事は「エムティーアイ Blog Summer 2025」の 8/27(水) 分の記事です。 ※本記事の一部内容(コード例、解説文の構成など)はAIを活用して作成しています。 ※本記事のデモアプリケーションは教育向けに作成したもので、業務との関わりは一切ありません。言語/技術スタック全て個人の趣味で構成しています。 この記事の対象者 学…
1年前

3日間で企画のコアができる「デザインスプリント」とは!?
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2025」の 8/25 分の記事です。 はじめに みなさん、こんにちは!テクノロジー本部所属の金子 椋です! 4月に新卒として株式会社エムティーアイに入社しました。 今回は、エンジニアとしての研修の一環で行った「デザインスプリント」について紹介したいと思います。 こんな興味はありませんか? デザインスプリントって聞いたことあるけど、やったことがない。もう少し知りたい、少しやってみたい! 短期間で企画や0→1のアイデアを生み出さないといけない。 複数人で話し合って企画を進めるのが苦手。 自分の発想に頼ってアイデアを出すことが苦手。 と思ったこ…
1年前

【Android】targetSdkVersionを34から35に更新する
エムティーアイ エンジニアリングブログ
はじめに こんにちは。アプリ開発支援部の佐藤です。 この記事は、AndroidアプリのtargetSdkVersionを34から35に更新した際の対応記録です。 SDK更新の際に行った対応や直面した問題の解決策などをまとめています。 これからSDK 35への対応を始める方や、既に作業中で問題に直面しているAndroidエンジニアの方にとって、本記事が参考になれば幸いです。 ※この記事は「エムティーアイ Blog Summer 2025」の8/26 分の記事です。 対応したことの全体像 targetSdkVersionを35に更新する際には、それに合わせて主要なライブラリやツールも互換性のあるバ…
1年前

ドメインモデル貧血症を改善し、リッチドメインモデルを採用したお話し
エムティーアイ エンジニアリングブログ
はじめに スマートコンテンツ事業部の兒玉です。 昨年から社内で DDD(ドメイン駆動設計) の勉強会が活発になり、ドメインモデルやモデルに振る舞いを持たせることについて学ぶ機会が増えました。 当初は理解が難しかったのですが、実際の業務で新規リソースを立ち上げる中で、「モデルに振る舞いを記述することの利便性」を実感しました。この記事では、その気づきを具体例を交えて共有します。 ※この記事は「エムティーアイ Blog Summer 2025」の 8/22 分の記事です。 ドメインモデル貧血症とは? ドメインモデル貧血症については以下のように語られており、ドメインモデルがgetter/setterし…
1年前

ストーリーで書くことで見えてくるもの 〜ラフ画面から基本設計へ〜
エムティーアイ エンジニアリングブログ
こんにちは、スマートコンテンツ事業部の天野です。 今日は、私が OKR として進めている「開発リーダー育成」取り組みの中から、 要件定義・基本設計に関する事例を紹介します。 ※この記事は「エムティーアイ Blog Summer 2025」の 8/21 分の記事です。 機能一覧・ラフ画面から基本設計へ 新しいアプリをゼロから作る機会は多くないかもしれませんが、 OKR では 「新規 WEB アプリを作る」 という想定で、ビジネス側から渡された要求定義・ラフ画面を元に、要件定義〜基本設計をどう進めていくかを学んでいます。今回はその中で、基本設計にあたる 「画面定義」「ER図」 へつなげていくプロセ…
1年前

React Router における共通レイアウトの扱いについて
エムティーアイ エンジニアリングブログ
※この記事は「エムティーアイ Blog Summer 2025」の 8/20 分の記事です。 はじめに こんにちは。スマートコンテンツ事業部の高木です。 今回は、私が最近知って驚いた「React Router における共通レイアウトの扱いについて」についてご紹介します。 共通レイアウトとは? フロントエンド開発では、headerやfooterなど、どの画面でも共通して表示される部分(共通レイアウト)がありますよね。 私はこれまでReactでUIを実装する際、headerやfooterなどの共通レイアウトをApp.jsに直接インポートしていました。 そうするとルーティングの記述とレイアウトの記述…
1年前

AI駆動の要件定義と「Why」の重要性
エムティーアイ エンジニアリングブログ
はじめに スマートコンテンツ事業部、開発担当の玉置です。 ソフトウェア開発において「Why(なぜそれが必要か)」を理解することの重要性が広く語られてきました。AI駆動の要件定義においても、AIはエスパーではないため、この原則は重要だと考えています。 今回、AI駆動の要件定義において、同一の要求に対してWhyの情報を意図的に省いて設計と計画を進め、その結果を比較することで、あらためてWhyの定義と、AIにコンテキストを伝えることの重要性を確認してみました。 実験概要 同一要求で「Whyなし」「Whyあり」の2パターンの要求文書を作成し、それぞれをもとにAIで以下の成果物を生成しました。 要求文書…
1年前

GitHub Copilot Coding Agent 体験記
エムティーアイ エンジニアリングブログ
はじめに こんにちは。スマートコンテンツ事業部の中津留です。 最近、OKR活動の一環として「AIを活用したコーディング」に取り組んでいます。 普段はGitHub Copilotにコード補完をしてもらう程度でしか活用していませんが、 今回はせっかくの機会なので、それ以外の機能についても試してみることにしました。 ※この記事は「エムティーアイ Blog Summer 2025」の 8/18 分の記事です。 作るもの 現在模擬プロジェクトとして健康をサポートするアプリを開発しており、私は「健診機関一覧を表示」する機能の実装を担当中です。 アプリ画面は別途AIで実装済みの状態のため、今回はアプリから …
1年前