Sansan Tech Blog

Sansanのものづくりを支えるメンバーの技術やデザイン、プロダクトマネジメントの情報を発信

DevOps

EKSにおけるNamespaceごとにCloudWatchとEC2のコスト按分方法

研究開発部 Architectグループ ML Platformチームのジャン(a.k.a jc)です。今回はKubernetes(EKS)におけるコスト按分のお話しをします。 背景 2022年に弊社研究開発部でAWS EKS上にCircuitというアプリケーション基盤を導入しました。 speakerdeck.com より…

blue/green戦略によるKubernetesクラスタ更新時にIstioの対応方法

研究開発部 Architectグループ ML Platformチームのジャン(a.k.a jc)です。 前回弊チームのKAZYがKubernetesクラスタ更新時のマニフェスト差分をGitのブランチで吸収する方法を紹介しました。 buildersbox.corp-sansan.com 今回は解像度をあげてKubernetesク…

チーム開発合宿 2024 in 徳島県神山町(技術編)

こんにちは、研究開発部 Architectグループの辻田です。 この記事はチームメンバー合同で作成した記事です。 先日、神山ラボへ開発合宿に行ってきました。この記事では合宿中に取り組んだ内容について紹介します。合宿の目的や、全体の様子はチーム開発合宿 …

チーム開発合宿 2024 in 徳島県神山町(レポート編)

こんにちは、研究開発部 Architectグループの辻田です。 今年も神山ラボへ開発合宿に行ってきました!新メンバーも加わり、チームとしては2回目の開発合宿*1です。本記事では合宿レポートを紹介します。合宿で取り組んだ技術的な内容は別記事で出しますので…

Firehoseを介したS3への中間データ保管と検索性強化

はじめに こんにちは、研究開発部 Architectグループの辻田です。 SansanではユーザーフィードバックがSlackのフィードバックチャンネルに集まります。研究開発部ではこれらからモデルやアルゴリズムなどの改善をしています。 そのため、より多くのフィード…

Knative ServingをKustomizeでPatchStrategicMergeしたい!

こんにちは、技術本部研究開発部 Architect グループ ML Platform チームの宮地です。 本記事は Sansan Advent Calendar 2023 の22日目、および【R&D DevOps通信】の連載記事のひとつです。 adventar.org 普段の業務では Circuit という Kubernetes を利用し…

Helmを使用せずにKustomizeでAirbyteをKubernetes上に構築する

こんにちは、技術本部研究開発部ML Platformチームのジャン(a.k.a jc)です。 本記事は Sansan Advent Calendar 2023 の19日目、および【R&D DevOps通信】の連載記事のひとつです。 adventar.org 今年6月にData DirectionチームからML Platformチームに異動し…

【GitHub Actions】reviewdog + reusable workflows によるCI/CD共通化

この記事は Sansan Advent Calendar 2023 の13日目の記事です。および【R&D DevOps通信】の連載記事のひとつです。 こんにちは、研究開発部 Architectグループの藤岡です。 今回は部で運用しているCI/CDに関する取り組みについてお話しします。共通化のノウ…

1年間の挑戦と成長:チームビルディングの舞台裏

この記事は Sansan Advent Calendar 2023 の11日目、および【R&D DevOps通信】の連載記事のひとつです。 こんにちは、研究開発部 Architectグループの辻田です。去年の12月頃にランニングを始めて早1年、年間の走行距離は2114kmとなりました。 フルマラソン…

全社横断データ基盤における部分的セルフサービス化への取り組み

