Safie Engineers' Blog!

Safieのエンジニアが書くブログです

AWS ECS Blue/Green デプロイ導入について

この記事は Safie Engineers' Blog! Advent Calendar の15日目の記事です。

はじめに

こんにちは、Safie でサーバーサイドエンジニアをしている金成といいます。 今回は AWS ECS Blue/Greenデプロイをサービスに導入してみたので、そちらについて共有させてください

AWS ECS Blue/Green デプロイは今年になって有効化された機能で、今迄は ECS ではローリングリリースのみ、Blue/Green デプロイをやる場合は CodeDeployを使う必要がありました。 今回の機能追加で、ECSのサービス設定の変更と関連リソースを追加することで、ECSの設定のみで Blue/Greenデプロイができるようになりました。

今回、自分たちのチームで運用しているサーバーについて、適用してみました

  • はじめに
  • 背景とモチベーション
  • リリースの手法
    • ローリングリリース
    • Blue/Green デプロイ
  • B/G デプロイのフロー
  • ECS における B/G デプロイの選択肢
  • Lifecycle Hooks によるリリース安全性向上
  • 制限事項とハマりポイント
    • 1. B/G → ローリングへの切り替え時
    • 2. ALBリスナールールの制限
  • 現状の課題と今後の展望
  • おわりに
続きを読む

エンジニアリング組織の「横のつながり」をどう作るか?周囲を巻き込む組織開発の第一歩

この記事はSafie Engineers' Blog! Advent Calendar 14日目の記事です

はじめに

はじめまして!エンジニアリングオフィスの山崎麻衣子(@ymzaki_m4)と申します。
セーフィーには2025年3月に入社し、開発本部の組織開発全般に携わっています。

(エンジニアリングオフィスのお仕事については、昨年の記事も良ければご覧ください!) engineers.safie.link

今回は、私がこれまで取り組んだ「組織の横連携強化」に関する施策についてご紹介します。
組織の拡大によって生じ始めた課題と、その解消に向けた最初の一歩。組織マネジメントで同じような悩みを抱える方の、何かちょっとしたきっかけになれば幸いです。

  • はじめに
  • 強力な組織の実現へ:課題を探る
  • 本質的な課題を特定:浮き彫りになった2つの壁
  • 「横のつながり」を生む:GL横断ミーティングの実行と設計
  • 組織変革の第一歩と、次の目標
  • おわりに
続きを読む

基幹システム開発部って?にお答えします!

この記事はセーフィー株式会社 Advent Calendar 2025の13日目の記事です!🎄

はじめに

こんにちは!

セーフィー株式会社 基幹システム開発部 戦略グループの佐々木です。

約1年前、セーフィーの中途採用の選考を受けようとしていた私は途方に暮れていました・・・

なぜなら

「セーフィーの基幹システム開発部とはなにか」

についての情報が、募集要項以外にほぼ見つけられなかったからです。

過去の私と同じように「基幹システム開発部に興味はあるけど、情報が全然見当たらないな・・」とお困りのみなさんへ、セーフィーの基幹システム開発部についてご紹介したいと思います!

続きを読む

面倒なテストコードはAIに任せる。セーフィー新卒2年目が実践する「Claude Code」テスト半自動化ワークフロー

この記事はSafie Engineers' Blog! Advent Calendar 12日目の記事です。

  • はじめに
  • そのテストコード、まだ全部「手」で書いていますか?
  • 今はどんな生成AIを使っているのか?
  • なぜ「全自動」ではないのか?
  • 実践!Claude Codeを使ったテスト半自動化4ステップ
  • このワークフローがもたらした、時間以上の「価値」
  • おわりに:AIとの協業が当たり前になる未来へ

はじめに

こんにちは!セーフィー株式会社でサーバーサイドエンジニアをしている坂上(@Bobtaroh)です。新卒2年目となり、私を含め同期のエンジニアたちも、それぞれの配属先で一生懸命に業務をこなしています。

本記事では、同じく新卒2年目であるフロントエンド開発を担当している東條さんにインタビューを行い、開発現場で話題の「Claude Code」を活用したテスト半自動化のワークフローについて紹介します。

「AIに全部任せる」のではなく、あえて「半自動化」を選ぶその理由と、具体的な実践手法について深掘りしました。

続きを読む

【Python×Rust】マルチカメラトラッキングを10倍高速化!PyO3とmaturin導入実践ログ

この記事は Safie Engineers' Blog! Advent Calendar 2025 11日目の記事です。

はじめに

今年も残すところあとわずかとなりましたね。AI開発部の田中です。
現在は、複数のカメラ映像を統合して解析するシステムのR&D(研究開発)に取り組んでいます。

