エコモットのエンジニアによる

IoT・AI技術や働き方についてのブログ

トレーサビリティはめんどくさい?3年目エンジニアの実体験

Tech blog

こんにちは!SJC共同開発推進室の對島です。
前回のブログでは単体テストの体験談を書きましたが、今回はその流れで、いま私が関わっているプロジェクトでも実際に導入している「トレーサビリティ(追跡可能性)」について書いてみようと思います。
 

先日、上司がブログで「トレーサビリティは品質管理において非常に重要だ」という記事を書かれていました。管理者としての意見はすごく納得できる一方で、実際に現場で指示を受けて手を動かす側の私としては、ぶっちゃけ「言いたいことは分かるけど、めちゃくちゃ作業が増えて大変そう」と最初は思っていました。

そこで今回は、もうすぐ4年目になるエンジニアのリアルな目線から、「現場で直面した泥臭い苦労」と、それを「AIを使ってどう賢く楽するか」について、実際の検証データを交えながら本音で書いていきます!

続きを読む

【嫌われる勇気】周りの目を気にするのをやめたエンジニアの生存戦略

Tech blog

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

今回の記事は、技術の細かい話……ではなく、日々の仕事を進める上での「考え方」について書いてみたいと思います。

みなさんは仕事をしていて、「周りの目が気になって自分の意見が言えない」「わからないのに知ったかぶりをしてしまった」という経験はありませんか?

私はまさにそのタイプで、ずっと一人でモヤモヤと悩んでいました。 そんな私が『嫌われる勇気』という本に出会い、仕事に対するマインドがガラッと変わった実体験をお話しします!

この記事を読むことで、

「周りの目が気になって動けなくなる理由と、その抜け出し方」

についての考え方が整理でき、明日からの仕事が少し楽になるヒントを掴むことができます。

続きを読む

DjangoのN+1問題はpytestで検知しよう

Tech blog

こんにちは!
デバイスソフトウエア開発部の米森です。 担当している案件で、Webアプリ開発にDjangoを使用しています。
 
DjangoはPythonの「batteries included」という思想を踏襲しており、「バッテリー同梱なので、セットアップ作業無しですぐに色々な便利機能が使える」という考えをモットーの1つとして掲げています。
 
Webアプリ開発に必要な機能がほとんど全て揃っているようなDjangoですが、中でもORMが非常に強力で、SQLを意識することなく高速にWebアプリケーションを構築できます。しかし、その強力な抽象化の裏側で「いつの間にか意図せぬクエリが発行されていた」という恐怖を味わったことがあるエンジニアは多いのではないでしょうか。
 
その代表例が「N+1問題」です。
 
テストデータが少ない開発環境では問題が顕在化することが少ないので、動作確認の目をすり抜け、リリースされてしまうこともあります。
 
select_relatedprefetch_relatedなどの回避策がDjangoから提供されていますが、これらが適切に使用されているかをコードレビューで確認するのには限界があります。
 
なので、今回はpytestを使ってN+1問題を機械的に検知する方法をご紹介します。 続きを読む

「なんか見づらい」を解消するOOUI(オブジェクト指向UI)の考え方と使い分け

Tech blog

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

「このメニュー表、なんだか見づらいな…」

「写真も入っていてイメージはしやすいのに、なぜ目的の注文にたどり着くのに時間がかかるんだろう?」

普段アプリやWebサイトを使っていて、このような違和感を覚えたことはありませんか?

その原因は、画面デザインそのものよりも「ユーザーへの情報の見せ方・体験(UI/UX)」の設計にあるかもしれません。

今回は、UI設計において非常に重要な考え方である「OOUI(オブジェクト指向UI)」について、基本的な仕組みからタスク指向との使い分け、実際の開発現場での活かし方まで解説します!

続きを読む

審査待ちで障害対応が止まる前に。iOSの特急審査を正しく使う。

Tech blog

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

「アプリが起動直後にクラッシュします」
「ログインできません」

リリース直後にこんな連絡が来たとき、修正コード自体は30分で書けたとしても、App Storeに公開されるまでには App Review(審査) を通過する必要があります。
この「待ち時間」こそが、障害対応における最大のボトルネックです。

今回は、その切り札である Appleの「App Reviewの優先処理をリクエスト」(通称:特急審査) について、申請手順と「使うべきでないケース」、そして そもそも使わずに済ませるための備え を紹介します。

続きを読む

『エンジニアのための「伝わる」コミュニケーション術|相手の行動を変える教え方6つのコツ』

