WealthNavi Engineering Blogのフィード
https://zenn.dev/p/wn_engineering
ウェルスナビの開発に関する記事を定期的に発信しています。 「ものづくりする金融機関」への取り組みを知っていただければ幸いです。
フィード

AIサービスの裏側、事業会社におけるAIアーキテクチャ設計
WealthNavi Engineering Blogのフィード
!この記事は11月のブログ企画「あなたの知らないTechの裏側」の第3本目です。 はじめにウェルスナビでAI推進チームのマネージャーをしている澤上です。AI推進チームが迅速かつ安定的にAIサービスを提供するために標準的な設計としているアーキテクチャについてご紹介します。AIは学習処理に焦点が行きがちですが、金融サービスを提供するウェルスナビにおいては、新しいAIを迅速に開発することと、それを安定的にお客様に届け続けること(運用)の両方が重要です。そのため、AI学習から利用(推論)までの範囲をカバーするアーキテクチャの設計が大事になってきます。日々進歩するAI分野ではあります...
4日前

Qodanaによる静的コード解析をCIに組み込んだ話
WealthNavi Engineering Blogのフィード
はじめにこんにちは、WealthNaviでバックエンドエンジニアを担当しているかるかんです。今回は、Qodanaによる静的解析をCIに組み込むことでコード品質を上げた話を紹介します。 概要WealthNaviではQodanaを全社的なコード解析ツールとして導入しました。(過去記事)しかし、開発中にローカル環境で実行できるようになったものの、新規参画者が多いプロジェクトではローカル環境での実行が徹底されない可能性があります。そのため、参画したプロジェクトにてGitHub ActionsにQodanaを組み込み、コード解析を自動化する試みを行いました。本記事ではその方法と結...
9日前

RedshiftのゼロETLと動的データマスキングで本番データ参照運用を効率化してみた
WealthNavi Engineering Blogのフィード
はじめに!この記事は11月のブログ企画「あなたの知らないTechの裏側」の第2本目です。はじめまして、システム基盤チームでSREをしている森と申します。今回は、本番DBにアクセスすることなく、開発や運用に必要なデータを適切に参照できる「動的データマスキング基盤」について紹介します。 背景これまで開発者は、お客さまからの問い合わせ対応や障害の原因調査の際に、本番環境のDBから機密情報をマスキングした専用DB(以下、マスクDB)を利用してデータを確認していました。しかし、この運用には、マスクDBが日次でしか作成されないという課題がありました。そのため、最新データが必要な...
11日前

Microsoft 365 のプランを見直した話
WealthNavi Engineering Blogのフィード
はじめにこの記事は11月のブログ企画「あなたの知らないTechの裏側」の第1本目です。こんにちは、ウェルスナビの深田です。普段は、CIT・コーポレートセキュリティというチーム(以降、CIT チームと呼びます)に所属し、社内 IT・社内セキュリティといった、いわゆる情シスやコーポレート IT と呼ばれる領域を担当しています。2018年11月にウェルスナビに入社し、前オフィスへの本社移転、上場対応、ゼロトラストセキュリティプロジェクト、現オフィスへの本社移転等を対応し現在に至ります。本題ですが、本記事では、Microsoft 365 のプランの見直しに取り組んだ話について記載し...
17日前

「あなたの知らないTechの裏側」特集始まります!
WealthNavi Engineering Blogのフィード
はじめにみなさん、こんにちは!ウェルスナビで技術広報をしている安田です。突然のお知らせですが、CloudNativeDays Winter 2025ではシステム基盤グループ所属の和田が登壇予定ですので、ぜひ聴きにきてくださいね!https://event.cloudnativedays.jp/cndw2025/talks/2763それに伴って、システム基盤グループをみなさんにもっと知ってもらうために、11月のブログ企画として 「あなたの知らないTechの裏側」 特集を開催します! 企画概要今回の企画では、プロダクトやコーポレートのセキュリティを担う「システム基盤グルー...
21日前

Taskによる強参照がもたらした予期せぬ挙動とその解決方法
WealthNavi Engineering Blogのフィード
はじめにこんにちは、サービス機能開発チーム・iOSエンジニアの深来です!2025年3月に入社し、iOSアプリの開発やテックブログの運営をしています。WealthNaviではUIKit × RxSwiftのコードからSwiftUI × Swift Concurrencyのコードに段階的にリファクタリングしています。今回は強参照が解消されないことにより、UIKitの画面で予期せぬ挙動が起きた問題についての説明とその解決方法を紹介します。また、iOSDC Japan 2025のチャレンジトークンが記事内に含まれています。ぜひ探してみてください👀 問題の概要下記の動画のように...
2ヶ月前

ゼロ知識から挑んだ DMARC「none」から「reject」 へ、そしてBIMI導入までの取り組み
WealthNavi Engineering Blogのフィード
はじめにこんにちは、サイバーセキュリティチームの宮﨑です。2025年1月にウェルスナビへ入社し、現在はシステム基盤グループ内のサイバーセキュリティチームで、セキュリティ体制の強化やセキュリティ・バイ・デザインの推進など、幅広くセキュリティ関連の業務に携わっています。この記事では、「なりすましメール対策」プロジェクトの一環として、私が2025年3月〜7月にかけて取り組んだ技術的な取り組みについてご紹介します。プロジェクトでは、DMARC(Domain-based Message Authentication, Reporting & Conformance)のポリシーを...
3ヶ月前

