リファクタリング

効率的にリファクタリングを進めるための下準備教えます

はじめに ※ (2024/03/14 16:33) 「インテグレーションテストの気軽な実行・変更ができない」節にて、データのクリーンアップを teardownで行うよう修正 EC開発-B グループの岡崎と EC開発-A グループの菊川です。2人とも普段は MonotaRO の EC サイトの開発…

まずはドメインごとにデプロイ可能とする ~ドメイン間の依存が複雑なモノリスのモダナイズに向けて~

こんにちは。コアシステムエンジニアリング部門で受注システムの開発を担当している中尾です。 今回はモノタロウの基幹システムのモダナイゼーションの取り組みについて紹介します。 モノタロウ社内の基幹システムにはいくつか存在しておりますが、中でも古…

リファクタリングを文化にする 〜組織が技術的負債と向き合うワークショップ〜

皆さんこんにちは。 CTO-Office の香川とEC開発-Bグループの竹原です。 11/28に 和田卓人氏(id:t-wada)を講師としてお招きしてテストとリファクタリングのためのワークショップを開催いたしました。 技術者正社員のうちプログラミングをすることの多いメンバ…

リファクタリングをする際にソースコードの設計からはじめてはいけない

どうも、レコメンド商品のシステム開発をしている野川と申します。 私は、2021年にモノタロウに新卒入社し、2022年5月からレコメンド商品の開発に関わり始めました。 モノタロウのレコメンド商品は、下の図の①~④の流れでクライアントサイドで表示しています…

66分かかる同期処理を10分以内に短縮せよ!~商品情報同期システムでの、処理速度と運用の改善~

はじめに この記事では、モノタロウの基幹系を構成するシステムの一つである、商品情報管理システム(PIM:Product Information Management システム)の導入プロジェクトで、商品情報を基幹系と同期するシステム(商品情報同期機能)の性能や運用環境の改善…

Nativeアプリでの膨大なテスト工数を開発と運用によって75%削減した話

はじめに スマートフォンアプリチームについて リリースサイクルにおける課題 解決に向けた取り組み①:自動テスト導入 解決に向けた取り組み②:運用面での見直し よくなった点 学び おわりに はじめに こんにちは、モノタロウのスマートフォンアプリチームに…

Software Design連載 2021年10月号 スナップショットテストの可能性を追求する

こんにちは、辰巳です。 第3回は「スナップショットテスト」をテーマにお送りします! 「組織が拡大する中で、十分な設計情報がない状況でも、複雑に改修が積み重なったソフトウェアをいかに安全かつ正確に変更できるか?」 本記事では、数多くの大幅なシス…

Software Design連載 2021年9月号 「テストが無い」からの脱却

こんにちは、鈴木です。 「テストが無い」状態を脱却しました。 「いつの時代かよ!」と突っ込まれるかもしれませんが、モノタロウは創業から 20 年ほど EC をやっています。昨日書いたコードも、15 年前に書いたコードも、元気にビジネスを支えています。 …

Software Design連載 2021年8月号 Python製のレガシー&大規模システムをどうリファクタリングするか

Software Design連載開始 ※ (2021/09/02 08:55) 「Pythonを用いて開発を始めたのが2003年」を「Pythonを用いて開発を始めたのが2002年」に修正 こんにちは。金谷です。 このたび、モノタロウにおけるPython大規模開発に関する取り組みを、技術評論社様で発刊…