画像認識AIの分野ではPythonが主流ですが、「Pythonでロジックを書いたら、処理が遅すぎてリアルタイム性が確保できない」という壁にぶつかったことはありませんか?

今回は、6台のカメラを使ったリアルタイムマルチカメラトラッキングを実装する過程でまさにその問題に直面し、一部の処理をRustに置き換えることで劇的な高速化を実現した話を紹介します。

「Rustは難しそう」と思っている方でも、Pythonと連携させるだけなら意外とハードルは高くありません。ぜひ最後までお付き合いください。

  • はじめに
  • リアルタイムマルチカメラトラッキングとは
  • システム構成と技術スタック
    • 1. 推論部(映像のデコード・AI推論)
    • 2. 統合部(トラッキング・ID統合)
  • Pythonでの限界とRustへの転換
    • なぜRustを選んだか
  • PyO3とmaturinを使った実装フロー
    • 前提ツール
    • 1. プロジェクトのセットアップ
    • 2. Rustコードの実装 (src/lib.rs)
    • 3. Pythonからの呼び出し (main.py)
    • 4. ビルドと実行
  • 導入結果:10倍以上の高速化を実現
  • まとめ
続きを読む

Jetpack Composeでドラッグ&ドロップで要素の並び替えが可能なリストやグリッドを作る

この記事はSafie Engineers' Blog! Advent Calendar 10日目の記事です

こんにちは!Safie(セーフィー)でモバイルアプリの開発をしている河原(@rui_qma)です。

🚀 はじめに:なぜComposeでドラッグ&ドロップが必要なのか

従来のViewシステムとの壁

AndroidチームではAndroid ViewベースのUIから Jetpack Compose ベースのUIへの移行を進めています。

弊社のプロダクト「Safie Viewer(セーフィー ビューアー)」のカメラ一覧画面には、カメラの順番をドラッグ&ドロップ(D&D)によって並び替える機能があります。

従来のAndroid Viewでは、RecyclerViewItemTouchHelper を組み合わせることで、D&Dによる並び替えが公式APIとして簡単に実現できていました。

しかし、Jetpack Composeでは、2025年11月現在、LazyVerticalGrid(またはLazyColumn)内で同様のD&D並び替え機能を「公式APIだけで」実現するための専用のコンポーネントはまだ提供されていません。(composeBom: 2025.11.01で確認)

本記事では、この「Composeでドラッグ&ドロップによる並び替えが可能なグリッド」を、公式API未提供の中でどのように作り込むか、その設計と実装手法について解説します。

  • 🚀 はじめに:なぜComposeでドラッグ&ドロップが必要なのか
    • 従来のViewシステムとの壁
  • ✨ 実現したい機能の要件定義
  • 📦 Step0: 土台となるComposableを用意
  • 👆Step1: 要素の長押し検出と触覚フィードバック
    • 実装のポイント
  • ↔️Step2: 要素をドラッグして移動する
    • 実装のポイント
  • 🔄Step3: ドラッグによる要素の入れ替え処理
    • 実装のポイント
  • 💫Step4: 入れ替わる際のアニメーションを実装
    • 実装のポイント
  • ⬇️Step5: リストの上下端到達時の自動スクロール
    • 実装のポイント
  • 🎉 まとめと今後の展望
    • 👀将来的な見通し
    • 💻 実装コード
続きを読む

【生成AI活用】開発組織の生産性を変革する「5つの戦略軸」と推進プロジェクトの全貌

この記事は Safie Engineers' Blog! Advent Calendar 2025 9日目の記事です。

はじめに

こんにちは、エンジニアリングオフィスの横道 (@m_yokomichi)です。

2025年、AI技術は私たちの予想を超えるスピードで進化を遂げました。いまや生成AIを使いこなせるか否かは、個人の生産性だけでなく、エンジニアとしてのキャリア、ひいては企業の競争力そのものを左右すると言っても過言ではありません。

今後、活用できる層とそうでない層の差は広がる一方です。そのため、生成AIの活用は私たちセーフィーにとっても全社の重要課題であり、開発本部として組織的に向き合うべきテーマとなっています。

本記事では、開発本部全体で取り組んでいる「生成AI利用促進プロジェクト」について、以下のポイントを中心にご紹介します。

  • 組織課題を解決するための「5つの戦略軸」
  • ボトムアップで進める実際の活動内容
  • 導入による具体的な成果と今後の展望

