انتقل إلى المحتوى

منتجات برمجية وهندسة

نبني برمجيات تُشغّل عمليات حقيقية.

Deliverio وLead2Door منتجاتنا: صمّمها فريقنا وبناها وأطلقها ويتولى تشغيلها. ويبني الفريق نفسه أنظمة مخصصة وأتمتة وبنية تحتية وحلولًا أمنية ومشاريع ووردبريس للشركات التي تحتاج إلى برمجيات يُعتمد عليها.

لماذا يصمد عملنا

تتحسن البرمجيات عندما يكون من يبنيها مسؤولًا أيضًا عن تشغيلها. نحن نبني منتجاتنا ونشغّلها بأنفسنا، وننقل الانضباط نفسه إلى كل نظام نبنيه لعملائنا: سير عمل حقيقي، وحالات استثنائية حقيقية، وبرمجيات تظل تعمل في صباح اليوم التالي.

01المنتجات

منتجات نبنيها ونطلقها ونشغّلها.

Deliverio وLead2Door منتجان قيد التشغيل لعمليات التوصيل والتجارة. وThemo Landin واحدة من إضافات ووردبريس التي نطوّرها ونبيعها.

deliverio.maعمليات التوصيل

Deliverio

برنامج لعمليات الطرود والتوصيل: التتبع، والاستلام ومسارات عمل المندوبين، والدفع عند الاستلام، والشبكات الإقليمية.

  • تتبع الطرود مع سجل واضح للحالات
  • الاستلام ومسارات عمل المندوبين
  • إدارة الدفع عند الاستلام
  • شبكات توصيل إقليمية وتكاملات

من الداخل

يمر كل طرد بحالات محددة، وتُسجَّل كل عملية انتقال. ويرى التجار والشبكات والمندوبون كلٌّ الجزء الخاص به.

توضيحي
سجل طرود Deliverio مع مرشحات الحالة وصفوف الشحن، باستخدام بيانات تجريبية توضيحية.
واجهة المنتج بالفرنسية مع بيانات تجريبية توضيحية.

lead2door.comعمليات التجارة

Lead2Door

مساحة عمل مُدارة لفرق التجارة المباشرة والدفع عند الاستلام، من استقبال العملاء المحتملين والتأكيد إلى الشحن والجوانب المالية.

  • استقبال العملاء المحتملين وتأكيد الطلبات
  • صلاحيات تناسب دور الوكلاء والمسؤولين
  • الشحن عبر مزودين متصلين
  • العمليات المالية في المساحة نفسها

من الداخل

يُحفظ سجل العملاء المحتملين وسجل الشحن كلٌّ على حدة، ويعمل كل مزود شحن من خلال مسار طلبات مشترك واحد.

توضيحي
مساحة عمل وكيل التأكيد في Lead2Door مع قائمة العملاء المحتملين وتفاصيل الطلبات، باستخدام بيانات تجريبية توضيحية.
واجهة المنتج بالفرنسية مع بيانات تجريبية توضيحية.

ووردبريس

Themo Landin

إضافتنا لإنشاء مسارات التحويل في ووردبريس، وواحدة من أدوات ووردبريس التي نطوّرها ونبيعها.

استكشف Themo Landin

03هندستنا

هندسة يمكن قراءتها.

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

تمر الطلبات والطرود بحالات محددة. الانتقال إما مسموح أو غير مسموح، والشيفرة تحدد ذلك.

type ParcelState =  | 'created' | 'picked_up' | 'in_transit'  | 'out_for_delivery' | 'delivered' | 'returned' const allowed: Record<ParcelState, ParcelState[]> = {  created: ['picked_up'],  picked_up: ['in_transit'],  in_transit: ['out_for_delivery'],  out_for_delivery: ['delivered', 'returned'],  delivered: [],  returned: [],} export function canMove(from: ParcelState, to: ParcelState) {  return allowed[from].includes(to)}

كل تغيير يسجل من قام به ولماذا، ليقرأ الدعم والمالية والعمليات القصة نفسها.

interface Transition {  from: ParcelState  to: ParcelState  actor: Actor  reason?: string  at: Date} export function move(parcel: Parcel, to: ParcelState, actor: Actor, reason?: string) {  if (!canMove(parcel.state, to)) throw new InvalidTransition(parcel.state, to)  parcel.history.push({ from: parcel.state, to, actor, reason, at: new Date() })  parcel.state = to}

يبقى المسار المشترك كما هو عند تغيير مزود الشحن. تفاصيل المزود تبقى خلف واجهة واحدة.

export interface ShippingProvider {  readonly id: string  createShipment(order: ConfirmedOrder): Promise<Shipment>  trackingUrl(shipment: Shipment): string} // The order workflow depends on the interface, never on one carrier.export async function ship(order: ConfirmedOrder, provider: ShippingProvider) {  const shipment = await provider.createShipment(order)  return markShipped(order, shipment)}

يحصل الوكلاء والمسؤولون والتجار والمندوبون على الإجراءات التي تناسب أدوارهم.

type Role = 'agent' | 'admin' | 'merchant' | 'courier'type Action = 'confirm' | 'ship' | 'deliver' | 'settle' const permissions: Record<Role, Action[]> = {  agent: ['confirm'],  admin: ['confirm', 'ship', 'settle'],  merchant: ['ship'],  courier: ['deliver'],} export const can = (role: Role, action: Action) =>  permissions[role].includes(action)

نطلق على مراحل صغيرة، ونراقب ما يعمل، ونصلح ما تكشفه البيانات.

$ npm run release✓ typecheck       passed✓ tests           passed✓ build           passed→ deploy          production✓ health check    passed✓ release         complete

شيفرة توضيحية كُتبت لهذه الصفحة.

04المنهجية

من الحديث الأول إلى نظام قيد التشغيل.

تعرف دائمًا ما نعمل عليه، ولماذا، وما الخطوة التالية.

  1. 01

    الفهم

    نرسم سير العمل والأشخاص المعنيين والأنظمة القائمة والقيود المهمة.

    المخرجات

    • خريطة المشكلة
    • القيود
  2. 02

    التصميم

    نحدد النطاق المفيد والبنية التقنية ومسار تنفيذ واضحًا يمكنك متابعته.

    المخرجات

    • النطاق
    • البنية التقنية
    • مسار التنفيذ
  3. 03

    البناء

    نطلق برمجيات عاملة على مراحل ونربطها بالعمليات المحيطة بها.

    المخرجات

    • برمجيات عاملة
    • أنظمة مترابطة
  4. 04

    التشغيل

    نراقب ما يعمل ونعالج المشكلات ونواصل تحسين النظام.

    المخرجات

    • المراقبة
    • الإصلاحات
    • التحسينات

05الشركة

شركة منتجات تبني لعملائها أيضًا.

Starthinc Labs LLC هي الشركة التي تقف وراء Deliverio وLead2Door وThemo Landin. ما نتعلمه من تشغيل منتجاتنا يشكّل الأنظمة التي نبنيها لعملائنا، وعمل العملاء بدوره يصقل ممارستنا.

المزيد عن Starthinc Labs
حقائق عن الشركة
الشركة
Starthinc Labs LLC
التسجيل
وايومنغ، الولايات المتحدة
المنتجات
Deliverio · Lead2Door · Themo Landin
الخبرات
البرمجيات · الأتمتة · البنية التحتية · الأمن · ووردبريس
لغات العمل
English · Français · العربية
التواصل
[email protected]

تواصل

أخبرنا بما يجب أن يعمل.

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

ناقش مشروعك معنا