KAKEHASHI Tech Blog

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

ECS起動を高速化するSeekable OCI(SOCI)インデックスをGitHub Actionsでも作る

SOCIとは? SOCI(Seekable OCI)はAWSが開発しているコンテナイメージの遅延読み込みのための仕組みです。コンテナイメージには起動時には使わないデータも多く含まれています。遅延読み込みによって、起動時には最小限のデータのみ読み込んで起動時間を短縮す…

Retrospective - 「Starfish」という振り返り手法

こんにちは。最近暑すぎて毎日息子とかき氷を食べまくっている(一週間でシロップ使い果たして妻にドン引きされてる)カケハシでスクラムマスターやっている窪内です。 みなさんRetrospective(振り返り)やってます? 私が所属するチームでは、頻繁に振り返り…

ETL ワークフローに Aurora DB Cluster Export を導入してみた

はじめに こんにちは、カケハシの坂本です。 「AI 在庫管理」というプロダクトの ETL ワークフローに Amazon Aurora のマネージドサービスである Aurora DB Cluster Export という機能を導入したことについてお話しします。 AI 在庫管理では、医薬品などの需…

Pocket Musubi開発チームのRetrospective

こんにちは、カケハシの三浦です。 今回はカケハシの Pocket Musubi チームのスクラムについて、中でも Retrospective について書いていきます。この記事の内容は1つのチームの例ですが、同様の問題や"気になり"を抱えるチームにとって何かの気づきとなれば…

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

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

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

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

RDSの新証明書の有効期限を考える

RDSの50年, 100年有効な認証局証明書 2023年1月13日のリリースで、RDS向けの新しい認証局(CA)証明書が提供されました。 新しいCA証明書には以下の特徴があります 有効期限が50年あるいは100年と長い RSA 2048bitの証明書が50年で、RSA 4096bit, ECDSA 384b…

Developers Summit 2023 Summer に参加します!

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

AWS GlueのCI/CD環境を作ってみた

こんにちは、カケハシの横田です。今回は我々の会社で実践しているテクノロジーについてお話しします。我々の開発チームは、日々 Apache Spark を活用し 100 個以上のバッチ処理を運用する中で、 AWS Glue という Apache Spark のマネージドサービスに大いに…

入社して3ヶ月。毎週違うエンジニアリングスキルが求められていて楽しい!

(分割キーボードのMoonlander。とても気に入ってます。) はじめまして。ソフトウェアエンジニアの椎葉(@bufferings)です。今年の4月にカケハシに入社して、今月末で3ヶ月になります。毎日楽しく過ごしていて、あっという間の3ヶ月間でした。 最初にすな…

クロスアカウントアクセスでAppSync Private APIを使う話

はじめに こんにちは、LINE上で動くおくすり連絡帳 Pocket Musubi というサービスを開発している種岡です . 社内でプライベートAPIを開発する要件があり、タイミング良くAppSyncでプライベートAPIが使えるようになったため試してみました 全体像 以下システ…

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

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

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

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

CDK の node と少しだけ仲良くなる

こんにちは、おくすり連絡帳 Pocket Musubiというサービスを開発している石井です。 私たちのチームはフロントエンド担当とかバックエンド担当とか敷居を区切らずに、エンジニアのモチベーションでフロントもバックエンドも実装するフルスタックよりなエンジ…

CDK for Terraformは実用可能か? DatadogのMonitorを構成管理してみる

概要 未だ0系でありながら、22年8月に一般提供が開始された CDK for Terraform の実用性を検討し、DatadogのMonitor(およびDowntime)の構成管理をコード化しました。 背景 弊社では主要な監視ツールの一つとしてDatadogを活用しており、弊チームでもDatadog…

技術の本質について

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

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

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

OKRに書ける!知っておくだけでAWSコストをすぐ削減できる26個のヒント

AWSコストをいますぐ最適化しませんか? キャッシュフロー、ユニットエコノミクス、改善しませんか? この記事では、とにかくいますぐなんとかしたい方向けの方法を金額面で大きい傾向にあるサービスごとに26個紹介します。 以下各見出し内のはコスト削減度…

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

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

DDDの初心者がDDD設計を基に開発を行うチームで気づいたユビキタス言語とドメインのこと

DDD

はじめに こんにちは。カケハシの患者リスト開発チームの金と申します。 患者リストはWEB業務アプリとして、薬局から患者さんへのフォローで関係性を向上させるためのツールです! 患者リスト開発チームではDDDとClean Architectureを基にしてスクラム開発を…

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

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

GitHub Projects を導入した話

はじめに こんにちは。Musubi の機能開発チームでフロントエンドを主に担当しております、井上です。どうぞよろしくお願い致します。 カケハシではスクラムによる開発を推進しており、その運用はあるていど各チームの裁量に任されています。 今回は私が所属…

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

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

今日の午後には無理なく大胆にコスト削減できるようになります。サーバレス化しましょう

お金は好きですか? コストを削減したいみなさん、ようこそ。 原価を低減したいみなさん、ようこそ。 サーバレスのビジネスでの優位性は多数ありますが、今回はその中でもコスト最適化の面から説明します。 やればやるだけ成果が見える: 努力が必ず報われる…

2022年版 AWS Glue の Spark Job で Aurora MySQL にデータを書き込む方法まとめ

KAKEHASHI でバックエンドエンジニアをしている横田です。 私が運用している Web サービスでは、AWS Glue で ETL 処理をしたデータを Aurora MySQL に投入することでユーザーが利用できるようにしています。 その中でも「データを Aurora MySQL に投入する」…

RxJS - mergeMap vs switchMap、適切に使い分けましょう!

はいさい!カケハシの新米メンバー、オースティンと申します。 沖縄から参上しております! 概要 RxJS のmergeMapとswitchMapの違いと使い方について解説します。 背景 Observableを使っていると、必ず直面する問題があります。それは、複数のObservableをど…

React + esbuildの開発環境にSASSを導入する

こんにちは!カケハシにて薬局と患者の関係性を向上させるためのツールである 患者リスト というWEB業務アプリケーションを開発している小室と申します。 本プロダクトのフロントエンドの開発環境としては、React + esbuildを採用しており、採用の経緯や実践…

一体いつから――――カケハシの開発組織がフラットだと錯覚していた?

こちらの記事は、カケハシ Advent Calendar 2022の25日目の記事になります。 こんにちは、四番隊隊長とは声が低いこと以外何一つ共通点がないCTOの海老原です。 すみません、タイトルは釣りタイトルです。何故こんな釣りをアドベントカレンダーのラストに持…

データアナリストと協業してデータ分析基盤を構築した際に感じたDatabricksの良さ

こちらの記事はDatabricks Advent Calendar 2022の25日目の記事になります。 こんにちは、カケハシでMusubi Insightという薬局向けBIツールのバックエンドエンジニアをしている高田と申します。 BIツールを開発しているということもあり日常的にETL処理の実…

pandasユーザーがPandas API on Sparkでつまづいたあれこれ

こちらの記事はDatabricks Advent Calendar 2022の24日目の記事です。 はじめに 初めまして。カケハシでデータサイエンティストをしている赤池です。 弊社はフルリモートで業務できるため今年9月から地元の仙台市で業務していますが、本格的な冬の到来を前に…