Tech blog

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

突然ですが、後輩への指導やチーム内での仕様説明で「なぜか上手く意図が伝わらない…」と頭を抱えたことはありませんか?
実はエンジニアの業務において、「人に教える・伝える力」はコードを書く技術と同じくらい重要です。

今回は他者への教え方について、少しでもナレッジが共有できればと思います。

 

誰かに教える時に、「なんか上手く伝わらない…」と思ったことはないでしょうか。

プロジェクトで新たにアサインした方がいる場合、情報量の多い内容をどうやってわかりやすく伝えるのか。

 

図や具体例を出しても良いでしょう。

ですが、図や具体例はわかりやすく伝える「手段」であるため、相手の状況や求めていることを伝える側で理解していないと、「話が伝わらない」ということになってしまいます。

私自身も悩むことがよくありました。どうやったらわかりやすく教えられるだろうか、腑に落ちるような教え方は…?

今も模索中ですが、大切だなと思うことをまとめておきたいと思います。(自分の備忘録としても)

続きを読む

ビルド不要!#PlaygroundでXcodeの3Dプログラミングを効率化

Tech blog

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

普段はiPad ProのLiDARセンサーやARKit/RealityKitを活用したAR機能の開発に携わっているのですが、ARアプリや3Dグラフィックの開発において、地味にストレスになりがちなのが「3D空間の数学ロジック(ベクトル計算や回転計算)のデバッグ」です。

  • 「2つのエンティティの相対角度の計算、符号逆になってないかな…?」

  • 「レイキャストで取得した法線ベクトルから回転クォータニオンを作る計算、思い通りの向きになるか確かめたい」

こういった小さな計算ロジックを確かめるためだけに、毎回実機ビルドを走らせてカメラをデスクにかざすのは、開発効率の観点から見ても非常にもったいない時間ですよね。

そこで今回は、Xcode 26で登場した「#Playground マクロ」を活用し、プロダクションコード内で3D数学ロジックを即座にインライン検証・デバッグする開発ワークフローをご紹介します!

続きを読む

コード不要!GeminiでJSTQB問題集を作ってみた

Tech blog

みなさん、こんにちは!CLS開発部の寺谷です。
最近は暑くて夜に寝付けない日が続いていますね。もう少しで秋の気配も感じられるようになるかと思いますので、体調管理には気をつけたいところです。

さて、資格勉強の暗記や問題演習って、同じテキストを何度も回しているとどうしても飽きてきちゃいますよね。

そこで今回は、GoogleのAIサービス「Gemini」のGenerative UI(動的UI生成機能)を活用し、「JSTQB Foundation Level (FL)」の自分専用Web問題集を作ってみた話を共有します!

環境構築ゼロ、無料プランでサクッと動きますので、資格勉強中の方はぜひ試してみてください。

続きを読む

【Mac】システムデータが重い原因は?CLIツール「ncdu」で安全に容量を削減する方法

Tech blog

こんにちは!

クラウドソリューション開発部の今野です!

突然ですがMacでアプリ開発をしている方、このようなダイアログを一度は目にしたことがないでしょうか?

「お使いの起動ディスクはほとんど一杯です。」

「キャアァァァーーー」

 

…。何を削除したら良いの?

まあ、色々なストレージ消去ツールが出回っているわけなのですが…。とは言っても、色々ありすぎてどれがおすすめなのかわからないと思います。

また、アプリ開発の場合、消しても消しきれない「システムデータ」はよくある話のため、それも含めて削除できたらと思います。アプリ開発者の方必見です。

続きを読む

API設計のQAを劇的に減らす!仕様書作成4つのルール

Tech blog

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

ソフトウェア開発では、仕様書を用意していても、実装段階で確認事項が次々と発生することがあります。

特に API 設計においては、仕様の解釈違いや共通ルールの不足によって、QA が想定以上に増えやすくなります。

本記事では、プロジェクト運用中に発生した実際のAPI設計に関する QA 40件(Backlog履歴)をBacklog AIで分析し、どのような確認が多く発生していたのかを整理しました。

「仕様書はあるのに実装者からの質疑応答が止まらない…」という現場の悩みを解消するため、設計段階で整えておくべき4つの共通ルールチェックリストをご紹介します。

(※本記事ではQAを「実装前後に発生した確認事項・質疑応答」として扱います)

今苦しんでいる人、これから実装をおまかせする人の手助けになればと思います。
続きを読む