Tech blog

日々の開発業務で培った技術的な知見や、よりよいプロダクト提供のための技術的な取り組みなどを積極的に紹介をしていきます。

S3アーカイブ大量復元を効率化する実践手順

こんにちは!
SJC共同開発推進室の坂根です。

S3 で長期データを保管していると、コスト最適化のために Amazon S3 Intelligent-Tiering(以下、Intelligent-Tiering)を使っているというケースも多いのではないでしょうか。
アクセス頻度に応じて自動で階層を切り替えてくれるため、運用負荷も少なく、とても便利な仕組みだと思います。

そんな中、先日こんな場面に直面しました。
「半年以上前のデータを確認したい」と思い、S3 を開いたところ、オブジェクトは確かに存在しているのに、すぐに取得できない……。

対象は数万件。1件ずつ復元するのは現実的ではありません。

そんな状況を解消すべく、S3 Inventory・Athena・S3 Batch Operations を使って一括復元を試してみましたので、その方法をご紹介します。

続きを読む

1からわかる要件定義:ヒアリング【前編】下準備

Hello Ecomott!

おはようございます、こんにちは、あるいはこんばんは。またも前回執筆から約半年が経過、
>相も変わらず遅筆が身上、お久しぶりのクラウドソリューション開発部 伊藤です。

以前の記事では、「要件定義」工程の原理原則について取り挙げました。

前回の結びで、「次回はより実践的な内容で、お会いしましょう!」などと言ってしまったものだから、テーマ探しもまあ大変。

どうしたものかと頭を悩ませてみましたが……ここは敢えて奇を衒わず、上流工程の最上流にして花形(というイメージのある)工程、 「ヒアリング工程」についてお話しいたしましょう!

なお、本記事は「要件定義 ヒアリング工程」解説記事の前編となります。
まあまあ長くなりましたが、どうぞお付き合いください(このブログ見てるってことは時間あるでしょ)


この記事を読むのにかかる時間は 約10分 くらいです!

この記事でわかること


続きを読む

1からわかる要件定義:ヒアリング【中編】深掘り術

Hello Ecomott!

おはようございます、こんにちは、あるいはこんばんは。
以上前略、クラウドソリューション開発部 伊藤です。

今回は続編記事!というか長すぎて分割になった

というわけで本編前置きはサクサク終わります。

要件定義入門シリーズ、「ヒアリング」編の中編となります。

えっ、こんな記事が三部作?と思いました?

いやいや、どうせ時間おありでしょう?活字読むのがお好きなんでしょう?
きっとそうだと信じて。

能書きはさておき、前編では「ヒアリング」工程の「下準備」について解説しました。

前編を読まずにこちらを開いたあなた、それこそ「準備」が足りない。
とりあえず前編を読んでいただいてから、またお会いいたしましょう。

前編も履修済だぜ!という方は、いよいよ「ヒアリング」の本筋について、
お付き合い願います。例のごとくちょっと長いよ!!

この記事を読むのにかかる時間は 約10分 くらいです!

この記事でわかること

続きを読む

【Java】Mockitoで依存性注入を使わずにユニットテストする

デバイスソフトウエア開発部の本間です。

最近、弊社業務にて Android アプリの保守を担当する機会がありました。そのアプリには自動テストが存在しなかったため、安全に改修を進めるための回帰テストとして、まずユニットテスト(JUnit)を導入しました。

しかしテストを書き始めると、クラス同士が直接依存していたり、I/O などの副作用が各所に埋め込まれており、既存コードに変更を加えなければユニットテストが難しいことが分かりました。そこで、モッキングフレームワークである Mockito を導入することにしました。これにより依存先を任意の処理(モック)へ差し替えることが可能となり、ユニットテストを実施することができました。

本記事では、その際に使った Mockito の機能を、実例を交えてご紹介します。

続きを読む

Jetson AI Specialist はもう無い?最新NVIDIA認定資格を調べてみた(2026年版)

こんにちは!デバイスソフトウエア開発部の山内です。

弊社では、NVIDIA Jetson を使ったエッジAI製品を開発しています。