誤ってIAMロールを大量削除した話
WealthNavi Engineering Blogのフィード
はじめに数年前、私たちSREチームが管理するステージング環境で、複数のIAMロールが予期せず削除されるというヒヤリハットが発生しました。この記事では、その事例から得られた教訓を共有したいと思います。 経緯Terraformで管理しているセキュリティグループのポリシー更新作業中に、ステージング環境の複数のIAMロールが意図せず削除される事象が発生しました。緊急のセキュリティグループポリシー変更依頼があった依頼内容の対応時に、別環境の設定を参考にしてstateファイルのリファクタリングを実施したレビュー時に、S3に保管されているstateファイルのkey変更を見落として...
4ヶ月前

新卒2年目が日本最大級のコミュニティイベントで45分の登壇をした話
WealthNavi Engineering Blogのフィード
はじめにこんにちは、バックエンドエンジニアの大谷です。この記事では、私がJJUG CCC 2025 Springでの登壇経験を記事にしました。今回、45分という長いセッションのお話をいただいた当初は「登壇はハードルが高く、自分のような若輩エンジニアには荷が重い」と不安な気持ちがありました。しかし、まわりの方に支えられながら準備を進め、無事に登壇を終えることができました。この経験を通じて得た気づきや学びが、同じように登壇に不安を感じている方や登壇に興味はあるけど一歩踏み出せないという方の一助となれば嬉しいです。 この記事を読んでほしい対象者新卒エンジニアや若手エンジニア...
4ヶ月前

画像のリンク切れがあるページを公開してしまった話
WealthNavi Engineering Blogのフィード
はじめにこんにちは、マーケティング開発チームの鷹野です。今回は、サイト運用業務を行う中で画像のリンク切れがあるページを公開してしまった失敗談と、そこから得た学びをご紹介します。 事象の概要あるWebページの更新対応のリリース後、画像リンク切れが発覚し、該当ページは数十分の間、公開状態でした。対象は1枚の画像問題発覚後すぐに復旧対応を行った普段からアクセスが少ない箇所だったこともあり、外部ユーザからのアクセスはなかった 発生の原因発生原因を調査したところ、以下のような原因が判明しました。 実装の運用方法についてページの更新作業において、見た目が共通して...
4ヶ月前

SREチームによるAI活用事例
WealthNavi Engineering Blogのフィード
1. はじめにこんにちは、システム基盤チームでSREをしている安藤と申します。普段はDB負荷の改善、開発者プラットフォーム改善、AIOpsなどに取り組んでいます。今回はSREが所属するシステム基盤チームのAI活用事例と今後の展望をご紹介したいと思います。 システム基盤チームにおけるAIOpsシステム基盤チームにおけるAIOpsとは、AIを活用して日々増大する運用課題を根本から効率化・自動化し、成長フェーズの組織を支えるプラットフォームを実現する取り組みです。私たちは現在、開発組織の拡大とプロダクト数の増加が同時に進む10→100フェーズを迎えており、10倍規模を見据えた基...
4ヶ月前

ひやりハットを防ぐ!ArchUnitでスレッドセーフをチェックする方法をご紹介
WealthNavi Engineering Blogのフィード
こんにちは、WealthNaviでバックエンドエンジニアを担当している星原です。今回は「真夏の怪談!ひやりハット特集」というお題に沿って、Spring Bootのデフォルトスコープであるシングルトンについての注意事項とArchUnit[1]を使ったCIパイプラインでの実装チェック方法をご紹介します。 SpringBootにおけるスレッドセーフな実装パターンSpringBootアプリケーションはマルチスレッド環境で動作します。マルチスレッド環境では、複数のHTTPリクエストが同時に処理されるため、スレッドセーフでないコードは予期しない動作やデータ破損を引き起こす可能性があります。...
4ヶ月前

地雷を踏んだ日:ステージングではなく本番に上げたあの瞬間
WealthNavi Engineering Blogのフィード
こんにちは、WealthNaviでバックエンド開発を行っている藤原です。今回は「真夏の怪談!ひやりハット特集」ということで入社してから初めてやらかした事件についてお話しさせていただきます。タイトルで察する方もいらっしゃるかもしれませんが、デプロイ関係のインシデントがテーマとなっています。 この記事を読んでほしい対象者コンテナイメージをECRで管理している方及び企業。WealthNaviに入社したい若手エンジニアの方。 事件が起きるまでのいきさつその日は突然やってくる。Fさんはその日、とあるAPIの改修を行っていました。改修を終えた後、変更内容をステージング環境でテ...
4ヶ月前

