كيف اخترت كومة التكنولوجية مع أساس للمستقبل

ابدأ بكل بساطة ، ولكن ليس على حساب المزيد من النمو.

صورة

بعد أن بدأت حياتي المهنية كمهندس برمجيات ، أصبحت لاحقًا رائد أعمال في مجال التكنولوجيا وأسست شركتين لشركة SaaS استقطبت أكثر من 100 مليون دولار من رأس المال الاستثماري لشركة Silicon Valley.

تكمن المشكلة في أن هذه الشركات تتطلب استثمارات ضخمة من أجل إنشاء أنظمة برمجية معقدة متعددة المستفيدين ، والتي تتطلب أيضًا متخصصي المبيعات والتنفيذ للترويج لعملهم ودعمهم باستمرار. لذلك ، في عام 2017 ، قمت بتأسيس 8base .

في قلب 8base توجد فكرة أن هناك طلبًا كبيرًا على المنصات والأدوات التي تعمل على تسريع وتطوير البرامج وترخيصها. توفر 8base بيئة برمجية كاملة ومفهومة ، والهندسة المعمارية لدينا مهمة بشكل لا يصدق. لماذا؟ الكومة التكنولوجية مصممة ليس فقط لنا ، ولكن أيضًا لعملائنا.

يتمتع فريقنا بخبرة واسعة في العمل في شركات SaaS ، ولدينا معتقدات واضحة ترشدنا في اختيار حلولنا المعمارية. هؤلاء بعض منهم:

- أولاً ، يجب أن تكون واجهة برمجة التطبيقات (API-أولاً) - البنية التحتية للحوسبة والبيانات ومنطق العمل من جانب الخادم وتمثيلها باستخدام واجهة برمجة تطبيقات ديناميكية واحدة.

- المرونة - يجب أن تكون البنية التحتية للحوسبة خدمة قابلة للتخصيص بالكامل لتطبيق قيد التشغيل.

- مرونة تطوير الواجهة الأمامية . يعد البرنامج فنًا في هذه الأيام أكثر من كونه العلوم والشركات تعبر عن نفسها من خلال التكنولوجيا. يجب أن يكون المطورون قادرين على تصميم وإنشاء واجهات المستخدم في أي نمط مع عوامل شكل مختلفة.

نضع هذه الأفكار في قلب 8base.

8base التكنولوجيا المكدس


بادئ ذي بدء ، اخترنا Amazon Web Services (AWS) لتكون البنية التحتية للحوسبة لأنها الشركة الرائدة في السوق في مجال الحوسبة السحابية. نستخدم العديد من خدمات AWS:

- AWS Lambda للحوسبة بدون خادم (Serverless). تستخدم التطبيقات المصممة باستخدام 8base أيضًا Lambda. Serverlessness هو نموذج حوسبة جديد نسبيًا ينفذ التعليمات البرمجية استجابة للأحداث ، ويقوم تلقائيًا بإدارة موارد الحوسبة اللازمة. تلبي Lambda احتياجات الحوسبة بنفس طريقة شركة الطاقة: تقديم خدمات مخصصة وقابلة للقياس. هذا يقلل من الحاجة إلى مهندسي DevOps ، الأمر الذي يؤدي بدوره إلى انخفاض التكاليف.

- AWS Aurora MySQL و MongoDB Atlas Database. كل منها عبارة عن قاعدة بيانات كخدمة ، مما يجعلها سريعة وموثوقة ومتسامحة مع الأخطاء وقابلة للإدارة وقابلة للتطوير. توفر 8base أيضًا Aurora MySQL مخصصة لكل مساحة عمل مطور.

- خدمة لتخزين الكائنات AWS S3 (خدمة التخزين البسيط) . 8base يحل مشكلة توفير الوصول إلى S3 لمساحات العمل وتطبيقات الواجهة الأمامية للعميل. هذا يجعل من السهل تخزين المستندات والصور وملفات الصوت والفيديو وأكثر من ذلك بكثير. يستخدم 8base أيضًا FileStack بحيث يمكن للمطورين توصيل حساباتهم السحابية والحسابات الاجتماعية وغيرها بسهولة. لقد اخترنا S3 لأنها غير مكلفة وسريعة وموثوقة وغير محدودة في حجم التخزين.

- يتم استخدام AWS API Gateway بواسطة محرك 8base ومتاح افتراضيًا لتطبيقات العميل المبنية على 8base كخدمة لإنشاء ونشر وتأمين واجهات برمجة تطبيقات REST و WebSocket.

جعلت 8base جزء محرك GraphQL API القوي بشكل لا يصدق من المنصة. GraphQL هو معيار تم تطويره بواسطة Facebook وأصبح مفتوح المصدر في عام 2015. إنها نقطة نهاية واحدة توفر اتصالًا ديناميكيًا بين الواجهة الأمامية والخلفية. يتيح GraphQL للمطورين الأماميين العمل بسرعة كبيرة ، مما يقلل من الاعتماد على مطوري الواجهة الخلفية. تساعد تقنية API هذه فريق 8base والفرق التي تستخدم 8base على التطور بشكل أسرع.

