Phát triển Phần mềm đã Thay đổi. Kỹ thuật Tốt thì Không.
Phát triển phần mềm trông đã khác so với mười năm trước. Bạn xây dựng sản phẩm nhanh hơn. Bạn sử dụng nhiều dịch vụ đám mây hơn. AI hiện đã hiện diện trong quy trình làm việc hàng ngày của bạn.
Môi trường đã thay đổi, nhưng các nguyên tắc cốt lõi của kỹ thuật vẫn giữ nguyên. Mã nguồn phải luôn dễ đọc, bảo mật và đáng tin cậy.
Điều gì đã thay đổi đối với bạn với tư cách là một kỹ sư?
Mã nguồn tốt vẫn mang ý nghĩa như cũ. Một codebase nên có tính dự đoán được và dễ dàng thay đổi. Nó không nên trở nên khó bảo trì hơn mỗi khi bạn thêm một tính năng mới. AI thêm vào một lớp mới ở đây. AI tạo ra mã nguồn với nhiều kiểm tra và các trường hợp biên (edge cases). Điều này đôi khi giúp ích. Nhưng những lúc khác, nó lại khiến mã nguồn trở nên quá phức tạp. Bạn phải kiểm tra mã do AI tạo ra để đảm bảo nó vẫn đơn giản và phù hợp với kiến trúc của bạn.
Thời gian đưa sản phẩm ra thị trường (Time-to-market) ngắn hơn nhiều. Mười năm trước, một đợt ra mắt mất hàng tháng trời. Ngày nay, bạn có thể xây dựng một phiên bản chỉ trong vài ngày. AI, các dịch vụ đám mây và API giúp đẩy nhanh quá trình này. Nhưng việc bàn giao nhanh hơn cũng mang lại nhiều rủi ro hơn. Bạn phải theo dõi sát sao hơn tính ổn định, bảo mật và khả năng mở rộng sau khi ra mắt.
Các ưu tiên của bạn đã trở nên rộng hơn. Trước đây, bạn tập trung vào việc viết mã và triển khai các tính năng. Giờ đây, bạn phải quản lý nhiều lĩnh vực hơn:
- Khả năng mở rộng
- Tích hợp
- Quản lý dữ liệu
- Hạ tầng đám mây
- Triển khai AI
- Bảo mật
- Độ ổn định của hệ thống
Một tính năng không còn chỉ là mã nguồn. Nó phụ thuộc vào chi phí đám mây, luồng dữ liệu và các dịch vụ của bên thứ ba.
Lựa chọn công nghệ dựa trên yêu cầu, không phải xu hướng. Các nhóm thường chọn những công cụ mà họ biết rõ. Giờ đây, bạn còn phải xem xét đến tốc độ, khả năng sẵn sàng cho AI và sự hỗ trợ của đám mây. Các framework mới thay đổi rất nhanh vì AI có thể đọc tài liệu của chúng một cách dễ dàng. Tuy nhiên, các công cụ này thường thiếu các thành phần hoàn thiện hoặc tính bảo mật đã được chứng minh.
AI xử lý mã nguồn, nhưng con người xử lý kiến trúc. AI là một sự chuyển dịch khổng lồ. Nhưng kiến trúc đòi hỏi sự hiểu biết về các sự đánh đổi (trade-offs), rủi ro dài hạn và cách một sản phẩm phát triển. Các kỹ sư và kiến trúc sư giàu kinh nghiệm vẫn là phần quan trọng nhất của quy trình.
Câu hỏi chính đã thay đổi. Mười năm trước, bạn hỏi: "Làm thế nào để chúng ta xây dựng và ra mắt nhanh hơn?" Ngày nay, bạn hỏi: "Làm thế nào để ra mắt nhanh mà không tạo ra một hệ thống không ổn định, đắt đỏ hoặc thiếu bảo mật?"
Tốc độ là quan trọng. Nhưng chỉ tốc độ thôi là chưa đủ.
Nguồn: https://dev.to/techbarsw/software-development-changed-good-engineering-didnt-2g7
Cộng đồng học tập tùy chọn: https://t.me/GyaanSetuAi