リリース直前にテスト環境のエラーに気づいた話
WealthNavi Engineering Blogのフィード
とある月曜夜の出来事やだなー。怖いなー。そんな思いが頭をかすめたのは、午後7時半。子供をお風呂に入れていた時のことだ。さっき見たSlackの赤い文字が忘れられない。やだなー。怖いなー。そんな思いが何度も頭を巡った。それはテスト環境のエラー通知であった。急いでいたこともあり、誰かが操作を間違えたのだろうと思った。待っていたら誰かが「犯人は俺だ」スタンプをつけるだろうとも思った。しかし、エラーになっていたシステムは普段誰も使わない。夜な夜な粛々と稼働し、存在をあまり気にされない。そんなシステムから発せられたエラー。あのシステムがエラーになる可能性は?まさか今週末リ...
5ヶ月前

ArgoCD Image Updaterで実現する環境別デプロイ戦略
WealthNavi Engineering Blogのフィード
はじめにはじめまして、システム基盤チームでSREをしている安藤と申します。普段はDB負荷の改善、開発者プラットフォーム改善、AIOpsなどに取り組んでいます。今回はEKS上で動く基盤にArgoCD Image Updaterを導入し、実際の運用を通じて得られた知見をご紹介します。 ArgoCD Image UpdaterとはArgoCD Image UpdaterはコンテナレジストリへのイメージPushを検知し、Kubernetesマニフェストのイメージタグを自動更新、もしくはDeploymentを自動再起動できるツールです。 導入背景ここでは導入に至った直近のトラブ...
5ヶ月前

iOSネイティブアプリにDetoxによるE2Eテストを導入
WealthNavi Engineering Blogのフィード
こんにちは、QAの木下です。この記事では、ネイティブモバイルアプリのE2Eテストの自動化に挑戦した話について、紹介します。 モバイルアプリに対して、テストの自動化を目指した経緯 テスト自動化の現状と課題ウェルスナビでは、会社の成長とともに、取り扱うプロダクトの数が増加しています。QAチームは、プロダクト数の増加を受けて、チームメンバー増強の採用活動を強化するとともに、テストの省力化・効率化を目的とした自動化に注力してきました。現在は、Webサイトに対するE2Eテストを行えるテストツールPlaywrightを導入し、膨大なテストケースを省力かつ高速に実行し、不具合を早期に検...
5ヶ月前

Datadog On-Call導入後の運用Tipsを紹介します
WealthNavi Engineering Blogのフィード
はじめにはじめまして、システム基盤チームでSREをしている森と申します。日々の業務で取り組んだことについて紹介いたします。先日開催されたDatadogのユーザーコミュニティイベントでDatadog On-CallについてLT登壇させていただきました。https://datadog-jp.connpass.com/event/349693/!登壇資料はこちらです2025年1月末にGAされ始めて以降ユーザーコミュニティでも何回[1][2]か発表されるほど人気のあるツールで、私が発表した回でも他に発表される人[3]がいるくらいホットなツールです。On-Call運用Tip...
5ヶ月前

ウェルスナビのSREチームの歩みとこれから
WealthNavi Engineering Blogのフィード
はじめにシステム基盤チームのマネージャーの和田です。本記事では、SREが所属するシステム基盤チームのこれまでの歩みと、取り組みについて説明します。サービスをより良くするために日々工夫を重ねている皆さまに、本記事が少しでもヒントや励みになれば幸いです。 ウェルスナビについて当社は「働く世代に豊かさを」というミッションのもと、1兆4,000億円超*1の資産をお預かりするWealthNaviを提供しています。今後は、三菱UFJ銀行と共にデジタルバンクを立ち上げ、保険や年金、住宅ローンなど多様な金融サービスを提供する『総合アドバイザリー・プラットフォーム(MAP)』 を実装し、中立...
5ヶ月前

顔認証時も意図せず呼ばれるapplicationDidBecomeActive() : iOSライフサイクルイベントの罠
WealthNavi Engineering Blogのフィード
はじめにこんにちは、iOSエンジニアの長です。iOSアプリを開発していると、アプリのライフサイクルイベントに関する挙動で思わぬ問題に直面することがあります。その中でも特に注意が必要なのが、applicationDidBecomeActive()が意図しないタイミングで呼ばれるケースです。本記事では、ウェルスナビアプリで発生した顔認証(Face ID)時に呼ばれるライフサイクルイベントに関する問題について解説し、解決策を紹介します。 問題の概要ウェルスナビアプリでは、アプリがフォアグラウンドに復帰する際に必要な処理を applicationDidBecomeActive(...
6ヶ月前

事業会社でマルウェア解析環境を構築 → 実際にフィッシング検体を解析してみた
WealthNavi Engineering Blogのフィード
はじめにサイバーセキュリティチームに所属している宮﨑です。普段は、CSIRT/SOC業務を中心に、インシデントレスポンスへの対応強化や各種ログ分析等の業務に従事しております。今回は社内にマルウェア解析環境を作成し、当社従業員宛に届いたフィッシングメールを解析した結果を紹介いたします。また、解析環境を事業会社で構築するにあたりどのような機器や製品を調達したのかもあわせて共有させていただきます。 対象読者本記事では以下の方を対象読者として記載しております。事業会社でマルウェア解析・フィッシングサイト調査ができる環境を用意したいと考えている方事業会社でマルウェア解析環境...
6ヶ月前