سيختلف المهندسون الأذكياء بشأن العمارة البرمجية، وهذا صحي. وظيفة قائد الفريق هي تحويل الخلاف إلى قرار جيد وفريق ملتزم، وليس الفوز بالجدال. معظم النزاعات تتلاشى بمجرد اتفاق الجميع على المعايير.
عملية حلها
1. AGREE on the criteria first — what are we optimizing for?
(scale, simplicity, time-to-ship, team familiarity)
2. Let each side make its STRONGEST case — steelman, don't strawman
3. Look for DATA — spike it, benchmark it, prototype it
4. If still tied — the TL decides, and explains why
5. DISAGREE AND COMMIT — once decided, everyone rows together
مثال عملي
يجادل مهندسان حول microservices مقابل monolith. تعيد صياغة السؤال: "ما الذي نحسّنه خلال السنة القادمة؟" الإجابة، الشحن السريع مع فريق صغير، تجعل monolith الخيار الواضح. كان الجدال في الواقع حول أهداف غير معلنة.
