Như các bạn đã biết, với lĩnh vực web-dev thì thường chia thành 3 kiểu developer đó là font-end developer( giao diện web), back-end developer ( máy chủ, dữ liệu, những thứ đằng sau mà không được nhìn thấy) và full stack dev (kết hợp cả hai)

Back-end developer sẽ chịu trách nghiệm và tập trung vào hoạt động bên trong của ứng dụng web để xây dựng ” máy chủ ” web. Ngược lại với font-end là làm việc với giao diện và hướng tới trải nghiệm, hoạt động của client ( máy của người sử dụng như máy tính, điện thoại …)  thì back-end là code với ngôn ngữ hoạt dộng  “phía sau”  trên máy chủ web.

Bài viết này tôi sẽ tập trung vào những back-end developer để xem họ làm những gì và những kĩ năng cần thiết để trở thành một backend developer

Vai trò của back-end developer

  • Người làm về back-end web sẽ làm việc với front end web cùng với ngững yêu cầu nghiệp vụ từ đó họ sẽ tạo ra các logic để làm cho ứng dụng web hoạt động bình thường(đúng yêu cầu), để thực hiện điều này người làm back-end sẽ thông qua các ngôn ngữ kịch bản để xây dựng như java, javascrip, php …

  • Ngoài việc tạo đúng chức năng của trang web, một người phát triển back-end còn phải tối ưu hóa để có tốc độ tải và truy cập web hiệu quả.

  • Một vai trò quan trọng nữa đó là họ phải tạo ra các giải pháp lưu trữ dữ liệu với cơ sở dữ liệu. Điều này rất quan trọng vì chúng ta biết rằng tất cả trang web đều cần lưu trữ thông tin. Một số hệ quản trị cơ sở dữ liệu phổ biến như mongo, postgre, mysql.

Back-end thì thường làm việc với ai ?

  • Thường những người phát triển back sẽ làm chung một nhóm, để cùng giải quết các vấn đề. truy nhiên, trong một số công ty hay nơi làm việc quy mô lớn, có thể họ sẽ phải cùng làm việc với các font-end và những người vận hành và quản lý (dev ops, system admin)

  • Trong cùng một nhóm những người làm back-end lại có những công việc khác nhau như phát triển api, test(kiểm thử phần mềm) và cả web security nữa(bảo mật hệ thống)

Những kĩ năng cần thiết để có thể bắt đầu phát triển back-end.

  • Internet.

    • chắc chắn rồi, bạn sẽ không thể hiểu được back-end hoạt động nếu bạn không hiểu về hosting là gì, domain hay những khái niệm như Http. Hay cụ thể, cần trả lời được internet hoạt động thế nào.
  • Một chút về front-end sẽ cho bạn hiểu được mình đang làm gì và sản phẩm của mình sẽ trông như thế nào. Và quan trọng hơn nó sẽ giúp bạn dễ dàng làm việc với nhà phát triển front-end. Một số công nghệ front-end gồm:

    • Html
    • js
    • css
  • Học 1 ngôn nghữ lập trình.

    • Như bên trên cũng nói thì back-end sẽ tạo các kịch bản web thông qua các nghôn ngữ. Một số ngôn nhữ phổ biến như:
      • java
      • js
      • php
  • Quản trị cơ sở dữ liệu.

    • Sql
    • Postgre
    • Ngoài ra một số hệ quả trị dữ liệu không quan hệ (nosql) như:
      • mongoDB
      • dinamoDb

Đó, nhiêu bên trên là đủ để bạn có thể viết 1 server-side hoạt động theo nghiệp vụ rồi. Tuy nhiên để dễ dàng thích nghi và nắm sâu rộng hơn thì các bạn cần phải biết:

  • Git(version control system) để làm việc nhóm
  • Os( operating system) Bạn phải biết code của bạn có thể chạy trên hệ diều hành nào. Và cấu trúc os đó.
  • Testing( kiểm thử) Sẽ rất quan trọng nếu bạn không muốn một ngày nào đó server ngừng hoạt động và bạn không biết tại sao.
  • Security. Bảo mật là điều cần thiết cho mọi ứng dụng.
    • Auth
    • Author
  • Building for scale. Khi phát triển mức naò đó thì ứng dụng của bạn dần phình to ra. Để tạo ra ứng dụng dễ dàng phát triển về lâu về dài sẽ phụ thuộc vào kinh nghiệm triển khai.

Kết luận.

  • Vị trí back-end dev là vị trí quan trọng trong team và họ chịu tránh nghiệm tạo giải pháp lưu trữ và giải pháp các kịch bản tối ưu để đưa nội dung cũng như đảm bảo nội dung được chuyển tới front-end.

Happy learning!