KAKEHASHI Tech Blog

カケハシのEngineer Teamによるブログです。

技術

AtCoder 第一回マスターズ選手権-予選- 参加記

こんにちは。カケハシでデータサイエンティストとして働いている川渕です。 2024年3月3日にAtCoderで開催された第一回マスターズ選手権-予選-にカケハシのメンバーと参加してきたので、決勝前に参加記を書いておきたいと思います。 なお、対象読者はAHC(Atco…

GitHub Actions に Python のパッケージインストーラー uv を導入する

こんにちは。 カケハシの Musubi AI在庫管理 チームにて業務委託のエンジニアをさせていただいております takanakahiko と申します。 今回はuvをGitHub Actionsに導入したらとても効果があったので、紹介することができればと思います。 uvとは uvとはPython…

チームで行っている輪読会の紹介

はじめに こんにちは。カケハシの牧野です。 私が所属するチームでは数カ月間にわたり「ソフトウェアアーキテクチャの基礎」という書籍の輪読会をしておりました。この記事では輪読会を実施した背景や、実施して良かったことなどを紹介いたします。 輪読会の…

安心してメンテナンスを行うためのメンテナンスモードの実現において考えたこと

こんにちは、カケハシでAI在庫管理のプロダクトのバックエンドエンジニアをしている松本です。 AI在庫管理でメンテナンスを行うための機能としてメンテナンスモードを開発しました。本エントリではメンテナンスモードを実現する際に考えたこと、気をつけたこ…

@apollo/clientの3.8.xへのアップデートに伴う挙動変更

はじめに AI在庫管理のフロントエンド開発をしている木本です。 先日、@apollo/clientのv3.7.17からv3.8.1へのアップデートに伴う大規模なデグレが発生しました。具体的には無限スクロールで情報を取ってくる画面で、一切情報が見られなくなってしまう状態と…

GitHubを使わずDatabricksだけでお手軽にライブラリ共有やCIができる環境を作ってみた

こんにちは、株式会社カケハシのデータサイエンティストの保坂です。 データ分析をやっていると、典型的な処理、よく使う処理を再度使い回せるようにしたり、他のメンバーに共有したくなることはないでしょうか?さらにこのような処理を適宜みんなが自由に拡…

アーキテクチャの進化はドメインイベントが起点になる

こちらの記事はカケハシ Advent Calendar 2023 Part2の24日目の記事になります。 adventar.org はじめに 反復的な開発は、変更容易性の高いソフトウェアが不可欠です。ソフトウェア開発の経験がある方なら、デリバリ後の洞察や市場環境の変化から、新しい機…

オフサイトミーティングでLLMのハッカソンをやってみた

MusubiInsight のダッシュボードチームでは、四半期に一回ぐらいのペースでオフサイトミーティングを行なっています。今期は、そのオフサイトミーティングで LLM(大規模言語モデル)のハッカソンを行いました。 OpenAI が ChatGPT を発表してから、チームの中…

All TypeScriptのMonorepoのlinterをESLintからbiomeにしたらlintが25倍速くなった🚀

フロントエンド(React.js TypeScript) バックエンド(Node.js TypeScript) インフラ(CDK TypeScript) の Monorepo の linter を ESLint からbiomeに変更したら lint が約50秒かかっていたのが大体2秒になって嬉しかったので共有します。 こんにちは、カケハシ…

データメッシュアーキテクチャの段階的な検討プロセスをご紹介します

この記事は カケハシ Advent Calendar 2023 の19日目の投稿になります。 adventar.org 東 浩稔(あずま ひろとし)と申します。 私は、カケハシでデータプロダクトのPdM(プロダクトマネージャー)を務めております。 2023年の7月に入社し、全社のデータ利活用…

横断データサイエンス組織になったので共通的な分析プロセス・ルールを整備し始めました

こちらの記事はカケハシ Advent Calendar 2023 Part2の17日目の記事になります。 はじめに こんにちは、株式会社カケハシのデータサイエンティストの保坂です。 2023年9月より、これまで2つに分かれていたデータサイエンス系メンバーの属するチームが合併し…

DynamoDBのCDCデータを利用して、ニアリアルタイムにDatabricksへ取り込む

こちらの記事はDatabricks Advent Calendar 2023の16日目の記事になります。 こんにちは。カケハシのデータ基盤チームでデータエンジニアをしている松田です。カケハシでは、2022年7月ごろから全社的なデータ活用基盤のプラットフォームとしてDatabricksを採…

顧客からの課題解決はエンジニアにとってのgood first issue

こちらの記事は カケハシ Advent Calendar 2023 の12月10日の記事になります。 はじめに こんにちは。カケハシで機械学習エンジニアをしている木村です。 私は今年の8月に入社してMusubi AI在庫管理の開発を行なっています。カケハシでは入社時のオリエンな…

TensorFlow Probabilityを使ってドメイン知識を組み込んだ独自の確率分布を定義してみた

カケハシでデータサイエンティストとして働いている蓑田です。 こちらの記事は カケハシ Advent Calendar 2023 の8日目の記事になります。 今回はTensorFlow Probability(以降、TFPと呼ぶ)を使って独自の確率分布を定義するための方法について書いていこう…

ベイズ推論を用いた2群間の比較

カケハシでデータサイエンティストをしている島吉です。 こちらの記事は カケハシ Advent Calendar 2023 の4日目の記事になります。 A/Bテストなど、ある2つのグループ(2群)の特徴に差があるのか検証したい場面があります。このとき、t検定などの仮説検定…

AWS Glue Crawlerを利用した分析用テーブルの構築

こちらの記事は カケハシ Advent Calendar 2023 の3日目の記事になります。 こんにちは、カケハシで Musubi AI在庫管理 の開発をしているMLエンジニアの藤本です。 Musubi AI在庫管理 ではS3に出力している内容に関する分析用テーブルの管理にAWS Glue Crawl…

GBDTによる分位点回帰は推論時の誤差を正確には表していない

Musubi AI在庫管理の機械学習エンジニアをやっている中野です。 こちらの記事は カケハシ Advent Calendar 2023 の1日目の記事になります。 昨年はprophetについて書きましたが今年は勾配ブースティングにしました。 医薬品や食料品、アパレルなどの需要予測…

コードフォーマッターをPrettierからdprintにしたら10倍以上速くなった話🚀

はじめに こんにちは!ソフトウェアエンジニアの種岡です。 私たちのチームでは、TypeScriptを使用して開発を行っており、Prettierというコードフォーマッターを利用し、チーム内でコーディングスタイル統一に大変重宝しています。 そんなフォーマッター界隈…

リソースの大掃除にはChatGPT

はじめに カケハシで BI ツールを開発している横田です。 AWS のリソース、いつの間にか増えていませんか? 今回は、ChatGPT を使って AWS のリソースを簡単に可視化することができたので、紹介したいと思います。 今回の課題と工夫したこと 我々のチームで…

Renovate の対応状況を確認し、開発者がライブラリアップデートを頑張っていることを可視化した

ライブラリのバージョンアップはセキュリティを担保する上で重要で、大変な作業です。 その作業を省力化してくれる Renovate をカケハシでは 2020 年から導入しています。 そんな Renovate の対応状況を可視化し、セキュアな状態を保てているかを確認しまし…

AWSのIoT CoreとIoT Device Shadowで管理する「レセハブ」の紹介

はじめに こんにちは。処方箋データ基盤チームの山田です。 私の所属するチームでは、レセハブというIoTデバイスを作っています。 今回は、レセハブの機能や特徴・および採用されている技術について紹介いたします。 これまで、処方箋データ基盤チームのプロ…

GitHub Actions料金 Datadogによる可視化と削減のヒント

開発コストのうちGitHub Actions料金が占める割合は小さい傾向にありますが、組織規模によっては削減の必要があるでしょう。 この記事では、主にDatadogを利用した可視化による特定方法と、一般的なコスト削減のヒントを述べます。 前提:パフォーマンスを改…

Developers Summit 2023 Summer に参加します!

ゴールドスポンサーで参加します 我々KAKEHASHIは、2023年7月27日(木)にオンラインで開催される Developers Summit 2023 Summer に、ゴールドスポンサーとして参加することとなりました! event.shoeisha.jp 当日は、弊社からもスタッフがセッションに登壇す…

CTO/テックリードのためのAWSコストを大幅カットする取り組み方

請求明細書を見てお嘆きの皆様へ。 前回の記事では、すぐにコスト削減の成果を出したい人向けに比較的簡単な方法を解説しました。 この記事では、時間がかかっても良いので根本的に原価をなんとかしたい人を対象としています。 請求明細書(Billing)やCost Ex…

Databricks社の戦略発表会で講演させて頂きました

5/25にDatabricks Japan社にて報道関係者を対象とした同社の2023年度の戦略発表会が行われました。 光栄なことに、我々カケハシもDatabricksの1ユーザーとしてその場に同席し、カケハシにおけるDatabricksの活用事例の講演の機会を頂きました。 会社を代表し…

Redash(Presto)とDarabricksのDMLの構文違いについてまとめてみた

こんにちは、カケハシのデータ基盤チームで開発ディレクターをしている松田です。最近、歳のせいか疲れが溜まりやすくなっており、毎週サウナに通っています。 カケハシでは今までRedashを利用して全社にデータ提供をしていましたが、去年の7月からDatabrick…

技術の本質について

みなさんは、技術とは何か、考えたことはあるでしょうか。 ここでは、技術哲学の立場から考えるための参考として、ハイデガーの技術論を取り上げます。 技術論のタイプ A.フィーンバーグの技術: クリティカル・セオリーの分類によれば、 これまでの技術論は2…

文字コードの世界の第一歩

こんにちは、株式会社カケハシでおくすり連絡帳 Pocket Musubiの開発を担当している渡辺です。 今回は文字コードについての記事を書きました。 Pocket Musubiではお薬手帳用QRコードを読み込み、デコードした結果を利用します。ここでデコードするときにうま…

GitHub Actions上でテストを約3倍早くした話

はじめに こんにちは、LINE上で動くおくすり連絡帳 Pocket Musubi というサービスを開発している種岡です。 ある日チーム内メンバーから CI実行時間がとても長くなり困っている というアラートが発せられました。 実際に確認しに行くと、開発初期の頃は5分ぐ…

DatabricksのAutoLoaderを利用してプロダクトの監査ログを取得した

初めまして、カケハシのデータ基盤チームでデータエンジニアをしている伊藤と申します。 最近の悩みは、二郎ラーメンを食べていないのに「二郎ラーメンの匂い(臭い?)がする」と同居人に言われることです。私のニュースは置いといて、カケハシでは全社的なデ…