2 điểm bởi GN⁺ 2025-03-21 | 1 bình luận | Chia sẻ qua WhatsApp
  • Nhiều đội frontend tin chắc rằng viết lại frontend từ đầu sẽ dẫn đến thành công
    • Nhưng việc chọn framework frontend là quyết định kỹ thuật ít quan trọng nhất trong phát triển sản phẩm dài hạn
    • Lãng phí thời gian vào việc chọn framework là không hiệu quả
  • Framework nhiều khả năng sẽ trở nên lỗi thời trong vòng 5 năm
    • Vì cộng đồng frontend thay đổi rất nhanh, framework thường xuyên được cập nhật hoặc bị thay thế bằng phiên bản mới

Cách tiếp cận của các đội sản phẩm thông minh

  • Các đội sản phẩm thông minh theo đuổi sự hiểu biết sâu sắc về framework hiện tại thay vì thay framework
  • Việc đổi framework là một cái bẫy
  • Điều quan trọng là phải hiểu sâu các công cụ đang dùng và không để chúng cản trở công việc

Lời khuyên cho kỹ sư đang tìm việc

  • Nếu bạn có sở thích rất mạnh với một framework cụ thể, hãy tìm việc dựa trên tiêu chí đó
  • Đừng gia nhập một đội có sẵn rồi cố thuyết phục họ đổi framework
    • Điều này gây ra chi phí lớn và sự hỗn loạn cho cả đội

Cách giảm chi phí kỹ thuật frontend

  • Cần tập trung vào các công nghệ web nền tảng
  • Cần giảm các tầng trừu tượng phức tạp và học lại những chức năng cơ bản của nền tảng web
  • Nhờ đó có thể mang lại giá trị tốt hơn trong dài hạn
    • Nếu luôn ở gần các công nghệ web cốt lõi, có thể tuyển kỹ sư mới dễ dàng hơn
    • Có thể duy trì năng suất mà không cần refactor mã nguồn quy mô lớn

Chiến lược quản lý sự nghiệp dài hạn của kỹ sư

  • Nếu hiểu sâu các công nghệ web cốt lõi, giá trị sự nghiệp dài hạn sẽ cao hơn
  • Bạn đã tồn tại trước React và cũng có thể tiếp tục sau React
  • Thành thạo các công nghệ nền tảng có lợi hơn là chỉ tập trung học các công nghệ đang thịnh hành mới nhất
  • Khả năng bị sa thải do thay đổi công nghệ luôn tồn tại
    • Củng cố nền tảng sẽ ổn định hơn là phụ thuộc vào một công nghệ cụ thể

Vì sao khó nói thẳng điều này trong công việc

  • Khi ở vị trí quản lý, rất khó để đưa ra những phát biểu thẳng thắn như vậy
  • Động cơ có thể bị nghi ngờ hoặc vấp phải phản ứng từ cả đội
  • Đây là lời khuyên thực tế rút ra từ hơn 20 năm kinh nghiệm

Vấn đề của hệ sinh thái frontend

  • Hệ sinh thái frontend hiện nay rất phức tạp
  • Lập trình viên mới rất khó học được các kỹ năng cần thiết
    • Họ đang nản lòng vì các công cụ quá phức tạp
    • Ngay cả việc tuyển lập trình viên cơ bản cũng đang trở nên khó khăn hơn
  • Những kỹ năng học được trong hệ sinh thái công nghệ hiện tại bị trừu tượng hóa quá mức
    • Điều này có thể trở thành bất lợi lớn khi công nghệ thay đổi

Sự trì trệ của web và vấn đề của công cụ

  • Sự trì trệ của web bắt nguồn từ độ phức tạp của công cụ
  • Các lập trình viên muốn tạo ra những thứ sáng tạo và ấn tượng, nhưng công cụ lại cản trở họ
  • Vấn đề là nhận thức rằng việc học các công nghệ web nền tảng là kém hiệu quả

