انواع شركات البرمجيات
هناك فروق بين كل شركة وأخرى وعلى كل مبرمج ان يفهم أنواع الشركات وطباعها وما هو مناسب له وما هو غير مناسب استناداً الى الخبرات التي تحصل عليها من سنوات الخبرة و من خبرات الزملاء القدامى في المجال وكيفيه تطوير هذه الخبرات والتنقل من نوع لأخر من هذه الشركات،.
وعلى الشركات ان تفهم طبيعة عملها ورؤيتها وأهدفها بشكل جيد وما يبحثون عنه في موظفيها وفى المبرمجين وقياس الخبرات المطلوبة حسب نوعية الشركة.
هذا التصنيف من واقع خبراتى ومختلف عن التصنيفات الاخرى للشركات هذا التصنيف مبنى على طريقه العمل وليس على حجم الشركه او مصدر التمويل
لا يوجد نوع افضل من نوع ولكن لكل نوع من أنواع الشركات طريقته فى التعامل مع البرامج وبيئة العمل والإجراءات والاكواد والمتطلبات والمبرمجين وكل نوع له أهدافه واستراتيجياته
النوع الاول: Small Software House
لا يقصد بكلمه smallحجم الشركة اوعدد الموظفين بل يقصد حجم المشاريع وطريقه العمل على هذه المشاريع، فقد تكون مشاريع قصيره المدة من اسبوع او اقل الى ثلاث اشهر تقريبا...
هذه الشركات تهتم بعامل الوقت في المرتبة الاولى فهي تعتمد على انتاج كميه كبيره من المشاريع في اقل وقت على حساب الجودة لإنها بعد تسليم المشروع للعميل ترفع مسؤوليتها عن المشروع ولا تهتم بـمراحل وإجراءات توثيق المشروع والاكوادdocumentation ،وغالبا ما تستخدم هذه الشركات البرامج الopen-source مثل (,….wordpress, magento, drupal) لتقليل وقت التطوير، ويقل في هذه الشركات فكرة العمل كفريق في مشروع واحد لإن غالياً ما يكون كل مبرمج مسئول عن مشروع او اكثر. ويجب على هذه الشركات اختيار مبرمجين زو سرعة عاليه جدااا وحوده معقوله ولاكن لا يهتمون بالتفصيل البرمجيه الدقيقه كجوده الكود وسرعه الكود
النوع الثاني
Product based Companies
في هذا النوع يكون إعتماد الشركة على مشروع معين كـمنتج أو كخدمة خاصة من الشركة، ويقوم العاملون والمبرمجون على هذا المشروع فقط، مثال لذلك شركات وخدمات مثل (uber ,careem ,wuzzuf , veseeta ,facebook ,linkedin )
وتهتم هذه الشركات بعامل الجوده في المرتبة الاولى قبل الوقت، فهم يهتمون بكل كبيرة وصغيرة، فمن الممكن دراسة تطوير وتصميم صفحة واحده فى شهور حتى يصلوا إلى افضل طريقه للقيام بتقديم الخدمة الى العملاء من خلالها، وتحتاج هذه الشركات الى مبرمجون ذو جودة عالية جداً وخبرة فى مجالات الخوارزميات(algorithm) هياكل البيانات(data structure) وكل الدارسات الاكاديمية التي تنتج افضل واسرع عناصر برمجية واكثر استفادة من المعلومات والموارد، وتهتم هذه الشركات أيضاً بمراحل إجراءات توثيق المشروع والاكواد documentation وذلك لأنها من العناصر القياسية ولإنها تقوم بتجديد وتطوير الاكواد بشكل مستمر وبلا انقطاع وتستخدم هذه الشركات agile كطريقه فى انهاء العمل بشكل جيد ومستمر تتطلب هذه الشركات مبرمجين اصحاب جوده عالية وطريقة كتابه اكواد مفهومة ومنظمة وشرح للاكواد منظم ومفهوم حتى يسهل التعديل فى اى وقت
النوع الثالث
Project-Base Companies
هى الشركات التي تعمل على مشاريع كبيره وغالبا تكون من شركات حكومية او شركات خاصة كبيره،
مده المشروع قد تكون من ثلاثة أشهر إلى سنه أو أكثر، ومن ضمن هذه المشاريع، المشاريع التي يتم إنشاؤها بغرض بيعها أكثر من مرة لأكثر من عميل، وتميل هذه الشركات الى الوسطية والاعتدال في الجودة quality مع الاعتدال في وقت التنفيذ تعمل هذه الشركات بطريقه الوتر فول waterfall اى تقوم بجميع عمليات التحليل والتصميم قبل بدايه المشروع لمعرفه التكلفة الفعليه ومعرفت الوقت قبل الموافقه على المشروع يتطلب مطورين اصحاب سرعه متوسطه وجوده متوسطه