EC構築に必要な多くの事業を展開。高い製品力と開発力によって事業の好循環を生み出します。業界最大級1,000以上の機能を搭載。自社開発したプラットフォームにより高品質なサービスを提供します。導入までの開発スピードの早さ、開発精度の高さを提供しているエンジニアの今をお伝えします。W2株式会社のミッション・ビジョン・バリューをご紹介します。EC構築に必要な多くの事業を展開。高い製品力と開発力によって事業の好循環を生み出します。業界最大級1,000以上の機能を搭載。自社開発したプラットフォームにより高品質なサービスを提供します。導入までの開発スピードの早さ、開発精度の高さを提供しているエンジニアの今をお伝えします。W2株式会社のミッション・ビジョン・バリューをご紹介します。中身に入りたいところですが、まずはメンバーの紹介を少ししたいと思います。末武さんは、W2で2年目のエンジニアです。パッケージの機能追加や、バグの対応などを行っています。全体の感想アジャイル開発手法の先駆者である二人の著者によって1999年に書いた書籍で、かなり古い本だったので、今とは事情が違うことや古いツールなどが紹介されているのではないかなーと思い読み進めていましたが、現在のシステム開発においても全く遜色なくためになりました。初見ではなんだか難しい言葉ですが、要は「システムは次第に複雑で無秩序になっていってしまうよ」ということらしいです。新たな仕様、機能の追加などでシステムを弄っていくと、当初は美しかったのに次第にソースにゴミがたまりメンテナンスがしづらくなっていく、とのこと。「割れた窓を放置すると町がどんどん汚くなる」割れ窓理論を引用して、システムでも同様のことが起こらないように割れた窓はこまめに直して行こう、という教訓が書かれていますいます。・DRY原則・直交性・デメテルの法則システム開発の有名な原則についてこの本では度々言及されています。DRY原則(すべての知識はシステム内において、単一、かつ明確な、そして信頼できる表現になっていなければならない)について著者は「信頼性の高いソフトウェアを開発して、開発そのものを簡単に理解したりメンテナンスできるようにする唯一の方法」と語り、最も重要な原則の一つと説いています。ソースコードの二重化だけでなく、仕様やデータベーススキーマの二重管理や、同じ作業を二度以上やることもDRY原則に反し、情報のマスタはひとところに置き、各所で使用するときはコードジェネレータなどでテストやドキュメントを自動生成する手法が紹介されています。なんとなくの感覚で理解した気になっていたシステム開発の原則について、実例を交えながら嚙み砕いてくれているので、私はこの部分が一番面白くて印象に残っています。・プレインテキスト・メタプログラミングシステムで変更が起きそうな部分は、ソースコードとは別に管理し、プログラムではその情報を読みだすようにしようというアプローチの紹介。具体的な情報はXMLなどのプレインテキストに記述し、コードには抽象的なロジックのみを書くことで、メンテナンスをしやすくしようというものですね。人間が読んで理解できるプレインテキストにビジネスロジックを記載しておくことで、仕様の変更や新たなビジネス要求に対して柔軟に対応ができることが説明されています。・不可解なパズルを解く「問題の本質を見極めるように常に注意しましょう」教訓や心構えです。問題を難しくしてない?」という現象のことを「不可解なパズル」と表現しています。私も大規模な開発をしているといつのまにか、本質的に問題解決には必須ではない部分に躍起になって時間を取られてしまうことが時々あります。いった時に、一度冷静になって「その手段でなければ解決はできないのか」「些末な問題に固執してしまっていないか」を、自分に問いただすようにしようということです。さいごにテクニック集というよりは、教訓や抽象的な心構えが詰まった本なので、一度読んだだけでは理解できない部分も多く、時間をおいて読み返すとまた新しい発見がありそうです。