Khóa học
Bạn có thể đã nghe rằng kỹ thuật dữ liệu là khoa học dữ liệu mới, và sự tăng trưởng mạnh mẽ trong lĩnh vực kỹ thuật dữ liệu đã chứng minh điều đó. Các công ty hiện nhận ra giá trị của việc tuyển dụng kỹ sư dữ liệu để thiết kế, xây dựng và duy trì kiến trúc cần thiết nhằm giúp khoa học dữ liệu và phân tích vận hành hiệu quả. Bạn có thể đọc thêm về sự khác biệt giữa kỹ sư dữ liệu và nhà khoa học dữ liệu trong một bài viết riêng.
Tuy nhiên, bạn có thể cũng đang thắc mắc: kỹ sư dữ liệu thực sự làm gì? Trong bài viết này, chúng tôi phân tách các vai trò và trách nhiệm khác nhau của kỹ sư dữ liệu, cùng lộ trình sự nghiệp mà một kỹ sư dữ liệu có thể theo đuổi. Cuối cùng, chúng tôi hé lộ hậu trường của một dự án kỹ thuật dữ liệu điển hình mà bạn có thể gặp trong tổ chức. Nếu bạn đang tìm thông tin về cách trở thành kỹ sư dữ liệu, bạn sẽ thấy bài viết riêng của chúng tôi hữu ích. Bạn cũng có thể đọc về cách viết mô tả công việc cho vị trí kỹ sư dữ liệu nếu bạn đang cố gắng tuyển dụng cho vai trò này.
Vai trò trong Kỹ thuật Dữ liệu
Kỹ thuật dữ liệu bao gồm đa dạng kỹ năng, công cụ và hệ thống. Có bốn nhóm cốt lõi về vai trò của kỹ sư dữ liệu, và mỗi nhóm cần thành thạo một tập hợp kỹ năng và công cụ để làm việc hiệu quả.
- Nhà tổng quát. Tham gia vào mọi khía cạnh của việc thu thập, lưu trữ, phân tích và di chuyển dữ liệu. Họ phải biết và sử dụng được nhiều công cụ và kỹ năng.
- Chuyên gia về lưu trữ dữ liệu. Chịu trách nhiệm thiết lập và quản lý cơ sở dữ liệu quan hệ và phi quan hệ (như SQL, NoSQL và PostgreSQL), kho dữ liệu (như Redshift và Panoply), và các hệ thống dữ liệu lớn (như Hadoop và Spark).
- Chuyên gia về lập trình và pipeline. Tạo và quản lý luồng dữ liệu thông qua các script và pipeline dữ liệu. Họ cần quen thuộc với một vài ngôn ngữ lập trình như Python, Java và C++.
- Chuyên gia về phân tích. Làm việc chặt chẽ với các nhà khoa học dữ liệu và các chuyên gia phân tích khác trong tổ chức. Họ cần quen thuộc với các công cụ phân tích (như Power BI và Tableau), thư viện học máy (như Tensorflow và PyTorch), và các công cụ khác hỗ trợ dự án phân tích (như công cụ ETL và hệ thống dữ liệu lớn).
Kỹ sư dữ liệu làm gì? Lộ trình sự nghiệp của kỹ sư dữ liệu
Lộ trình sự nghiệp của kỹ sư dữ liệu có thể khác nhau tùy theo quy mô công ty và mức độ trưởng thành của đội ngũ dữ liệu. Tuy vậy, hầu hết kỹ sư dữ liệu thường đi theo lộ trình sau:
- Kỹ sư dữ liệu cấp junior
- Kỹ sư dữ liệu cấp mid
- Kỹ sư dữ liệu cấp senior
- Các vai trò quản lý cấp cao
Kỹ sư dữ liệu cấp Junior
Khi mới bắt đầu sự nghiệp, kỹ sư dữ liệu cấp junior thường đảm nhận các tác vụ nhỏ để duy trì và hỗ trợ hệ thống hiện có. Có thể là từ kiểm thử hệ thống, tìm và sửa lỗi, đến bổ sung tính năng cho hệ thống đang chạy. Ở giai đoạn đầu này, người mới thường chưa tự dẫn dắt dự án mà đóng vai trò hỗ trợ cho đồng nghiệp cấp cao.
Phần quan trọng nhất trong vài năm đầu là học hỏi và tích lũy kinh nghiệm thực tế với các công cụ họ sẽ cần dùng về sau. Họ cũng học cách các nhóm và bộ phận khác nhau phối hợp để tìm giải pháp cho các vấn đề và câu hỏi phát sinh.
Kỹ sư dữ liệu cấp Mid
Một kỹ sư dữ liệu có thể được thăng lên cấp mid sau khoảng 1 đến 3 năm. Lúc này họ có thể được tiếp xúc nhiều hơn với khía cạnh quản lý dự án và cần hợp tác nhiều hơn với các nhóm, bộ phận khác.
Họ thường được giao trách nhiệm thiết kế và xây dựng các hệ thống hỗ trợ nhà khoa học dữ liệu và các thành viên nhóm phân tích khác. Ở giai đoạn này, họ vẫn có thể chịu sự giám sát từ kỹ sư dữ liệu cấp senior. Để làm tốt, họ cần phát triển kỹ năng giao tiếp tốt và có thể phối hợp hiệu quả với các nhóm khác.
Kỹ sư dữ liệu có thể ở cấp này khoảng 3 đến 5 năm. Trong thời gian đó, họ sẽ phát triển kỹ năng lập trình và nắm vững các công cụ, hệ thống được sử dụng tại tổ chức. Họ có thể xác định và khắc phục mọi lỗi hoặc vấn đề phát sinh, và hợp tác tốt trong nội bộ cũng như giữa các nhóm.
Kỹ sư dữ liệu cấp Senior
Khi đạt đến cấp senior, kỹ sư dữ liệu đảm nhận nhiều trách nhiệm quản lý hơn. Họ có thể cần giám sát một hoặc nhiều kỹ sư dữ liệu cấp dưới, hướng dẫn và phân công dự án cho họ khi có việc.
Ở giai đoạn này, kỹ sư dữ liệu đã thành thạo về mặt kỹ thuật và có thể xây dựng hệ thống, giải quyết vấn đề tương đối dễ dàng. Tuy nhiên, họ giờ đây tham gia sát hơn vào khía cạnh kinh doanh và cần suy nghĩ chiến lược về định hướng các dự án dữ liệu, cũng như hiệu quả dài hạn và tối ưu hóa hệ thống.
Điều này đòi hỏi sự thay đổi trong cách tư duy, có thể là thách thức. Nhiều kỹ sư dữ liệu có thể không đam mê các trách nhiệm mang tính chiến lược và kinh doanh, nên họ có thể chọn không tiến xa hơn trong công ty.
Các vai trò quản lý cấp cao
Sau khoảng sáu năm kinh nghiệm trở lên, kỹ sư dữ liệu có thể chuyển sang các vai trò quản lý cao hơn nếu muốn, chẳng hạn như:
- Quản lý kỹ thuật dữ liệu
- Giám đốc kỹ thuật dữ liệu
- Giám đốc dữ liệu (Chief Data Officer)
Bên cạnh việc thành thạo các kỹ năng kỹ thuật ở cấp độ thấp hơn, các vai trò này đòi hỏi kỹ sư dữ liệu có kỹ năng hạ tầng và kiến trúc dữ liệu vững, cùng khả năng quản lý và mở rộng các nhóm phân tích. Họ cũng cần có khả năng xác lập quy trình phát triển hệ thống hiệu năng cao, xác định phạm vi dự án mới, và xác định cũng như quản lý SLA cho các hệ thống mới và hiện có.
Kỹ sư dữ liệu làm gì? Một dự án kỹ thuật dữ liệu điển hình
Hãy xem một số vai trò và trách nhiệm của kỹ sư dữ liệu. Giả sử bạn làm cho một công ty lớn cung cấp dịch vụ giao đồ ăn cho khách hàng thông qua ứng dụng di động. Ứng dụng đóng vai trò trung gian giữa nhà hàng và tài xế. Khách hàng đặt món trên ứng dụng và nhà hàng được thông báo. Khi đồ ăn sẵn sàng, một tài xế được phân công và đồ ăn được giao đến khách hàng.
Có thể hình dung một ứng dụng như vậy tạo ra rất nhiều dữ liệu mỗi ngày. Từ dữ liệu về nhà hàng, tài xế, khách hàng, đến log cho mọi tương tác trên ứng dụng. Cũng cần tính đến dữ liệu thu thập từ các cuộc gọi dịch vụ khách hàng để khiếu nại, khen ngợi hoặc tranh chấp. Hoặc thậm chí là log từ các lỗi xảy ra trên ứng dụng.
Nếu một nhà khoa học dữ liệu hoặc nhà phân tích dữ liệu trong công ty bạn được giao nhiệm vụ xác định xu hướng trong các đơn hàng để từ đó xây dựng mô hình học máy. Để làm điều này, họ tìm đến bạn để trích xuất và chuẩn bị dữ liệu về đơn hàng được tổng hợp theo ngày. Họ cũng cần có khả năng tách dữ liệu giữa khách hàng mới và khách hàng quay lại.
Làm rõ yêu cầu
Để giải quyết vấn đề, kỹ sư dữ liệu trước tiên phải làm rõ yêu cầu thông qua các bước sau:
- Xác định mức độ chi tiết, theo đơn hàng, theo ngày, tuần, tháng, năm. Dựa trên yêu cầu ở trên, dữ liệu đơn hàng phải được tổng hợp theo ngày, kèm phân tách theo loại khách hàng (mới hoặc quay lại).
- Xác định xem có cần áp dụng bộ lọc nào cho dữ liệu không, chẳng hạn theo quốc gia hoặc mẫu điện thoại.
- Xác định khung thời gian của dữ liệu. Ví dụ, cho toàn bộ thời gian hay chỉ năm vừa qua?
- Xác định nguồn dữ liệu và/hoặc bảng dữ liệu liên quan. Dữ liệu này được lưu trong kho dữ liệu tập trung, và kỹ sư dữ liệu cần truy cập bảng đơn hàng và bảng khách hàng. Nếu cần thêm bộ lọc, có thể phải truy cập thêm các bảng khác.
Trích xuất dữ liệu
Sau khi đã làm rõ vấn đề, kỹ sư dữ liệu có thể chuyển sang bước trích xuất và khám phá dữ liệu theo các bước sau:
- Xác định các phép nối cần dùng giữa bảng đơn hàng và bảng khách hàng, cũng như mối quan hệ giữa các bảng này (chẳng hạn các khóa nào dùng để nối bảng). Việc này đòi hỏi hiểu biết vững về SQL và mô hình dữ liệu.
- Tạo một đặc trưng phân loại cho loại khách hàng dựa trên số đơn hàng mỗi khách đã thực hiện. Đặc trưng này phải có các nhóm 'khách hàng mới' và 'khách hàng quay lại'.
- Đánh giá chất lượng dữ liệu. Xác định xem dữ liệu thiếu hoặc bất thường có cần được hiệu chỉnh không.
Một khi kỹ sư dữ liệu đã chuẩn bị xong dữ liệu mà nhà khoa học hoặc nhà phân tích dữ liệu cần, họ phải tạo một endpoint API có thể được truy vấn để trích xuất dữ liệu. Toàn bộ dự án này có thể mất từ vài ngày đến vài tháng, tùy theo khối lượng và mức độ phức tạp của dữ liệu.
Xuyên suốt quá trình này, kỹ sư dữ liệu có thể cần làm việc với nhiều hệ thống khác nhau, tùy thuộc nơi dữ liệu được lưu trữ và liệu có cần xử lý bổ sung nào cho dữ liệu hay không.
Ví dụ về một số hệ thống có thể gặp trong bài toán này gồm SQL Server, Hadoop hoặc Redshift cho lưu trữ dữ liệu, SQL để truy vấn dữ liệu, và Python để viết các script xử lý dữ liệu.
Kết luận
Như bạn thấy, một dự án kỹ thuật dữ liệu điển hình đòi hỏi vài kỹ năng cốt lõi then chốt cho kỹ thuật dữ liệu, chẳng hạn như xây dựng pipeline dữ liệu. Để tăng tốc học tập và chuẩn bị cho vai trò kỹ sư dữ liệu, hãy thử lộ trình kỹ năng Python cho Kỹ thuật Dữ liệu trên DataCamp. Để có trải nghiệm thực hành đầu tiên với kho dữ liệu đám mây, hãy thử Dự án Khám phá Mạng lưới Giao thông London của chúng tôi. Đây là cơ hội tuyệt vời để làm việc với Amazon Redshift, Google BigQuery và Snowflake trực tiếp trên trình duyệt. Cuối cùng, để chứng minh năng lực của bạn với vai trò kỹ sư dữ liệu, hãy tham gia chứng chỉ kỹ sư dữ liệu của chúng tôi.
Hy vọng bài viết này đã giúp bạn hiểu thêm về vai trò của kỹ sư dữ liệu và những việc họ thực sự làm. Nếu bạn đang cân nhắc bắt đầu sự nghiệp trong kỹ thuật dữ liệu, bạn cũng sẽ quen thuộc hơn với lộ trình nghề nghiệp có thể kỳ vọng.