TECH PLAY

株式会社カケハシ

株式会社カケハシ の技術ブログ

382

コードを書くとき、テーブル駆動方式は過小評価されています。非常に強力なテクニックなので、事例とそのインパクトを説明します。 概略サンプル if age < 10: return price / 2 elif age < 20: return price / 3 elif age < 50: return price / 5 else: return price / 100 ↓ age_table = [ [10, 1.0/2], [20, 1.0/3], # 小数点扱い注意 [50, 1.0/5], [float('inf'),1.0/100] #番兵パターン ] for target in …
はじめに AI在庫管理のフロントエンド開発をしている木本です。 先日、@apollo/clientのv3.7.17からv3.8.1へのアップデートに伴う大規模なデグレが発生しました。具体的には無限スクロールで情報を取ってくる画面で、一切情報が見られなくなってしまう状態となりました。一次対応として@apollo/clientをv3.7.17に戻すことでデグレは解消されました。 この@apollo/clientアップデートについて、情報があまりネット上に広まっていないようなのでブログ記事として情報を残したいと思います。 TLDR @apollo/clientをv3.7をv3.8以降にアップデートし…
こんにちは、カケハシのVPoEの湯前(id:yunon_phys)です。2024年1月10日から12日まで開催されたRegional Scrum Gathering Tokyo(RSGT)2024に、カケハシはゴールドスポンサーとして初参加しました。本エントリはスポンサーとして参加に至った経緯と当日の様子を書きます。 スポンサードはコミュニティへの還元のため カケハシはこれまでほぼ全てのプロダクト開発にスクラムを導入し、スクラムマスターの採用も積極的に行ってきました。現在も各開発チームでスプリントの成果を発表しあうohiromeという場を、取締役CTOの海老原がファシリテーションして隔週で行っ…
こんにちは、株式会社カケハシのデータサイエンティストの保坂です。 データ分析をやっていると、典型的な処理、よく使う処理を再度使い回せるようにしたり、他のメンバーに共有したくなることはないでしょうか?さらにこのような処理を適宜みんなが自由に拡張でき、デグレがないようになっていたらどんなに良いことでしょう。 カケハシのデータサイエンティストはDatabricksを使って多くの分析業務を行っているので1、これがDatabricksの中だけで実現できれば、データサイエンティストにとってとても便利な環境になるのではないか?と考え、試行錯誤してみた結果、ごく簡単なものですがやりたいことを概ね実現できる環境…
カケハシがスポンサーブースを出すということで、Regional Scrum Gathering Tokyo 2024に現地参加する機会をいただきました。 今回は僕が参加にあたりスポンサーとして参加する自分の役割についての部分と、自分個人の目標や感じたことの両面を書いてみようと思います。 スポンサーとして参加する自分の役割について カケハシのスポンサーブースを盛り上げる できればオンラインも盛り上げる Day 2のスポンサーセッションの発表 自分個人の目標や感じたこと セッションで質問する OSTにテーマを出す とにかく色んな人と話す まとめ スポンサーとして参加する自分の役割について まずはス…
はじめに 私はカケハシでエンジニアリングマネージャーをしている伊豆本です。約5年スクラムマスターを経験しています。 カケハシにはスクラムマスターが複数いるので、この記事で記載するのはあくまで私の持論です。 スクラムマスターでよくある課題感 自身がスクラムマスターをしている中で見聞きしたり経験した課題感には以下のようなケースがありました。 スクラムイベントに遅れて参加する 参加者が集まらずスクラムイベントを開始して良いかわからない スクラムイベントに無断で欠席 スクラムイベントがあると休みづらい スクラムイベントが予定していたタイムボックスに終わらない プロダクトバックログの完了の定義がない 外…
この記事はカケハシPart1 Advent Calendar 2023の12/25分の記事になります。 カケハシPart2 Advent Calendar 2023もありますので、ご興味あれば読んで頂けたら幸いです。 はじめに こんにちは。カケハシCTOの海老原です。カケハシでは2022年から明確にエンジニアリングマネージャー制を敷きそれを前提に組織を構成していますが、そこに至るまで様々な紆余曲折を経たり、また設定後も隣接職種間でのいわゆるRole & Responsibilityに関する議論が多く行われてきました。今回は、この点について既存のフレームワークを援用しつつ私の考え方をまとめてみた…
本エントリはカケハシ Advent Calendar 2023 Part 2の 25 日目の記事です。ぜひ Part1 と合わせて見て頂けたらと思います。 本日はMusubi AI在庫管理プロダクト開発チームでエンジニアリングマネージャーをしている僕が、開発ディレクターとして入社した当時に進めた組織変更への取り組みについて、現状の組織の状態も踏まえて振り返ってみようと思います。 組織変更の方針 入社した当時、Musubi AI在庫管理はフロントエンドチームとバックエンドチームに分かれて活動していました。 同じプロダクトを開発しているにもかかわらず、それぞれのチームは別々に活動している状態で同じ…
こちらの記事はカケハシ Advent Calendar 2023 Part2の24日目の記事になります。 adventar.org はじめに 反復的な開発は、変更容易性の高いソフトウェアが不可欠です。ソフトウェア開発の経験がある方なら、デリバリ後の洞察や市場環境の変化から、新しい機能の追加やアーキテクチャの進化の必要性に直面したことが一度はあるでしょう。 私自身、要求分析手法やSOLID原則等の技法を取り入れ、変更容易性に対応する多くのプロジェクトに参加しました。しかし、どれだけ優れた手法や技法を持っていても、変更が難しい要求が出てくることは避けられません。その際、「過去の出来事」を正確に記録…
こちらの記事は カケハシ Part 2 Advent Calendar 2023 の12月23日の記事になります。 カケハシ Part 1 Advent Calendar 2023もありますので興味のある方はそちらもお読みください。 はじめに こんにちは。10月の中日からカケハシでデータサイエンティストをしている川渕です。 入社してそろそろ2か月ほどになります。オンボーディングが大体終わり本格的な仕事が始まりつつあり、12月の頭くらいからMusubi AI在庫管理のアルゴリズムの一部を改善する仕事に取り組み始めました。 既存システムの一部を改善する仕事に取り組むので、関係者と上手くコミュニケー…
カケハシPart1 Advent Calendar 2023の23日目の記事になります。 カケハシPart2 Advent Calendar 2023も読んでいただけたら嬉しいです。 はじめに 私はカケハシのMusubi Insightというサービスのエンジニアリングマネージャーをしている伊豆本です。 Musubi Insightはダッシュボードと患者リストという2つのプロダクトを開発しています。 ・ダッシュボード:薬局の経営者や現場の薬剤師が、日々の業務、収益、患者関係性を確認できるBIサービス ・患者リスト:薬局が患者の一覧を確認したり、患者を検索し、服薬期間中の患者をフォローするためのサ…
MusubiInsight のダッシュボードチームでは、四半期に一回ぐらいのペースでオフサイトミーティングを行なっています。今期は、そのオフサイトミーティングで LLM(大規模言語モデル)のハッカソンを行いました。 OpenAI が ChatGPT を発表してから、チームの中でも GitHub Copilot を導入したり ChatGPT を利用したりと、LLM を使ったツールを業務で活用するメンバーが増えてきていました。LLM を使った業務改善をプロダクトに活かせないか議論したいと言う話は以前からあったのですが、なかなか時間を取れていなかったこともあり今回のハッカソンを企画してみました。 今…
フロントエンド(React.js TypeScript) バックエンド(Node.js TypeScript) インフラ(CDK TypeScript) の Monorepo の linter を ESLint からbiomeに変更したら lint が約50秒かかっていたのが大体2秒になって嬉しかったので共有します。 こんにちは、カケハシでソフトウェアエンジニアをしている加藤です。 本エントリはカケハシ Part 2 Advent Calendar 2023の 21 日目の記事です。 ぜひ Part1 も 2 も見て頂けたらと思います。 同じカケハシ社内の他のチームでは以前 コードフォーマッタ…
こちらの記事はDatabricks Advent Calendar 2023の21日目の記事です。 こんにちは、カケハシのデータ基盤チームでデータエンジニアをしている伊藤と申します。 カケハシのプロダクト1ではRDS(Aurora MySQL/Aurora PostgreSQL)を利用しています。 全社的なデータ活用基盤のプラットフォームとしてDatabricksを採用し、Databricks上でRDSのデータを使用して分析したいという要望が社内で増えています。 そういった要望に応えるためにRDS Snapshot Exportを利用してDatabricksにデータ連携を行ったのでその紹介記事…
この記事は カケハシ Advent Calendar 2023 の20日目の投稿になります。 adventar.org はじめに こんにちは!カケハシでおくすり連絡帳 Pocket Musubi というサービスを開発している牧野です。 皆さんはモバイルアプリのモニタリングをしていますでしょうか? 我々のチームではFlutterでモバイルアプリを開発しています。 モバイルアプリ開発においては、アプリの起動時間やCPU、メモリ使用量といったパフォーマンスのモニタリングや、画面遷移やタップといったユーザ行動の分析を行うため、何らかの監視・分析のツールを導入していることが多いのではないでしょうか。 こ…
この記事は カケハシ Advent Calendar 2023 の19日目の投稿になります。 adventar.org 東 浩稔(あずま ひろとし)と申します。 私は、カケハシでデータプロダクトのPdM(プロダクトマネージャー)を務めております。 2023年の7月に入社し、全社のデータ利活用を促進するため、データプロダクトの整備・強化に取り組んでいます。 今回は、9月にDatabricks AI World Tour Tokyo 2023で発表した「データガバナンスの視点から見たデータメッシュアーキテクチャ」を元に 当社のデータメッシュアーキテクチャの詳しく掘り下げて解説いたします。 本書を読…
はじめまして。AI在庫管理の開発チームでバックエンドエンジニアをしている沖です。社内ではファーストネームで「たくおさん」と呼んでもらうことが多いです。まだ(もう?)入社して4か月ちょっとなのですが、もりもり開発ができていて楽しいです。 この記事は カケハシ Part 1 Advent Calendar 2023 19日目の記事です。 カケハシ Part 2 Advent Calendar 2023 と合わせて楽しんでいただけたら嬉しいです。 アドベントカレンダーの話が挙がった際にとりあえずノープランでエントリーして、本番環境のDBマイグレーションでやらかした懺悔文でも書こうかなと直前まで思って…
こんにちは。AI 在庫管理チーム ソフトウェアエンジニアの坂本です。 今回は AI 在庫管理のバッチ処理で利用しているワークフローツール Airflow (MWAA) の Zombie Task に苦労したケースとその対処法について紹介しようと思います。 概要 Airflow で動かしているバッチ処理が Zombie Task という事象によってエラーになってしまうことが高頻度で発生しました。 Airflow のタスクを適切に分離することで Zombie Task が発生してもバッチ処理が失敗することがないように変更を加えることができました。 Airflow の Zombie Task とは …
こちらの記事はカケハシ Advent Calendar 2023 Part2の17日目の記事になります。 はじめに こんにちは、株式会社カケハシのデータサイエンティストの保坂です。 2023年9月より、これまで2つに分かれていたデータサイエンス系メンバーの属するチームが合併し、医薬品サプライチェーン事業およびPatient Engagement事業を担うPharma Divisionにおける横断データサイエンス組織となりました。さまざまなバックグラウンドや経験を持った方が集まったそれなりの規模の組織になってきているので、組織が小規模だった頃と比べて分析プロセスに関する考え方の違いが課題となるこ…
はじめに こんにちは。カケハシでPatient Engagementという新規事業に関わるプロダクトマネジャー(以降PdM)を担当している渡部と申します。現在はこれらの事業を加速させるために、いわゆる0→1フェイズ、かつ、SoE(System of Engagement)の側面が強いプロダクト・サービスの企画開発をしております。 カケハシではスクラムでのアジャイル開発が共通して採用されていますが、前述のプロダクト特性上、お客様ごとに置かれている状況も考え方も異なる状況下であるべきを模索し続ける必要があります。いわゆるVUCAそのものなサービス開発に日々取り組んでいます。 そんな不確実性が高い状…