タグ

ブックマーク / zenn.dev/loglass (21)

  • 主キーはもう「UUIDv7」一択なのか? 〜 ID技術の歴史的変遷と現時点の最適解 〜

    この記事は毎週必ず記事がでるテックブログ Loglass Tech Blog Sprint の137週目の記事です!3年間連続達成まで残り22週となりました! データベースの主キーはもう UUIDv7 一択――というのが最近の流れかもしれません。特に今は AI が「核心です!質です!UUIDv7 です!」と自信満々に採用してくる時代です。だからこそ、人間の側もその背景をしっかり理解しておきたいものです。 ログラス プロダクト基盤部の小林です。ID体系を根から考え直す機会はなかなかありませんが、ログラスにおいていくつかの新規事業や大規模なプロダクト改修が進む中で刺激を受け、この記事を書きました。 稿では、 「デジタルシステムのID(DBの主キー)」 に焦点を当て、その変遷と現代のベストプラクティスを紐解きます。 TL;DR: ID技術の比較と選び方 現代のシステム構築において候補に挙が

    主キーはもう「UUIDv7」一択なのか? 〜 ID技術の歴史的変遷と現時点の最適解 〜
    mkusaka
    mkusaka 2026/04/01
    RDBMS主キーはUUIDv7(16バイトバイナリ)、外部URLはBase62やNanoIDで分離する最適解を解説。
  • 触ってわかるデータレイクハウス(Parquet, Iceberg, Trino)

    この記事は毎週必ず記事がでるテックブログ Loglass Tech Blog Sprint の79週目の記事です! 2年間連続達成まで残り27週となりました! 昨今、データエンジニアリングの重要性が高まるなか、データレイクハウスという言葉を聞く機会が増えてきました。一方で、BI、DWH、データレイクといった分野は、色のついた商用製品であったり大規模な技術スタックになったりと気軽に触りにくい印象があったりもして個人的に最近はあまり触れてこなかった分野でした(15年程前はだいぶBI製品にお世話になりましたが)。 でも、実はかじってみると美味しい、単なるわず嫌いだったかもしれません。この記事では前半にデータレイクハウスを概観しつつ後半に軽くハンズオンしてみたいと思います。チョイスは、最も使われるフォーマットである Apache Parquet 、S3 Tables の元となっている Apach

    触ってわかるデータレイクハウス(Parquet, Iceberg, Trino)
    mkusaka
    mkusaka 2025/12/25
    Parquet・Iceberg・Trinoを実際に操作しながらデータレイクハウスの概念を学べるハンズオン記事
  • AI エージェント開発で失敗しないための 10 のデザインパターン - フレームワークに依存しない設計の共通言語を定義する

    ※ 凡例: ✓ = 明示的に言及、(言及) = 関連概念として触れられている、- = 言及なし ※ Reflection/Critic の Anthropic 列については、記事内で「自己批評的なループ」として触れられている Evaluator-Optimizer の概念を対応付けたもの。 ※ LangGraph 列については、引用ページ [2:1] だけでなく、ReAct エージェントや Plan-and-Execute チュートリアルなど LangGraph ドキュメント全体を含めて対応付けている。 ※ Evaluator-Optimizer は Reflection の一種とも捉えられるが、Anthropic が重視しているため独立して記載した。両者の違いは以下の通り: Reflection/Critic: 同一の LLM が自らの出力を批評し、定性的に改善する(自己批評) Eval

    AI エージェント開発で失敗しないための 10 のデザインパターン - フレームワークに依存しない設計の共通言語を定義する
    mkusaka
    mkusaka 2025/12/04
    Anthropic等3ソースを元に、Prompt ChainingやReActなどAIエージェント10パターンと3段階の複雑度モデルを整理
  • アジャイル開発の「人的側面」の課題を解決する「システムコーチング」 

    はじめに アジャイル開発では、技術やビジネスといった側面だけでなく、開発を担う人々の「人的側面」への取り組みが欠かせません。この記事では、その「人的側面」を強化する効果的なアプローチとして、「システムコーチング®」を紹介します。 特に「アジャイル・フルーエンシーモデル(アジャイルのプラクティスを包括的にまとめるモデル)」とシステムコーチングとの相互補完性に焦点をあて、ログラスの事例を交えて具体的な効果を探ります。システムコーチングを導入することで、チームや組織にどのようなインパクトがあるのか、そのポイントをお伝えします。 アジャイル開発とは アジャイル開発は、顧客の要求に迅速に対応するためのソフトウェア開発手法の総称です。短期間のイテレーションを通じて、開発チームは頻繁に製品のリリースを行い、顧客のフィードバックをすばやく取り入れることができます。 このアプローチはその柔軟性と迅速性により

    アジャイル開発の「人的側面」の課題を解決する「システムコーチング」 
    mkusaka
    mkusaka 2025/11/25
    アジャイルの人的側面を強化するORSC®(システムコーチング)解説。OKR改善など6事例と30以上のツール紹介。
  • 「リファクタリングの時間」を確保する技術

    はじめに ソフトウェア開発において、リファクタリング、つまりコードの保守性を高める活動は、ソフトウェアの価値を高める上でとても大切ですよね。 しかし、「リファクタリングの時間が確保できない」「リファクタリング実施のための同意が得られない」という話を耳にすることがあります。 リファクタリングは「絶対やった方がいいのは感覚としてはわかっている、でもその必要性ををうまく伝えられない」となりがちな性質があるのです。 この記事では、リファクタリングの時間を確保するために、どんなことを考え、何をステークホルダーに伝え、具体的にどのようなタイミングで実施していくといいのか、について解説します。 ポイントまとめ リファクタリング時間確保のポイントを端的に説明すると、以下の通りになります。 リターンとコストを明らかにする 複数の実施パターンを選択肢として持ち、柔軟に選べるようにする。 その中でも、日頃の小さ

    「リファクタリングの時間」を確保する技術
    mkusaka
    mkusaka 2025/11/06
    本文未提供のため要約不可。Zenn記事「リファクタリングの時間」を確保する技術の内容提示が必要です。
  • 決定論的システムと非決定論的AI Agentの接合点:OSSフレームワークEmbabelが拓く新しいソフトウェア開発の可能性

    こんにちは、ログラスでCTOをしております、いとひろ(@itohiro73)です。去年までは半年に1回まわってきたTech Blog Sprintが、今回はもう前回書いた記事から10ヶ月も経つということで、チーム規模の成長ぶりに驚く毎日です。 さて、ログラスは先日「Loglass AI Agents」構想を発表しました。ログラス代表布川の動画にもあるように、私たちは今、SaaSの価値を従来の形から変容させていく必要性を感じています。これまでの定量的なデータに基づいた決定論的な従来型のSaaSシステムにとどまらず、非定型なデータや不確実性の高い情報に基づいた非決定論的なタスクをAI Agentを通じて実現し、より良い意思決定に貢献するようなビジネスモデルをいかに構築していくか。私たちは今、その激動の時代の真っ只中にいます。 AIエージェントは銀の弾丸か? この記事を読んでいるエンジニアの皆さ

    決定論的システムと非決定論的AI Agentの接合点:OSSフレームワークEmbabelが拓く新しいソフトウェア開発の可能性
    mkusaka
    mkusaka 2025/09/27
    決定論的システムと非決定論的AIを繋ぐOSS「Embabel」を紹介。GOAPによる計画策定や型安全なドメインモデル統合(DICE)により、エンタープライズ品質のAI開発を支える独自手法を解説。
  • 登壇スライド作成もClaude Codeに任せたい 〜家でも外でも移動中も〜

    2025年6月18日 12:47 - 山手線車内 ついにPixel 9 Pro Foldを手に入れて、意気揚々と電車に乗り込んだ。 窓の外の景色を眺めながら、「今日は何しよう」なんて考えていたら... あ、やばい。来週のLT発表、何も準備してない。😱 でも待てよ。最近Claude Codeでスライド生成の仕組みを整えたばかりじゃないか。 これ、もしかして電車の中でLTスライドが完成するんじゃ...? 2025年6月18日 13:15 - まだ電車内 結論から言うと、当に電車内でLTスライドが完成した。 こんにちは、kagaya(@ry0_kaga)です。 今回は登壇スライド作成もClaude Codeに任せたいという話です。 Claude Code × Marpのスライド生成を一度テンプレートを育てたらもう戻れなそうな雰囲気です。 スライド作成、毎回同じ作業してませんか? 個人的にはモ

    登壇スライド作成もClaude Codeに任せたい 〜家でも外でも移動中も〜
    mkusaka
    mkusaka 2025/07/09
    Claude CodeでAIがテキスト・コードを自動生成し、登壇スライドを自宅・外出先・移動中でも即座に作成できる手順と活用例を紹介します
  • AI時代なので、もうDDDは要らなくなりますかね?

    DDDは今も“武器”になるのか? ここ1年でプロダクト開発の環境は大きく変わりました。 AIエージェントが開発現場で“当たり前”のように使われる時代になりつつあります。 そんな中で、「DDD(ドメイン駆動設計)って今の時代にも必要なの?AI時代になったらもう使わなくなるのでは?」と疑問に思う方もいるかもしれません。 私はこう思います。 DDDは、AI時代にこそレバレッジを効かせることができる、価値を届けるための“武器”になる。 (少なくとも、あと数年はね。) DDDの目的は「機能性」と「保守性」を両立させること DDDは単なる設計理論ではなく、プロダクトを継続的に改善・成長させていくための戦略です。 その質は、以下の2点に集約されます。 ① 機能性を高めるためのモデリング ユーザーや業務の課題を理解し、抽象的な図を使ってFBサイクルを小さく・速く回すことにより、役に立つものを作れる可能性

    AI時代なので、もうDDDは要らなくなりますかね?
  • DevinにMCPサーバーを作ってもらった

    MCP流行ってますね!Googleが先日公開したA2Aのドキュメントに「Agent2Agent❤️MCP」というタイトルのページもありましたが、あれよあれよの間に現時点では標準規格の座を掴んだと言えるでしょう。 https://google.github.io/A2A/#/topics/a2a_and_mcp 今回はMCPサーバーをDevinに作ってもらうという話です。 作ってもらったMCPサーバーは、王道の自社ドキュメントにアクセスするためのMCPです。 MCPからアクセス可能にした肝心のドキュメント自体も下記スライドで発表した、Devinに自動更新させているFAQ・仕様ドキュメントです。 試してみて・書き始めてみてわかりましたが、今回の程度のMCPサーバーの開発には大きく困りポイントはなかったので中身は薄めです。 MCPサーバーの作り方 MCPサーバーの作り方自体は多くの記事があり、公

    DevinにMCPサーバーを作ってもらった
  • KotlinによるIntelliJ Platform Plugin開発で、道具箱に磨きをかけよう!

    この記事は毎週必ず記事がでるテックブログ Loglass Tech Blog Sprint の 16週目 の記事です! 1年間連続達成まで 残り37週 となりました! 皆さんこんにちは、株式会社ログラスでVPoEをしているいとひろと申します。 生まれてこの方、IDEはIntelliJ IDEAで育ってきたJavaエンジニアです(IntelliJ IDEA歴18年。途中ブランク有り)。 今回は、このIntelliJ IDEAをはじめとするJetBrains製IDEのプラグイン開発についての記事です。 Kotlinを使ったIntelliJ Platform Plugin開発のモチベーション Kotlinで開発をしている皆さんは、IntelliJ IDEAあるいはAndroid StudioをIDEとして利用している方が多いのではないでしょうか。 これらJetBrain製IDEのベースとなって

    KotlinによるIntelliJ Platform Plugin開発で、道具箱に磨きをかけよう!
  • 【やってみた】Cursorと始める形式手法(Alloy)

    この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" の 68 週目の記事です! 2 年間連続達成まで 残り 38 週 となりました! はじめに(前置き) こんにちは、世界。 ログラスでQAエンジニアを担当している大平です。 突然ですが、みなさん、仕様のレビューをしていますか?レビューをしている場合は、どうやって行っていますか? 私はQAエンジニアとして、過去に実施したテスト経験や起きた不具合、既存の機能との整合性や矛盾点、競合製品がどうなっているか、テストのしやすさなどの観点でレビューを実施します。 (ちなみにレビューについては、書籍「間違いだらけの設計レビュー」がお勧めです) ただ、過去を振り返ると、私の技量が足りないため、仕様の詳細な部分の指摘が漏れ、後工程で発覚することがQAエンジニアのキャリアの中で何度もありました。もちろん、複雑な仕様に

    【やってみた】Cursorと始める形式手法(Alloy)
    mkusaka
    mkusaka 2025/01/21
    CursorのAIチャットでAlloyを学び、ユーザ管理仕様をfact追加で矛盾検出。adminは1人以上を確認。
  • オニオンアーキテクチャにおけるテストコーディングガイド

    はじめに アドベントカレンダーも終盤に差し掛かってきましたね! シリーズ2ではテストコードについて書こうと思います。 ここ2年間くらいで採用やイベントを通じて色々な会社のエンジニアとお話させてもらった中で、テストコードの書き方にはかなりブレがあるように感じました。 ユニットテストについてはあまりブレがなく、どの方もドメイン層のEntityやValueObjectについて網羅的に書きましょうとなっていました。 一方で、インテグレーションテストについて流派も考え方も様々なものがありました。 そこで、この記事ではオニオンアーキテクチャにおけるインテグレーションテストの実装方法を具体例をもとにパターン別にまとめて、Pros/Consを考えてみようと思います。 今後のテスト設計のガイドとして役に立つと幸いです ☺️ オニオンアーキテクチャについては改めて説明しませんが、 little-handsさん

    オニオンアーキテクチャにおけるテストコーディングガイド
    mkusaka
    mkusaka 2024/12/21
  • DDDで集約を跨いだ情報でロジックを構築するための「getter高階関数パターン」の紹介

    はじめに 今回はDDDで集約を跨いだ情報でロジックを構築するためのパターンについて紹介していきます。 DDD(ドメイン駆動設計)における「集約(Aggregate)」とは、関連するオブジェクト(エンティティや値オブジェクト)を一つにまとめた単位のことを指します。集約はドメインのビジネスロジックの適用や整合性を維持するために定義されます。永続化は集約単位で行われます。 例えばECサイトの注文という集約には、一つの注文に複数の注文明細があるとします。この注文と注文明細はそれぞれがエンティティであり、このとき集約は「複数の注文明細を持つ一つの注文」という単位で管理され永続化されます。一つの集約の中に二種類のエンティティがあるということです。 Amazonで注文した時に、化粧水を2個、洗顔料を1個まとめて買ったときの注文を一つの集約として取り扱っているイメージです。 class Order( va

    DDDで集約を跨いだ情報でロジックを構築するための「getter高階関数パターン」の紹介
    mkusaka
    mkusaka 2024/10/13
  • その先に進むためのモジュラーモノリス再入門

    この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" の 60 週目の記事です!2年間連続達成まで 残り 46 週 となりました! 「モジュラーモノリス」はここ数年で広く普及してきました。実際にモジュラーモノリスを取り入れた開発事例を多く見かけるようになりました。当記事では改めてモジュラーモノリスの起源を遡り、また、さらにその先に進むためにどのような準備をしておくべきかを軽くまとめてみます。 モジュラーモノリスとは モジュラーモノリスの起源は 2018 年頃 「モジュラーモノリス」という言葉の正確な起源は把握していませんが、Simon Brown が GOTO Conference 2018 で行った講演がその起源の一つかもしれません。この講演は、モジュラーモノリスの概念をわかりやすく説明しており、その後、多くの企業がこれに注目するきっかけとなりま

    その先に進むためのモジュラーモノリス再入門
    mkusaka
    mkusaka 2024/10/10
  • オニオンアーキテクチャの威力:1ヶ月で実現したクエリエンジン移行舞台裏

    ログラスの龍島(@hryushm)です。最近は秋に備えて干し芋を作る練習をする日々を過ごしています。 ログラスではオニオンアーキテクチャを採用してしてDDDを実践しています。直近プロダクトのスケールによってデータのレポーティング、集計処理のパフォーマンス劣化の問題が顕在化、早急な対応を迫られる事態となっていました。その対応としてRDBMS(PostgreSQL)からDWH(BigQuery)へ一部のクエリを移行しました。オニオンアーキテクチャの恩恵で移行が比較的容易であり、実装自体は1ヶ月というスピードで終えることで顧客に素早く価値提供できたため、実例として記事にしたいと思います。 オニオンアーキテクチャと利点 オニオンアーキテクチャ自体の説明は多数の記事があるため省きますが、弊社松岡の記事が理解しやすいと思います。 記事中にあるレイヤードアーキテクチャと比較した時に肝となる、依存性逆転の

    オニオンアーキテクチャの威力:1ヶ月で実現したクエリエンジン移行舞台裏
    mkusaka
    mkusaka 2024/09/10
  • ログラスのTerraform構成とリファクタリングツールの紹介

    この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" の 47週目の記事です! 1年間連続達成まで 残り 6 週 となりました! はじめに ログラスのクラウド基盤でエンジニアをやっているゲイン🐰です。 ログラスではAWS上でアプリケーションを動かすためにIaCとしてTerraformを採用しています。 我々のTerraformの構成を紹介するとともに、現状の課題とリファクタリングの事例を共有できれば幸いです。 ログラスのTerraform構成 ざっくりログラスのアプリケーションにまつわるTerraform構成は以下のようになっています。 基的にはterraform/usecaseディレクトリ配下にmoduleとして定義されています。 中身は比較的にベタでリソースが書かれており、それらをterraform/envディレクトリの各ディレクトリ内で呼

    ログラスのTerraform構成とリファクタリングツールの紹介
    mkusaka
    mkusaka 2024/07/14
  • Datadog でアラート通知の質を向上させるための取り組み

    この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" 44 週目の記事です!1 年間連続達成まで残り 9 週となりました! はじめに はじめまして、2024 年 4 月にログラスにジョインしたエンジニアの石畑です。 まだまだドメインやシステムについて学んでいる最中なのですが、その中でアラート監視・運用周りをより良くできそうだったので、試行錯誤したことをまとめたいと思います。 どんな課題があったのか? ログラスではフロントエンドからバックエンド、インフラに至る全てのログ・メトリクスが Datadog に集約され、横断的に分析・監視できる仕組みが整っています。アラートも Datadog でモニタリングを作成し、「Slack に通知 → ローテションのオンコール担当が対応」という体制が作れています。 しかし、歴史的に積み重なったモニタリングが過剰にアラー

    Datadog でアラート通知の質を向上させるための取り組み
    mkusaka
    mkusaka 2024/06/18
  • LLMエージェントのデザインパターン、Agentic Design Patternsを理解する

    「Agentic Design Patterns」と呼ばれるLLMベースのAIエージェント(以下、LLMエージェント)の4つのデザインパターンについて紹介します。 まず、「Agenticワークフロー」について説明し、続いて4つのデザインパターンを説明します Agentic Design Patterns Part 1 Agentic Design Patterns Part 2, Reflection Agentic Design Patterns Part 3, Tool Use Agentic Design Patterns Part 4, Planning Agentic Design Patterns Part 5, Multi-Agent Collaboration 動画もあります。 LLMエージェントについての説明は省略しているため、エージェントについて初見の方は以下記事をお勧

    LLMエージェントのデザインパターン、Agentic Design Patternsを理解する
    mkusaka
    mkusaka 2024/04/15
  • Tauri v2.0.0-betaがリリースされたので触ってみた

    この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" の 27週目 の記事です! 1年間連続達成まで 残り26週 となりました! 背景 元々Electronについて調べている中でTauriに出会い、バンドルサイズが少ないことやRustを利用していることから個人的に注目をしていました。 そのTauriで2024年2月2日にv2のベータ版がリリースされたので触ってみました。 詳細については公式でブログが出ているので参考にしてください。 バージョン Tauri v2.0.0-beta Tauri2.0でできること 改めてTauri2.0で何ができるようになるのか公式のロードマップから見ていきます。 ロードマップでは以下のような記述があり、 Powerful Plugins: Many of the Tauri APIs have been shifted

    Tauri v2.0.0-betaがリリースされたので触ってみた
    mkusaka
    mkusaka 2024/04/05
  • 巨大なテーブルコンポーネントを仮想スクロール化してブラウザのメモリ使用量を1/10にした話

    この記事は毎週必ず記事がでるテックブログLoglass Tech Blog Sprintの17 週目の記事です。 1 年間連続達成まで残り 36 週となりました! はじめに こんにちは!株式会社ログラスでエンジニアをしているd4te74です 🍷 ログラスではレポートと呼ばれる経営データ分析のための機能領域を改善するチームに所属しています。 この記事では、最近取り組んでいたレポート機能のフロントエンドのパフォーマンスチューニングとして行った「巨大なテーブルコンポーネントの仮想スクロール化」について書いていこうと思います。 ※ Loglass は事業の予実を管理するサービスです。 レポート機能とは レポート機能とは、Loglass 内に統合された部署や勘定科目などの経営データに対し集計・分析が行える機能で、ユーザー自身がそれらを自由度高く表形式に組み立てて、表示できるというものです。 以下の

    巨大なテーブルコンポーネントを仮想スクロール化してブラウザのメモリ使用量を1/10にした話
    mkusaka
    mkusaka 2024/02/21