نحن ندعم أي إطار الواجهة الأمامية ، ولكن 8base نفسها مصنوعة باستخدام React. React هي مكتبة جافا سكريبت مفتوحة المصدر تحتفظ بها فيسبوك والمجتمع المطور. هو الأمثل للبيانات المتغيرة بسرعة. اليوم ، React تحظى بشعبية كبيرة ، وتوفر React Native ، وهو إطار لإنشاء تطبيقات أصلية على iOS و Android.

أخيرًا ، اخترنا النظام الأساسي Auth0 للمصادقة. يمكن للمطورين بسهولة دمج Auth0 في تطبيقات العملاء الخاصة بهم ، بينما في نفس الوقت لديهم القدرة على استخدام موفري خدمات آخرين للمصادقة. يوفر Auth0 التكامل مع أكثر من 30 من الخدمات الاجتماعية والشركات للترخيص ، بالإضافة إلى المصادقة متعددة العوامل والعديد من الميزات القوية الأخرى.

نصائح


تصميم لتوسيع نطاق

غالبًا ما تتم ممارسة نهج بدء التشغيل المتدني عن طريق كتابة منتج برمجي بسرعة حتى يتمكن المؤسسون من البدء فورًا في البحث عن مكانة السوق الخاصة بهم. أحث المؤسسين على التفكير في المشكلات التي قد يواجهونها عند الحاجة إلى إعادة كتابة منتجاتهم بعد العثور على مكان مناسب.

من الأفضل البناء على أساس متين مع إمكانية التكرار المستمر لتحسين المنتج ، دون التضحية بإمكانية التوسع. لقد فعلنا ذلك باستخدام 8base ، وهو الآن يؤتي ثماره ، نظرًا لأننا نقضي وقتنا في التحسين المستمر للمنتج ، وليس في تحديثه الفني أو إعادة تشكيله للرمز القديم ، وهو أمر غير مرئي بشكل أساسي لعملائنا.

كن حذرا مع المطورين الذين يصنعون منتجات بدء التشغيل دون التفكير في نموذج البيانات.

تسمح بعض حلول الخلفية الحالية اليوم للمطورين الأماميين ، وخاصة مطوري تطبيقات الأجهزة المحمولة ، ببساطة بتحميل البيانات إليهم دون النظر إلى أي نموذج أو هيكل بيانات. وهذا أمر طبيعي بالنسبة لبعض التطبيقات. ولكن بالنسبة لمعظم التطبيقات - للأسف ، لا. تأكد من اختيار نهج غير منظم للبيانات لأنه الاختيار الصحيح ، وليس الأسهل. خلاف ذلك ، ستبدو بياناتك مثل السباغيتي ... عند طهيها.

إذا كنت مؤسسًا غير تقني وتشرك وكالة لمساعدتك في التطوير ، فاطلب منهم الأسئلة الثمانية التالية.

تميل الوكالات إلى تقديم الخدمات المهنية ، ومن مصلحتها القيام بذلك لأطول فترة ممكنة. أهدافهم لا تتطابق دائمًا مع أهدافك. للتحقق من ذلك ، يمكنك طرح الأسئلة التالية:

1. ما هو النهج الذي تتبعه لتطوير البرمجيات: التصميم الأول (التصميم أولاً) أو التصميم الأول (الهندسة أولاً)؟
2. كيف ستبدو النتائج الأولى التي تم الحصول عليها: هل سيتم الانتهاء من التصميمات أو النماذج أو كلاهما؟
3. ما الشركات الناشئة التي ساعدتها ، هل وجدوا مكانها المناسب في السوق وأصبحت مستقرة ماليًا؟
4. كيف ستقوم بتصميم بنية التطبيق بحيث لا أضطر إلى تغييرها أبدًا؟
5. هل سيكون بمقدور المطورين الآخرين العمل في المشروع؟
6. هل سأتمكن من توسيع نطاق البرنامج عند الضرورة؟
7. ماذا لو أردنا تغيير التصميم بناءً على بيانات التسويق الجديدة؟
8. ما الذي سيكون ضروريًا لدعم منتجاتنا بعد إطلاقه؟

إن ابتكار منتجات تكنولوجية هو رحلة لرجل أعمال لا ينتهي أبدًا. يمكن أن تفصل القرارات الأولية حول ماذا ، من وكيف وكيف ، بين النجاح والفشل. تتضمن هذه القرارات أيضًا إجابات على أسئلة حول من الذي يقرر ما الذي يجب على المنتج فعله ، ومن سيقوم بتصميمه وتطويره ، والتقنيات الأساسية التي سيتم استخدامها.

توفر الإجابات الصحيحة على هذه الأسئلة الفرصة لرجل الأعمال للفوز ، وإلا فإن القرارات ستؤدي إلى ضياع الوقت وتكاليف إضافية وربما الفشل.
شكرا للقراءة! سأكون سعيدًا بالتعليق ، أو الاتصال بي لطرح الأسئلة على albert@8base.com .

Source: https://habr.com/ru/post/ar471700/


All Articles