لديك فكرة منتج لطرفية تداول، وميزانية، ولا فريق هندسي. وتوظيف فريق والتعاقد مع شريك ليبنيها ليسا سعرين للشيء نفسه: فهما يوزّعان الوقت والمعرفة والخطر بطرق مختلفة. وهنا ما يحاسبك عليه كل مسار، وما يجب أن يكون في التسليم، وماذا تملك يوم يتوقف العمل.
لديك فكرة طرفية تداول، وميزانية لها، ولا فريق هندسي. والسؤال الذي يلي يُصاغ دائمًا تقريبًا كمقارنة أسعار: كم يكلّف توظيف مهندسين، وكم يكلّف أن تبني شركةٌ الشيء وتسلّمه لك.
هذا التأطير يخفي القرار. فالمساران ينتهيان بكود يعمل. والفرق بينهما في متى توجد أول نسخة صالحة للاستخدام، ومن يفهم النظام بعد سنة، وماذا يحدث حين يرحل شخص أساسي، وماذا تملك إن توقف العمل.
الإجابة القصيرة: قارن المسارين على أربعة أمور لا على السعر بالساعة - الزمن حتى نسخة تستطيع وضعها أمام متداول، وأين تستقر معرفة النظام، وما الذي ينجو من رحيل، وماذا تملك يوم يتوقف العمل. والمسار الذي يفوز بالسعر ويخسر في الأربعة كلها هو الأغلى.
طرفية التداول ليست نظامًا واحدًا. هي مسار بيانات سوق، ومسار إدخال أوامر، وفحوص مخاطر قبل التداول، واتصال بمنصات التداول أو الوسطاء، وحالة مراكز وحسابات، وشاشة عليها أن تواصل إعادة الرسم بينما يتحرك الدفتر، ومكتب خلفي يطابق ذلك كله بعد الإغلاق.
حين توظّف، فأنت لا تشتري ذلك النظام. أنت تبني المؤسسة التي ستنتجه، ومعرفة كيف يعمل تبدأ من الصفر وتتراكم داخل رؤوس أشخاص توظّفهم. وهذا أصل ما داموا باقين، وهو الخطر كله حين لا يبقون.
حين تتعاقد مع شريك، فأنت تشتري نظامًا مع تاريخ قرارات موجود أصلًا في مكان آخر. تبدأ المعرفة من نقطة أعلى، وتقع خارج شركتك في اليوم الأول. أما انتقالها إلى الداخل يومًا ما فهو بند في العقد وممارسة عمل، لا شيء يحدث من تلقائه.
من المفيد التحديد الدقيق لما تعنيه معرفة النظام هنا، لأنها ليست الكود المصدري:
لا شيء من ذلك يسكن مستودعًا تلقائيًا. بل يسكن شخصًا إلى أن تُجبره عملية على الكتابة، سواء كان ذلك الشخص موظفك أو مهندسًا لدى الشريك.
أمام مسار التوظيف طابور لا تزيله الميزانية. تكتب وصف وظيفة تستطيع الدفاع عنه تقنيًا، وتبحث في سوق يندر فيه مهندسو التداول، وتقابل على مهارات لا يستطيع أحد داخل شركتك تقييمها بعد، وتنتظر انقضاء مهل الإشعار، ثم تقضي المرحلة الأولى تشاهد فريقًا جديدًا يتجادل حول معمارية بدل أن يبنيها.
مسار الشريك يبدأ من النطاق لا من البحث عن الناس، ومن هنا يأتي فارق الوقت. وما لا يزيله هو العمل الذي لا يقوم به سواك: تحديد الغرض من الطرفية، وأي الأدوات والمنصات تهم أولًا، ومن هم أول المستخدمين.
وجزء من الجدول الزمني لا ينتمي إلى أي من المسارين. فهذه البنود تسير بإيقاعها الخاص أيًّا كان من يكتب الكود:
فالمقارنة الصادقة ليست سباقًا بين تاريخَي تسليم. إنها سؤال عن أي المسارين يضع أمام العمل أشياء أقل لا تملك التأثير فيها، وأيهما يبدأ أبكر بالأجزاء التي تملك التأثير فيها.
اطرح السؤال نفسه على المسارين. إن توقف المهندس الذي كتب معالج بيانات السوق عن العمل يوم الاثنين، فماذا يحدث يوم الثلاثاء، وماذا يحدث في الربع الذي يليه.
في فريق صغير وظّفته أنت، تتوقف الإجابة عادةً على اسم واحد. فالفرق المبكرة تركّز المعرفة بحكم تصميمها: شخص يملك المسار الساخن، وآخر يملك الاتصال، وخارطة الطريق تعيد ترتيب نفسها بهدوء حول من بقي. أما في ترتيب مع شريك فتتوقف الإجابة على أن يكون أكثر من مهندس هناك قد قرأ الكود، وعلى أن ينص عقدك على ذلك.
لا أحد من البنيتين آمن بذاته. فالشريك الذي يضع مهندسًا واحدًا على حسابك مكشوف تمامًا كفريق داخلي من شخصين، والدفاع واحد في الحالتين: معرفة تُكتب وهي تُنتَج، لا تُعاد بناؤها بعد فوات الأوان.
اختبار قبول يصلح للمسارين: خذ مهندسًا لم يرَ النظام قط، وسلّمه التوثيق وجهازًا نظيفًا، واطلب منه تشغيل الطرفية في بيئة اختبار ووضع أمر. وكل ما يضطر إلى سؤال إنسان عنه معرفةٌ لا تملكها بعد.
كلمة التسليم تغطي حدثين مختلفين جدًا. أحدهما نقل ملفات. والآخر نقل القدرة على المواصلة دون من بنوا النظام، والثاني وحده يستحق الدفع.
اكتب الثاني في النطاق كقائمة مخرجات ملموسة، لكل واحد منها اختبار قبول ملحق به. والقائمة المعقولة تبدو هكذا:
التسليم الذي لم يُجرَّب قط خطة لا مُخرَج. جرّبه في منتصف البناء لا بعد الفاتورة الأخيرة، والتجربة بسيطة: مهندسوك ينشرون تغييرًا ثم يتراجعون عنه بينما يراقب من كتبوا النظام.
الملكية سؤال منفصل عن التسليم، ويُحسم في العقد قبل بدء العمل لا يُكتشف في نهايته. وإجابتنا نحن جملة واحدة، ولا نختصرها في أي نسخة من أي وثيقة.
يحتفظ العميل بالملكية الكاملة للمنتج وللكود، باستثناء مكوّناتنا القابلة لإعادة الاستخدام. وهذا الاستثناء هو الموضع الذي يُقرأ بتمعّن مع أي شريك، ونحن منهم: اسأل ما هي المكوّنات القابلة لإعادة الاستخدام، وبأي شروط تبقى تستخدمها، وهل يُبنى النظام دون أي شيء لا تستطيع إعادة بنائه بنفسك، وماذا يحدث لتلك المكوّنات إن توقفتما عن العمل معًا.
يُطرح السؤال عادةً على أنه ثنائي - وظّف فريقًا أو سلّم الأمر كله لغيرك. وعمليًا تقع معظم المشاريع بين هذين القطبين، ويُسمح للموقع أن يتغيّر مع نضج النظام.
ثلاث صيغ: تنفيذ كامل، أو فريق مخصّص، أو مهندسون مدمجون في فريقك. هكذا نصف جانبنا نحن، والفرق بين الثلاث ليس الفاتورة - بل من يمسك الخطة، ومن يمسك الأولويات، ومن يُحاسَب على النتيجة.
هذه النقطة الأخيرة تذيب معظم السؤال الأصلي. فأقوى صيغة لمسار الشريك تخطط لفريقك أنت من البداية: توظّف في مواجهة نظام قائم بالفعل، وتستند مقابلاتك إلى الكود الذي سيصونه المرشح، وأول ما يقرأه الموظف الجديد سجل قرار لا مستودع فارغ.
مقارنة السعر بالساعة أقل الأرقام نفعًا في هذا القرار، لأن المسارين يحاسبانك بوحدات مختلفة. ضع القائمتين جنبًا إلى جنب واحسب كلفتهما بصدق.
مسار التوظيف يحاسبك على:
مسار الشريك يحاسبك على:
ثم احسب كلفة المخارج، فلكل مسار مخرج. مسار التوظيف ينتهي بتقليص فريق بنيته، وتخرج المعرفة في تلك الرؤوس. ومسار الشريك ينتهي بتسليم إما جرّبته وإما لم تجرّبه، والمسافة بين هاتين النهايتين هي خطر المسار.
قبل أن توقّع أي شيء، مرّر الخيارين على سؤال واحد: لو توقف هذا يوم الجمعة، فماذا سيبقى بأيدينا يوم الاثنين. أجب عنه بمخرجات ملموسة - مستودعات، وبيئات قابلة لإعادة الإنتاج، وتوثيق، وأشخاص يستطيعون إعادة بناء النظام منها - لأن النوايا لا تنجو من رحيل، والمخرجات تنجو.
ما تستطيع amBrain إثباته علنًا: نبني البرمجيات منذ 2019 من يريفان، أرمينيا، بمسارات ساخنة مكتوبة بلغة Rust، وبنينا طرفية التداول Spectre Trade، وبورصة مصغّرة بنيناها تعمل في بيئة الإنتاج على استضافة MOEX المشتركة. وإن كنت توازن بين التوظيف وشريك تقني من أجل طرفية خاصة بك، فخذ قائمة التسليم أعلاه إلى المحادثة الأولى واطلب ممن يجلس أمامك، ونحن منهم، أن يجيب عنها سطرًا سطرًا.
أحضر بنيتك الحالية وسيناريو الفشل الذي يقلقك، وسنراجعه معًا خلال نصف ساعة.