研究開発部 Architect Groupの大澤秀一です。ブログ寄稿は約2年ぶりです。半年ぐらい前からランニングを始めて、先日フルマラソン完走してきました。おかげで足はボロボロです(笑)。 さて、私たちはBigQueryを中心とした、全社横断データ基盤(以下、デー…

プラットフォームチームを離れ、利用者になり感じたこと

研究開発部 Architectグループ ML PlatformチームのKAZYこと新井です。 名古屋にある中部支店に所属しています。 先日、一時的にML Platformチームを離れて社内向けシステムを、チームが開発・運用するアプリケーション基盤 "Circuit" に構築しました。 基盤…

【R&D DevOps通信】DatadogでKubernetesのNamespaceごとに通知先を振り分る

こんにちは、研究開発部 Architectグループ ML Platformチームに所属の宮地です。 23卒の新卒として入社し、少しづつ業務に慣れてきた今日このごろです。 業務内では主に研究開発部のKubernetes基盤であるcircuitと向き合いながら、研究開発部のDevOpsを推進…

【R&D DevOps通信】初めてのEKS Kubernetesバージョン更新を振り返る

研究開発部 Architectグループ ML PlatformチームのKAZYこと新井です。 名古屋にある中部支店に所属しています。 先日、研究開発部内のEKSクラスタのKubernetesのバージョン更新とその振り返りを行いました。 バージョン更新で起きた出来事と思い出を記しま…

【R&D DevOps通信】チーム開発合宿 in 徳島県神山町

技術本部 研究開発部 Architectグループでチームリーダーをやっている鷹箸です。 3/29(水)〜3/31(金)に開発合宿へ行ってきました! チームとしては初めての開発合宿になります。なお、本記事は【R&D DevOps通信】という連載記事のひとつです。

【R&D DevOps通信】Slack BoltとCloud Functionsでデータ基盤アクセス承認システムを開発

こんにちは。研究開発部 Architectグループにてデータエンジニアとしてデータ基盤の開発・運用を担当しているジャン(a.k.a jc)です。 直近の記事にてGoogleグループとIAMによるデータ基盤のアクセス制御方法を紹介しました。 buildersbox.corp-sansan.com 本…

【R&D DevOps通信】研究開発部の.NET基盤をご紹介

技術本部 研究開発部 Architectグループの島です。本連載を最初2回*1*2だけ書いてとんずらしていましたが復活です。 今回は、研究開発部にて .NET 技術がどのように使われているか・何に取り組んできたかをご紹介したいと思います。 当社にはSansanなど.NET…

EKSのクラスタに追加のセキュリティーグループを導入してクラスタバージョン更新に備える

研究開発部 Architectグループ ML PlatformチームのKAZYこと新井です。 名古屋にある中部支店に所属しています。 バージョン更新の負荷を減らすためにEKSにセキュリティーグループを追加した話を紹介します。 なお、本記事は【R&D DevOps通信】という連載記…

Argo Rolloutsでプログレッシブデリバリを実現する

こんにちは、研究開発部 Architectグループの辻田です。今回はKubernetesアプリケーション基盤にArgo Rolloutsを導入し、カナリアリリースからメトリクスの自動解析、ロールバックの自動化を実現したので紹介していきたいと思います。

KubernetesのCronJobからJobを気軽に実行できるGitHub Actionsの仕組み

研究開発部 Architectグループ ML PlatformチームのKAZYこと新井です。 名古屋にある中部支店に所属しています。 KubernetesのCronJobからJobの作成と実行をGitHub Actionsでできるようにした話を紹介します。 なお、本記事は【R&D DevOps通信】という連載記…

第26回 MLOps 勉強会で発表しました

研究開発部 Architectグループの堤(@shu223)と申します。2022年12月7日に開催された 第26回 MLOps 勉強会 - connpass で登壇の機会をいただき、「SansanにおけるエッジAIの実用例とMLOps」というタイトルで発表させていただきました。

GitHub ActionsでK8sのマニフェストを生成できるようにして開発リードタイムを改善する(後編)

研究開発部 Architectグループ ML PlatformチームのKAZYこと新井です。ちなみに名古屋にある中部支店に所属です。 開発リードタイムを改善するためにGitHub ActionsでKubernetesのマニフェスト生成できるようにした話をします。 前後編の2つに分けて公開し…

GitHub ActionsでK8sのマニフェストを生成できるようにして開発リードタイムを改善する(前編)

研究開発部 Architectグループ ML PlatformチームのKAZYこと新井です。ちなみに名古屋にある中部支店に所属です。 開発リードタイムを改善するためにGitHub ActionsでKubernetesのマニフェスト生成できるようにした話をします。 前後編の2つに分けて公開す…

【R&D DevOps通信】Amazon ECSのTips

こんにちは、R&D Architectグループの辻田です。ECS on EC2のアーキテクチャでサービスを構築する機会があったので、そこで得た知見をTips形式でまとめたいと思います。

【R&D DevOps通信】データ分析基盤の分析用メタデータ管理 -1. 実現方法の検討-

本記事は Sansan Advent Calendar 2022 10日目の記事です。 adventar.orgこんにちは。研究開発部 Architectグループ データエンジニアの出相(デアイ)です。 データ分析基盤で分析をする際に必要となる分析用メタデータの管理・運用についての取り組みを連載…

【R&D DevOps通信】自社OCRエンジン「NineOCR」の学習効率化のためFeature Storeを導入した話

こんにちは。研究開発部 Architect グループの八藤丸です。 この記事では、先日プレスリリースが出た Sansan 独自の OCR エンジン「NineOCR」の学習に Feature Store を導入した経緯や、周辺技術の選定について書いていきます。 jp.corp-sansan.comNineOCR …

【R&D DevOps通信】データ基盤におけるGoogleグループ・IAMによるアクセス制御

研究開発部 Architectグループにてデータエンジニアとしてデータ基盤の開発・運用を担当しているジャン(a.k.a jc)です。 データ基盤の構築はETL処理の実装やパイプラインの監視だけでなく、セキュリティ、データアクセス制御管理もデータエンジニアリングラ…

【R&D DevOps通信】アプリケーション基盤としてKubernetesを導入、そして周辺技術選定と運用設計

こんにちは。研究開発部Architectグループ、ML Platformチームの神林です。ML Platformチームは主に研究開発部の成果を最大化するための基盤開発を行っているチームです。この記事では、Kubernetes(EKS)を導入することになった経緯や、周辺技術の選定、運用…

【R&D DevOps通信】Poetry1.2でプライベートパッケージを扱う(GitHub, AWS CodeArtifact, GCP Artifact Registry)

研究開発部 Architectグループ ML PlatformチームのKAZYこと新井です。ちなみに名古屋にある中部支店に所属です。 今回はPoetryでプライベートパッケージ(ライブラリ)を扱うテーマの第2弾です。 はじめに 2022/08/31に1.2.0がリリースされました。*1 Release…

【R&D DevOps通信】DocumentDBを導入した話

こんにちは、R&D Architectグループの辻田です。 とあるシステムのデータストアにAmazon DocumentDBを採用したので、その経緯やDocumentDBの特徴について紹介したいと思います。

【R&D DevOps通信】AWS Step Functions で失敗したステップから再開する方法

こんにちは、R&D Architectグループの藤岡です。今回は Step Functions(以下SFn) が実行途中で失敗した場合に、失敗した時点から再開できるような仕組みを実現したので、その内容について共有します。<2024/2/8追記> AWS公式で Step Functions の失敗し…

© Sansan, Inc.