単なるツールの導入事例ではなく、「組織文化をどう変えていくか」という観点での全貌をお伝えします。

  • はじめに
  • 私たちが直面していた「5つの壁」
    • 1. 情報収集の「非効率性」
    • 2. 技術検証・導入の「属人化」
    • 3. ナレッジの「サイロ化」
    • 4. 活用機運の「温度差」
    • 5. 技術的取り組みの「認知不足」
  • 解決への戦略的アプローチ:5つの軸
    • プロジェクト全体構想図
    • 軸1:情報収集活性化 📡
    • 軸2:技術検証・導入 🛠️
    • 軸3:ナレッジデータベースマネジメント 📚
    • 軸4:生成AI活性化 🔥
    • 軸5:社外発信 📢
  • 実際の活動と想定外の反響
    • 20名の有志が集結
    • 分科会による自律的な運営
  • 成果と今後の展望
    • 主な成果
    • 今後のロードマップ
  • おわりに
続きを読む

セーフィー流の脅威モデリング実践ガイド

この記事は Safie Engineers' Blog! Advent Calendar の8日目の記事です。

こんにちは、セーフィー株式会社でサイバーセキュリティを担当している金原です。

前回の記事「セーフィーのサイバーセキュリティ戦略の作り方」では、私たちが目指す「セキュリティが当たり前の文化」と「そこに到達するための戦略」についてお伝えしました。今回は、戦略の具体的な打ち手の一つ、「脅威モデリング」 について深掘りします。

「脅威モデリング」と聞くと、専門用語が多くて「難しそう」「時間がかかりそう」と感じてしまうことはありませんか? 正直に言うと、私たちも最初はそうでした。

しかし、試行錯誤してたどり着いた結論はシンプルです。脅威モデリングの本質は「関係者同士の対話を促進するコミュニケーションツール」だということ。

今回は、一般的な脅威モデリングの手法を解説しつつ、それを「セーフィーではどう解釈し、運用しているか」という実践的なナレッジ(=セーフィー流の型)をセットで公開します。これから脅威モデリングを始めたい方、もっと活用していきたい方の「生きた教科書」になれば幸いです。

  • そもそも「脅威モデリング」って何?
  • なぜ今、私たちがこれを推すのか
  • 脅威モデリングの進め方(解説とセーフィー流の実践)
    • 4つの重要な質問
      • 【問1】私たちは何に取り組んでいるか? ~モデルを作る~
      • 【問2】何が問題になりうるか? ~STRIDEでリスクを見つける~
      • 【問3】それに対して何をするのか? ~リスク評価と対策~
      • 【問4】十分にうまくできたか? ~ふりかえり~
    • セーフィーでの活用事例
      • 1. セキュリティレビューへの「部分導入」
      • 2. 「すぐに始められる」テンプレートの用意
      • 3. 生成AIを「副操縦士」にする
  • さいごに
続きを読む

「後でやる」を放置しない。情報システムチームを強くした「もやもやリスト」

この記事は Safie Engineers' Blog! Advent Calendar の7日目の記事です。

情報システムグループの松尾です。

以前、当ブログにて、情シスチームがアジャイル型の仕事の話へ変革した際の記事を書かせていただきました。

engineers.safie.link

今回はその続編として、アジャイルなチーム作りをさらに進める中で生まれた、「もやもやリスト」を用いた継続的改善(カイゼン)の取り組みについてお話しします。

  • 「隠れた負債」への気付き
  • 心理的ハードルを下げる「もやもやリスト」
  • 登録コストを下げる「仕組み」
  • 「もやもや」から生まれた具体的なカイゼン
  • 1. 入社フローにおけるプロセスの標準化
  • 2. 障害対応の脱属人化(クロスファンクショナルなチームへ)
  • リーダー任せにしない、持続可能な運用に向けて
続きを読む

Android XR SceneCoreを使ってみよう

この記事はセーフィー株式会社 Advent Calendar 2025の12月6日の記事です。

こんにちは!

セーフィー株式会社のAndroidエンジニアのジェローム(@yujiro45)です🎄

昨年、私が書いた「AndroidでSceneViewを使って、3D/ARを表示する」という記事で、アプリに3D/AR機能を簡単に実装できるライブラリを紹介しました。 しかし現在、SceneViewはメンテナンスされておらず、コントリビューターさんのGitHubでのコメントによれば新しいリリースの予定はありません。

出典:Github, https://github.com/SceneView/sceneview-android/issues/623#issuecomment-3097955731 (2025/11/12アクセス)

本記事では、Android XRの新しいライブラリ「SceneCore」を使って、アプリ内に3D/ARを表示する方法を説明します。

続きを読む

© Safie Inc.