بدأت مثل كثيرين: مطوّر ينتظر طلبًا، ينفّذه، يسلّمه، ثم ينتظر الطلب التالي. كان الدخل مرتبطًا بعدد الساعات التي أجلس فيها أمام الشاشة، وكان كل مشروع يبدأ من الصفر تقريبًا. المشكلة لم تكن في العمل نفسه، بل في أنه لا يتراكم.
نقطة التحوّل جاءت حين لاحظت أنني أعيد بناء الأشياء نفسها: إدارة مستخدمين، صلاحيات، فواتير، تقارير. في كل مرة بصياغة مختلفة قليلًا. فسألت نفسي سؤالًا بسيطًا: لماذا لا أبني هذه النواة مرة واحدة بشكل متين، ثم أبني فوقها؟
المنتج يختلف عن المشروع في شيء جوهري: المشروع ينتهي، أما المنتج فيكبر. كل ساعة تضعها في المنتج تبقى تعمل لصالحك بعد سنوات. لكن ثمن ذلك أن تتحمّل المسؤولية كاملة: لا يوجد عميل يخبرك بما يريد، أنت من يقرر ويتحمّل نتيجة القرار.
أصعب ما واجهته لم يكن تقنيًا. كان تعلّم قول «لا». رفض طلب تخصيص يخدم عميلًا واحدًا ويكسر المنتج للبقية. المنتج الجيد يُبنى بما تستبعده، لا بما تضيفه فقط.
لو عدت بالزمن، كنت سأبدأ أبكر بخطوة واحدة: أن أختار مجالًا أعرفه جيدًا وأبني فيه أداة صغيرة تُحلّ مشكلة واحدة حلًّا ممتازًا، بدل محاولة بناء نظام يفعل كل شيء منذ اليوم الأول.
هناك فرق آخر لا يُقال كثيرًا: في المشاريع تقيس نجاحك بالتسليم، وفي المنتجات تقيسه بالاستخدام. عميل استلم نظامًا ولم يفتحه بعد أسبوعين هو فشل، حتى لو وقّع على محضر الاستلام. لذلك تغيّرت مؤشراتي: كم شركة تسجّل الدخول يوميًا، كم عملية تُنفَّذ داخل النظام، وأين يتوقّف المستخدمون.
هذا التحوّل فرض بناءً تقنيًا مختلفًا. النظام الذي يخدم عميلًا واحدًا يمكن أن يحتمل اختصارات؛ أما النظام الذي يخدم عشرات الشركات على نواة واحدة فيحتاج إلى عزل بيانات صارم، وترقيات تمرّ على الجميع دون كسر، وسجلّ أخطاء يخبرك بالمشكلة قبل أن يتصل بك العميل.
الجانب المالي تغيّر أيضًا. دخل المشاريع متقطّع ومرتبط بموسم؛ دخل المنتج تراكمي لكنه بطيء في البداية. السنة الأولى تبدو خسارة مقارنة بالعمل بالمشاريع، والسنة الثالثة تُظهر الفرق كاملًا. من يقيس بعد ثلاثة أشهر سيتوقّف قبل أن يرى النتيجة.
خلاصة ما تعلّمته: ابنِ شيئًا يبقى يعمل حين تنام. لا يعني هذا ترك خدمة العملاء، بل أن تحوّل ما تكرّره في كل مشروع إلى أصل تملكه، ثم تبيع الخبرة حوله بدل أن تبيع الوقت وحده.
