Food Delivery ต้องรู้อะไรบางนะ

Tech stack ที่ควรรู้มีอะไรบางนะ

จากตอนที่แล้วที่เราเล่าถึงใน Part Non-Tech ไปแล้ว กลับไปอ่านกันได้ที่ App Food Delivery ต้องมีอะไรบางนะ

ในส่วนของบนความนี้ก็จะลงในส่วนของ Tech กันครับ ก็มี Web development ทั้ง Front-end/Back-end Programming Language และ Database

เริ่มด้วย Front-end ทั้ง Web และ Application

  1. Web Front-end (Backoffice, Restaurant) - สำหรับระบบหลังบ้านและร้านค้า ยุคนี้แล้วแนะนำว่าควรเป็น web ครับ ง่ายต่อการ maintain tech stack ก็แนะนำดังนี้

    1. js, ts - แน่นอนยุคนี้ js แถบจะไม่มีใครไม่รู้จักครับ เร็วและดี เจ้าดังๆ ก็ตามด้านล่าง

      • react

      • vue

      • angular

    2. python

    3. php

  2. App (User, Delivery, Restaurant) - สำหรับ ลูกค้า, คนส่งของ, ร้านค้า นอกจากควรเป็น mobile native app ครับ เพราะต้องใช้ ข้อมูลบางอย่างจากมือถือลูกค้าด้วย เช่นพวก geo(lat, lng) tech stack ดังนี้เลย

    1. android - แน่นอน ก็ต้อง kotlin ครับ google ยังแนะนำให้ใช้ แต่ java ก็ยังได้อยู่

      • kotlin

      • java

    2. ios - ก็ต้อง swift ละครับตัวเลือกเดียว objective-c คงไม่มีคนใช้แล้ว(มั้ง)

      • swift

    3. android/ios - หรืออีกตัวเลือกที่ค่อนข้างมาแรง แต่ learning-curve ก็ไม่ธรรมดา

      • react-native

      • flutter

ตามด้วย Back-end

  1. back-end

    • golang

    • node.js

    • .net core

    • python

  2. database - แน่นอนยุคนี้ ไม่มีแล้ว 1 platform 1 DBเราต้องเลือก DBให้เหมาะกับงาน

    1. RDBMS(payment transaction) - เก็บข้อมูล transaction ต่างๆ ที่ต้องมี relation เยอะๆ order, payment

      • MariaDB

      • MsSQL

      • oracle

      • PostgreSQL

    2. N-RDBMS (chat, tracking) - เก็บข้อมูลที่มีโอกาส change structure บ่อยแน่นๆ และไม่ต้องการ relation เท่าไหร

      • MongoDB

      • ElasticSearch

      • Firebase

    3. cache (content) - เก็บข้อมูลชั่วคราวที่ไม่ได้เปลี่ยนบ่อย กัน load เยอะๆ

      • Redis

อื่นๆ ที่ควรรู้

เป็น Feature ที่จำเป็นและจะเพิ่มความสามารถให้ Platform

  1. social media API - แน่นอน API social เจ้าดังๆ เอามาใช้ให้คุมค่า พวกนี้บางเรื่อง free ด้วยนะ

    • Facebook

    • line

    • google

  2. payment gateway - เพื่อเป็นช่องทางให้ลูกค้า เยอะๆ เพื่อไม่ต้องให้ลูกค้ามาสมัครโน้นนี่ใหม่ ยิ่งเยอะ ก็ยิ่งดี แต่คงต้องศึกษา fee ดีๆ

    • PayPal

    • 2c2p

    • Pay solution

    • Omise

    • Bank

  3. Map - เราต้องการระบบ tracking ของคนส่ง ยังไงก็ขาดไม่ได้เลยเรื่อง map นอกจาก google map ก็มีหลายเจ้านะ

    • OsmAnd

    • OpenLayers

    • TomTom

    • Mapbox

    • Here

  4. Push Noti - แจ้งเตือน ก็ต้อง Push Noti เลย ยุคนี้จะ SMS( เสีย cost ) email ก็ไม่ได้สะดวกเรื่องแจ้งเตือนนิดๆ หน่อย

    • FCM

    • OneSignal

  5. Realtime - app ควร realtime เห็นภาพง่ายๆ ก็เรื่อง chat แต่อื่นๆ ก็นำมาใช้ได้ด้วย

    • Socket.io

    • SignelR

  6. Monitor - แน่นอน ถ้าคนใช้เยอะขึ้นมาก็ต้องมีระบบที่หาปัญหาได้ไว ดังนั้น ควรจะต้องมีระบบ monitor

    • Grafana

    • New Relic

    • Kibana

  7. nice to have - มีหรือไม่มีก็ได้ แต่ถ้ามีบางอย่าง ก็ทำให้ชีวิตง่ายขึ้น อย่าง CI/CD หรือ docker

    • docker

    • message queue

    • CI/CD

Reference

Last updated

Was this helpful?