Quan điểm cá nhân

  • Tác giả đã đam mê phát triển web trong thời gian dài
  • Web vẫn là một nền tảng mạnh mẽ và độc đáo
  • Các công cụ nền tảng của web vốn đã rất xuất sắc
  • Nhưng tầng framework hiện tại đang đi ngược lại bản chất của nền tảng web

1 bình luận

 
GN⁺ 2025-03-21
Ý kiến Hacker News
  • Gần đây đang làm việc thay thế hệ thống build của mã FE từ yarn sang pnpm

    • Dù là kỹ sư backend nhưng cũng đã làm khá nhiều việc với JS
    • Điều khiến tôi bức bối nhất khi làm FE là gần như mọi thứ đều bị ngừng hỗ trợ
    • Ví dụ, năm 2022 tôi đã dùng apollo CLI, nhưng giờ nó đã bị ngừng hỗ trợ nên phải học graphql-client
    • Khi cố nâng cấp bản vá cho dependency, chỉ còn biết cầu mong chúng không phụ thuộc vào type signature
    • Cuối cùng thì build vẫn xong, nhưng lại xuất hiện hàng trăm cảnh báo ngừng hỗ trợ
    • Có vẻ như phát triển FE chấp nhận sự thay đổi và việc ngừng hỗ trợ quá dễ dàng
    • Trong các dự án Rust, suốt 4 năm chỉ có vài thay đổi nhỏ
    • Còn với JS, cứ như thể mỗi 6 tháng lại phải viết lại thứ gì đó
  • Tôi đã làm việc trong FE gần 20 năm và đã trải qua nhiều lần thay đổi mô hình

    • Tôi nghĩ việc hiểu các công nghệ web cốt lõi giúp trở thành một kỹ sư đa năng hơn
    • Tuy nhiên, tôi không chắc điều đó có khiến mình hấp dẫn hơn trên thị trường việc làm hay không
    • Muốn tối đa hóa giá trị trên thị trường thì phải thực sự rất giỏi React
  • Tôi không phải là lập trình viên frontend, nhưng đã dùng React suốt 10 năm

    • Có xu hướng chuyển sang Svelte, nhưng React vẫn rất mạnh
    • Phát triển frontend thay đổi nhanh, nhưng cũng không tệ đến thế
  • Không dùng framework frontend là cách để bước ra khỏi chiếc máy chạy bộ đó

    • Render phía máy chủ và chỉ dùng JavaScript khi thực sự cần
  • Khi LLM trở nên nổi bật hơn, sự quan tâm đến công nghệ mới sẽ giảm đi

    • Qua trải nghiệm với Bevy và Svelte, người ta sẽ dần ưu tiên công cụ quen thuộc hơn là công cụ mới
  • Với sự phát triển của Vanilla JS và CSS, việc dùng HTML template từ máy chủ và chỉ thêm JS ở nơi cần thiết trở nên hợp lý hơn

    • Những framework như React vẫn mạnh, nhưng quản lý trạng thái UI trên máy chủ lại dễ hơn
  • Đây không phải vấn đề riêng của frontend mà là vấn đề của các hệ sinh thái lớn

    • Tôi cũng từng trải qua tình huống tương tự trong Java
    • Ở backend, việc chuyển sang ngôn ngữ mới còn là vấn đề lớn hơn
  • Khi mới bắt đầu phát triển web, tôi từng nghe nhiều về Svelte và React, nhưng tốt hơn hết là đọc MDN và bỏ qua những thứ khác

  • Tôi đã dùng React hơn 10 năm và không đồng ý với nhận định rằng framework sẽ trở nên lỗi thời chỉ trong vòng 5 năm

  • Tôi đã làm phát triển web hơn 20 năm và hài lòng với stack CHAMP

    • CHAMP nghĩa là CSS, HTML, Apache, MySQL, PHP
    • Tôi thấy rất hài lòng vì không dùng framework và giữ nguyên các công nghệ truyền thống