そこで、私もNVIDIA認定資格を取ろうと思って調べ始めたところ、私が探していた認定プログラムは終了していたことが発覚。代わりにNVIDIAの認定資格が別体系に再編されていることが分かりました。

本記事では、2026年時点で公式に案内されているNVIDIA認定資格を、分かりやすく整理します。 続きを読む

なぜAIはリンゴを数え間違える?画像解析の裏側を解説(前編)

 

クラウドソリューション開発部の内間木です。

GPT-4oやGemini 2.0、Claude 3.5といったマルチモーダルな生成AIを使って画像解析を試した際、「写っているリンゴの数が毎回違う…」「10個以上になると適当に答える」といった経験はありませんか?

この記事を読むことで、

「なぜ生成AIは物のカウントを間違えるのか」

という裏側の仕組みを整理し、画像解析とより上手く付き合うためのヒントを掴むことができます。

続きを読む

React Native最新SDK対応:1月と8月がベストな理由

こんにちは!
クラウドソリューション開発部の大川です。

今回は、React Native CLIでクロスプラットフォーム開発を行う上で避けては通れない、「iOS/Androidの最新SDKへの対応タイミング」について紹介します。

「最新OSが出たからすぐに上げなきゃ!」と焦る必要はありませんが、ストアの公開要件の更新に間に合わせるための「余裕を持ったスケジュール」を知っておくことが重要です。

続きを読む

Googleスプレッドシートで作る自作WBS&ガントチャート紹介

こんにちは。デバイスソフトウエア開発部の斎藤です。
エッジAIシステム開発と、iOSアプリケーション開発を担当しています。

昨年より、とあるiOSアプリ開発のプロジェクトを任せていただいており、
Googleスプレッドシート上にWBSとガントチャートを作成して、タスク進捗の管理や可視化を行っています。

プロジェクト発足当初は、インターネット上で公開されている利用可能なサンプル等を使おうと思い、
丁度良い雛形を探していたのですが、
私のプロジェクトではおそらく使わないような機能がたくさん入っていたり、色鮮やかで個人的に目が疲れそうだなと思うようなものだったり、スクリプトを少しいじったら環境壊れてしまったり…
となかなかフォーマットが決まらなかったので、まずは「見やすくて最低限の機能のものを自作して運用してみよう!」と考え、自分で作ることにしました。

本記事では、私が実際の業務で使用しているWBSとガントチャートの構成に加えて、
GAS(Google Apps Script)を用いた親タスクの再計算や、完了行の表示切替といった補助的な処理の仕組みについてご紹介いたします。

私自身、日常的にGAS開発をしているわけではなく、今回ご紹介する技術も基本的な機能と処理の紹介にはなりますが、
WBSやガントチャートはExcelで管理している方々が「GAS便利そうだしGoogleスプレッドシートで管理するのもありだな。」と感じていただけるような内容を目指して書いていきます!

なお、本記事では WBSとガントチャートを一体で管理する構成を前提として、以降は「WBSガントチャート」と呼ぶこととします。

続きを読む

【簡単】AWS CLIで一括タグ付けしてみた

冬はやっぱしさびーなー…
クラウドソリューション開発部の北島です。
「誰が作成者?」「何のプロジェクトのリソース?」と思ってしまうタグ無しリソースを見つけたことがある人もいるのではと思います。

本記事は、こんなタグ無しの既存リソースに後から大量のタグを付けることになり、死んだ目をしているエンジニアに捧げます!

続きを読む

【ストア要件に備える】React Native CLIによる更新手順と注意点

最近オンラインゲームに熱が再燃していて、Discordで知らない人と話すのが意外と楽しいなと感じています。こんにちは、クラウドソリューション開発部の寺谷です。

今回は、React Native スマホアプリ開発の保守で避けて通れないバージョンアップについてまとめます。React Native のアップデートは一筋縄ではいかないことが多く、特にメジャーアップデートではさまざまな問題が起きがちです。

この記事では、React Native CLI を使ったバージョンアップ手順と進めるうえでの注意点を整理します。

続きを読む