タグ

ブックマーク / tech-blog.monotaro.com (28)

  • 社内の基盤を活かして爆速開発を実現するために重視したマイクロサービステンプレートの5つの要点 - MonotaRO Tech Blog

    はじめに 転職後の二つの喪失感への対応 所属チームの現状とMonotaROのアプリケーション/サービス共通基盤(所謂プラットフォーム) 所属チームの状況 社内プラットフォームの状況 マイクロサービス開発のためのテンプレートの導入 開発のロケットスタート:テンプレートの早期提供 テンプレート作成の5つの要点 1. ベンダー非依存なObservabilityの実装 2. CI/CDを早期に提供(特にLinterを最初期に) 3. APIプロトコルとして、JSON over HTTPとgRPCの双方をサポート 4. 最低限の薄いフレームワーク 5. セントラルProtobufリポジトリの提供 現在の取り組み (2023年10月以降)と今後の展開 さいごに はじめに はじめまして、MonotaROのCTO-Officeに所属する伊藤と申します。 github.com recruit.monotar

    社内の基盤を活かして爆速開発を実現するために重視したマイクロサービステンプレートの5つの要点 - MonotaRO Tech Blog
  • 効率的にリファクタリングを進めるための下準備教えます - MonotaRO Tech Blog

    はじめに ※ (2024/03/14 16:33) 「インテグレーションテストの気軽な実行・変更ができない」節にて、データのクリーンアップを teardownで行うよう修正 EC開発-B グループの岡崎と EC開発-A グループの菊川です。2人とも普段は MonotaRO の EC サイトの開発に従事しています。 今回は、昨年11月に開催した、テストとリファクタリングのためのワークショップの中で行ったライブコーディングの準備をするにあたって困ったことについて記載します。 ライブコーディングでは、参加者全員の前で実際のプロダクトのソースコードをリファクタリングする、ということにし、それにあたって研修の運営メンバーでリファクタリングに取り組んでみました。ただ闇雲にリファクタリングするのではなく、研修では参加者に「どのような流れや考え方でリファクタリングをするか」を理解してもらえるように、運営メ

    効率的にリファクタリングを進めるための下準備教えます - MonotaRO Tech Blog
  • 構想半日、実装一日、全社活用される ChatGPTのSlackbotを作りました! - MonotaRO Tech Blog

    はじめに こんにちは、新卒2年目の佐藤です。 MonotaROでは先日、ChatGPTを簡単に利用できるSlackbot「MonoChat (β)」を全社員を対象にリリースし、大勢の方に利用されるようになりました。 私は、ChatGPTが社内全体で活用されることで一人一人の身の回りの業務がもっと楽になったり、生産性を上げられる良い機会に必ずなると思いMonoChat (β) を開発しました。 記事では社内の大勢の方に利用してもらうために考えたこと、設計/開発/運用してみて得た結果や知見、またMonotaROでのChatGPT利用についても紹介します。 特に、開発部分だけでなく設計部分や結果も紹介しているのでChatGPTを社内に普及させたい方にとって何か気づきになれば幸いです! はじめに MonotaROでは全社員がChatGPTを利用可能です 社内でのChatGPT利用 MonoCha

    構想半日、実装一日、全社活用される ChatGPTのSlackbotを作りました! - MonotaRO Tech Blog
  • SRE導入: システムを安定させる4000万円の魔法の壺 - MonotaRO Tech Blog

    こんにちは。鈴木です。 ここにシステムを安定させる4000万円の魔法の壺があるとします。 あなたなら買いますか。 はじめに SREやればいいのに 4000万円の魔法の壺 なぜモノタロウはSREに取り組むのか 10分落ちると数百万円、数千万円の影響が出る 不安定なシステムを札束でしばいたことがある 大規模化・複雑化が旧来の運用方法を無効化する SREの導入による効果 会話の中に「SLO」が登場するようになった システムの状態を深く理解できるようになった オンコールの初動対応が早く精緻になった SREの難しさ 組織横断的な活動の難しさ 安定的に時間を使うことの難しさ 利用するツールやサービスの難しさ どのようにSREを導入したのか Googleの最新SREを学んだ CUJを定義した SLIとSLOを定義した Cloud Monitoringでダッシュボードを作成した 役に立つかもしれない話 可

    SRE導入: システムを安定させる4000万円の魔法の壺 - MonotaRO Tech Blog
  • Googleでもやっている障害対応訓練の「Wheel of Misfortune」をやってみた。 - MonotaRO Tech Blog

    序文 こんにちは。MonotaROの伊藤です。 弊社では障害対応訓練の実施手法の一つであるWheel of Misfortune(略称:WoM)を実践しています。WoMの導入で、障害対応体制の強化を行うことができましたので、実施までの経緯や得られた学びなどを中心に紹介したいと思います 序文 運用担当者の負荷が高まり続ける問題 運用担当者=社歴が長いベテランエンジニア 運用のスケールアウト 障害対応訓練をやってみよう 訓練環境の準備の問題 訓練シナリオの問題 外部からの助け Wheel of Misfortuneとは 実施時の様子 シナリオ開始時の様子 モニタリング画面の表示 WoMとDiRT(Disaster in Recovery Training) 障害対応訓練をやってみた結果 準備時点で感じたメリット 手順書の不備を発見できたこと 障害が起こりかねない場所を考えるきっかけになったこと

    Googleでもやっている障害対応訓練の「Wheel of Misfortune」をやってみた。 - MonotaRO Tech Blog
  • 緩やかな自己開示による継続的チームビルディング - MonotaRO Tech Blog

    こんにちは id:yoichi22 です。今回はチームビルディングの取り組みについて紹介します。 チームビルディングと聞くと、ドラッカー風エクササイズなどのワークショップを思い浮かべる方が多いかもしれません。チームメンバーが互いのことを知る、知ってもらう機会を作り、組織としてよりうまく動けるようにメンバーの関係性を高めるのがチームビルディングであり、その活動はワークショップに限ったことではありません。 ワークショップの場だけでなく、日々の仕事をこなしながら、チーム内のコミュニケーションの中で互いのことを知り合い、継続的にチームビルディングが進んで行くのが望ましいのですが、リモートワーク環境では、リアルなオフィスで席が近くに固まっている環境ではなかった、コミュニケーションの制約が存在します。 トピックが限定される。具体的な案件の相談とか、明確に形になったトピックについてコミュニケーションを始

    緩やかな自己開示による継続的チームビルディング - MonotaRO Tech Blog
  • 66分かかる同期処理を10分以内に短縮せよ!~商品情報同期システムでの、処理速度と運用の改善~ - MonotaRO Tech Blog

    はじめに この記事では、モノタロウの基幹系を構成するシステムの一つである、商品情報管理システム(PIM:Product Information Management システム)の導入プロジェクトで、商品情報を基幹系と同期するシステム(商品情報同期機能)の性能や運用環境の改善を行った話をご紹介します。 背景 モノタロウの基幹系は、長年内製のシステムで支えられてきました。基幹系のシステムは、少数のWebアプリケーションと多数のバッチから構成されています。中でも商品情報の管理に関するシステムは、在庫や仕入先に関するシステムと一体化していて、商品情報に関する数多くのマスタメンテナンス画面を備えたやや複雑なシステムです(図1)。 図1 基幹系の概略図 当社のシステムは、もともと自分たちのビジネスに必要な機能を提供する手頃なパッケージ製品がなかったため、すべてを内製でまかなってきたという経緯があります

    66分かかる同期処理を10分以内に短縮せよ!~商品情報同期システムでの、処理速度と運用の改善~ - MonotaRO Tech Blog
  • デブサミ2022夏に登壇してきました! ――信頼性とアジリティを同時に上げろ!モノタロウのカナリアリリース導入 - MonotaRO Tech Blog

    ソフトウェアデリバリーチームの市原です。先週、社内の有志メンバー3人でISUCONに参加してきました。私自身は初参加でした。結果は予選突破ならずでしたが、それなりに手ごたえもあり、学びも多くあり、何よりめちゃくちゃ楽しかったです。 さて、2022年7月21日にオンライン開催されたDevelopers Summit 2022 Summer(主催: 株式会社翔泳社 CodeZine編集部) で登壇してきましたので、ご紹介します。 発表内容について 資料 質問に回答します Q プロジェクトの仕切り直しは、内部品質起因なのでしょうか?要件などの上流工程にも課題がありそうに思いました。 Q 経過観察の日数は何日間くらいですか? Q デプロイの自動化は何かツールを使いましたか? Q テストをすべて自動化することは、かなりテストコードの作成にも工数を要すると思いますが、それ以上にデプロイ頻度が多いのでメ

    デブサミ2022夏に登壇してきました! ――信頼性とアジリティを同時に上げろ!モノタロウのカナリアリリース導入 - MonotaRO Tech Blog
  • DMBOKを用いたアセスメントでデータマネジメントを加速させる - MonotaRO Tech Blog

    こんにちは、データ基盤グループの吉田(id:syou6162)です。データ基盤やデータマネジメントに興味を持たれている方はDMBOKを持っている / 読んだことがあるという方も多いのではないでしょうか。このエントリではDMBOK中に紹介されているデータマネジメント成熟度アセスメント(以下、アセスメントと省略)をモノタロウでどう活用しているかについて紹介します。 背景 初手: 自社のデータ基盤の歴史を振り返る アセスメントの実施 データ活用者 / システム提供者 / 意思決定者へのヒアリングの実施 アセスメントを実施した結果 最後に 背景 まず、モノタロウでなぜアセスメントを行なったかについて説明します。モノタロウは20年以上歴史のある企業であり、データ基盤自体も10年以上の歴史があります。単一事業ではあるものの、受注 / 売上 / 商品 / 在庫 / 顧客 / 行動履歴など、対象となるドメ

    DMBOKを用いたアセスメントでデータマネジメントを加速させる - MonotaRO Tech Blog
  • 300人超が参加する社内Techカンファレンスを爆盛り上げさせるためにやったこと ~ 実行委員会メンバーが振り返る ~ - MonotaRO Tech Blog

    イントロダクション こんにちは。サービスインフラ-Bグループの高野です。 今回は毎年春秋に開催している社内テックカンファレンス「ManabiCon(マナビコン)」とその実行委員会について紹介します。 今回の記事は実行委員会5名全員での執筆です。 イントロダクション 前回との違い 運営において、力を割いたポイント 当日までの事前準備 当日の運営 運営時の苦労 当日の盛り上がりの様子 今後について 前回との違い 今回のManabiCon(社内テックカンファレンス)は開催となってから3回目、プレ開催を含めると4回目の開催となりました。 これまではエンジニアリングマネージャーがほぼ一人で運営していましたが、今回からは実行委員会を組織することで開催時の負担を軽減しつつ、これまでより多くの方の学びを共有できる場を目指しました。 組織のリーダーレベルからのトップダウンから、エンジニア組織からのボトムア

    300人超が参加する社内Techカンファレンスを爆盛り上げさせるためにやったこと ~ 実行委員会メンバーが振り返る ~ - MonotaRO Tech Blog
  • 報酬確率分布の変化に応じたBandit Algorithm〜論文解説:A Linear Bandit for Seasonal Environments〜 - MonotaRO Tech Blog

    はじめに MonotaROとBandit Banditの着目理由 MonotaROにBanditを導入する際の課題 A Linear Bandit for Seasonal Environments 論文概要 背景と動機 提案手法 実験 まとめ おわりに はじめに はじめまして、データサイエンスグループの岡林です。普段はbanditなどの強化学習を用いてUIの最適化に取り組んでいます。 このブログでは最近MonotaROが注目しているbanditの概要を紹介しつつ、その中でも事業特性にあったbanditアルゴリズムにフォーカスし、論文を解説します。 MonotaROとBandit Banditの着目理由 MonotaROでは、商品単位レベルでのUI最適化に取り組んでいます。例えば、商品に応じて商品ページのコンテンツ文言などを変化させ、より適切なUIを提供することに取り組んでいます。具体的に

    報酬確率分布の変化に応じたBandit Algorithm〜論文解説:A Linear Bandit for Seasonal Environments〜 - MonotaRO Tech Blog
  • 全社員からデータ基盤への問い合わせが殺到して2人では捌けなくなったので仕組みで解決する話〜datatech-jp Casual Talks #2 登壇後記〜 - MonotaRO Tech Blog

    データ基盤グループの吉です。 今回は先日開催されたdatatech-jp Casual Talksで登壇した内容について補足も含め紹介します。 datatech-jp.connpass.com 発表資料はこちらです。 データ基盤に関わる問い合わせ対応を仕組みで解決する from 株式会社MonotaRO Tech Team www.slideshare.net 発表内容の背景(問い合わせ対応における課題) 発表したこと 発表の反響 最後に datatech-jpは主にデータエンジニアリングやデータ活用に関わる方が参加するコミュニティで、DWHやデータマネジメント、データエンジニアリングに関わる技術、ツールなどについて知見を共有したり、輪読会やLT会のようなイベントを実施しています。 オーガナイザーとして同社同僚の吉田(id:syou6162)が参加しています。 その中でCasual

    全社員からデータ基盤への問い合わせが殺到して2人では捌けなくなったので仕組みで解決する話〜datatech-jp Casual Talks #2 登壇後記〜 - MonotaRO Tech Blog
  • アサインは突然に -チームリーダーになって気づいたこと- - MonotaRO Tech Blog

    はじめに こんにちは。モノタロウで開発を担当している渡邉です。半年前に初めて開発チームのチームリーダーになり、スクラムを使った開発を行ってきました。今回はこれらの取り組みを振り返ってみようとおもいます。 はじめてのリーダー業って不安ですよね。どう行動すればよいのか、何を変えるべきなのか、うまくチームの目標を達成できるかなどなど・・・。私自身、そのような不安をかかえてチームリーダーになりました。 しかし、開発プロセスとしてスクラムを取り入れたことにより、想像していたよりスムーズにチーム運営を進めることができました。これから初めてリーダー職につく方や、スクラムをこれから取り入れてみようかなと思っている方の参考になれば嬉しいです。 アサインは突然に・・・ ある日のグループ連絡会で、当時のリーダーから突然の連絡がありました。 これまでのリーダーは経験豊富で、技術面でも行動面でもチームを率先してまと

    アサインは突然に -チームリーダーになって気づいたこと- - MonotaRO Tech Blog
  • モノリシックなアプリケーション開発から小さなアプリケーション開発へ(Software Design連載 2022年3月号:設計方針から変えていく、 モノリシックなアプリの過去と未来) - MonotaRO Tech Blog

    この記事の初出は、Software Design2022年3月号「設計方針から変えていく、モノリシックなアプリの過去と未来(最終回)」で、加筆修正されています。過去の連載記事は以下を参照ください。 第1回 Software Design連載 2021年8月号 Python製のレガシー&大規模システムをどうリファクタリングするか - MonotaRO Tech Blog 第2回 Software Design連載 2021年9月号 「テストが無い」からの脱却 - MonotaRO Tech Blog 第3回 Software Design連載 2021年10月号 スナップショットテストの可能性を追求する - MonotaRO Tech Blog 第4回 Software Design連載 2021年11月号 Robot FrameworkでE2Eテストを自動化する - MonotaRO Te

    モノリシックなアプリケーション開発から小さなアプリケーション開発へ(Software Design連載 2022年3月号:設計方針から変えていく、 モノリシックなアプリの過去と未来) - MonotaRO Tech Blog
  • Nativeアプリでの膨大なテスト工数を開発と運用によって75%削減した話 - MonotaRO Tech Blog

    はじめに スマートフォンアプリチームについて リリースサイクルにおける課題 解決に向けた取り組み①:自動テスト導入 解決に向けた取り組み②:運用面での見直し よくなった点 学び おわりに はじめに こんにちは、モノタロウのスマートフォンアプリチームに所属している坂江です。 スマートフォンアプリを開発する際、UIテストってとても大変ですよね。 UIの開発や対象OSに比例して増える確認項目 マニュアル作業での確認により膨れ上がるテスト工数 etc. UIテストが重要であることは分かっているのですが、テストを重要視するあまり工数が膨れ、肝心な開発や新しい取り組みへの時間がなかなか確保できなくなってしまいとても困っていました。 記事では、モノタロウのスマートフォンアプリ開発において「膨大なテストをいかに効率化し、リリースサイクルを向上させていったか」をご紹介します。 ここでのテストとは主にUI

    Nativeアプリでの膨大なテスト工数を開発と運用によって75%削減した話 - MonotaRO Tech Blog
  • Cron→Rundeckに乗り換えた話 - MonotaRO Tech Blog

    こんにちは。MonotaROで商品管理や受発注システムの開発を担当している中尾です。 この度、これまでcronで実行していたジョブに対してRundeckを導入し、ジョブのスケジュール管理を効率化することができましたので、導入にあたって苦労した点とその解消方法を中心に紹介いたします。 Rundeck導入の背景 Cronの限界を感じた 過去にも導入しようとしたが・・・ Rundeck導入において苦労した点 Rundeckが落ちた場合の対応の検討 GitでのRundeckジョブのバージョン管理 導入してよかったこと 複数のサーバーに跨ってジョブフローが組めること Cron式が使えること 重複起動制御ができること まとめ Rundeck導入の背景 Cronの限界を感じた MonotaROでは「注文を倉庫に連携する」、「商品の発注を自動で行う」といった様々なバッチ処理が、細かいものも含めると1日数千

    Cron→Rundeckに乗り換えた話 - MonotaRO Tech Blog
  • cron から Rundeck に乗り換えると決めた話 - MonotaRO Tech Blog

    こんにちは、鈴木です。 cron でバッチの実行制御を行っている環境に、Rundeck というジョブスケジューラの導入を進めています。cron をやめようとした理由や、Rundeck を検証した結果をお話しします。 cron をやめる cron の安心感 cron をやめる理由 ジョブスケジューラを選定する ジョブスケジューラの一般的な特徴 機能面 構成面 Rundeck を選んだ理由 具体的な選定基準 最後に cron をやめる cron の安心感 cron は十分に枯れている、実績のあるソフトウェアです。安定して動き、情報も世の中に多くあります。何かを定期実行するときに、とりあえず cron を選んでおけば大丈夫である場合も多いです。 cron をやめる理由 今回 cron をやめようと考えた理由は以下の通りです。 ジョブ数が多くて辛くなってきたから。 権限管理やエラー時のリトライ、監

    cron から Rundeck に乗り換えると決めた話 - MonotaRO Tech Blog
  • データ活用視点に立つ「指標」のエンジニアリング 〜DataOps Night#1 登壇後記〜 - MonotaRO Tech Blog

    データサイエンスグループでエンジニアやっています 竹野です。 日は先日登壇したDataOps Nightについて参加報告させていただきます。 DataOps Nightについて finatext.connpass.com 「データガバナンス」や「アナリティクスエンジニアリング」、「DataOps」といったキーワードは近年注目の大きい分野となり、イベントも盛んに行われるようになりました。 DataOps Nightもその一つで、そのテーマに「データ品質の向上に取り組むエンジニアを集めて知見を共有する勉強会」を掲げています。 データを溜めるだけではなく活用するところにまで踏み込んでいくためには、解決すべき問題が数多く存在しています。 この知見を共有しようというのがこの勉強会の主旨です。 登壇するにあたってお声がかかった際に悩んだのは、 私自身はモデル開発や施策レポーティングといった形でデータ

    データ活用視点に立つ「指標」のエンジニアリング 〜DataOps Night#1 登壇後記〜 - MonotaRO Tech Blog
  • あえて予測の更新頻度を落とす| サプライチェーンの現場目線にたった機械学習の導入 - MonotaRO Tech Blog

    モノタロウでデータサイエンティストをしております、朝倉と申します。今回は、モノタロウのサプライチェーンを支えるシステムの1つである需要予測に、機械学習を現場導入した際のお話をしようと思います。 はじめに モノタロウでの発注の仕組みと需要予測 機械学習を導入する取り組みの開始 機械学習の現場導入で起きた問題点① - 発注量が増える 問題点① - 発注量が増えることへの解決策 モデルの切り替えの際に少しずつ更新できる仕掛けに あえて予測の更新頻度を落とす 機械学習の現場導入で起きた問題点② - 結果の解釈が難しい 問題点② - 結果の解釈が難しいことへの解決策 まとめ これからの展望 はじめに モノタロウでは1800万点以上の商品を取り揃えており、50万点近くの商品が在庫化されています。また、11年連続で売上が20%以上成長しており、売上増に伴い物流量も年々増加しております。規模の大きさや複雑

    あえて予測の更新頻度を落とす| サプライチェーンの現場目線にたった機械学習の導入 - MonotaRO Tech Blog
  • Software Design連載 2022年2月号 大規模Webアプリケーションの開発環境をモダナイズする - MonotaRO Tech Blog

    こんにちは。モノタロウの八木(t_yagi)です。 モノタロウのECシステムは創業から20年以上ずっと動き続けており、絶え間なくビジネスを支え続けています。 その間、周囲のIT技術も大きく進歩してきました。 そんな中、開発者が増えたり機能も拡張され続けた結果、当初はさほど問題にならなかった開発に関する課題が浮き彫りになってきました。 今回はそんなレガシーな開発環境にモダンなIT技術を取り入れることで「当時は出来なかったことを現代の技術で実現する」を書きました。 流行りのモダンな技術がイケイケだから乗り変えるといったような輝かしいものではなく、長年積まれ続けてきた課題が現代の技術だから解決できたという時代の恩恵にうまく乗れるかを率直に記事にしています。 どうするとデメリットを抑えながらメリットを得ることができるか読んでいただける人に少しでも感じ取っていただければ嬉しいです。 サーバアプリの開

    Software Design連載 2022年2月号 大規模Webアプリケーションの開発環境をモダナイズする - MonotaRO Tech Blog