Chào mọi người, hẳn là mọi người đều biết rằng Data Science có hai ngành chính là Data Scientist và Machine Learning Engineer (ML Engineer). Tuy nhiên rất ít người có thể phân biệt được sự khác nhau giữa hai ngành này, và nếu trong cùng một công ty thì họ sẽ làm những công việc gì?
Hy vọng qua bài viết này, mọi người có một cái nhìn rõ hơn về Data Scientist và ML Engineer, dễ dàng lựa chọn được hướng đi cho bản thân mình nhé.
Bắt đầu, xuất phát điểm và background
Về kiến thức cả Data Scientist, ML Engineer đều cần có kiến thức về Machine Learning, AI và thậm chí cả Deep Learning. Tuy nhiên khi đi vô sâu hơn, chúng ta có thể thấy được sự khác biệt rõ rệt như sau
Data Scientist
Data Scientist thường xuất phát từ nhiều Background khác nhau như tài chính, marketing, banking, chemical engineer… Một sự thật thú vị là ở những công ty tui đã từng làm, 69.96% Data Scientist đều KHÔNG từ IT.
Data Scientist cũng không cần xuất sắc trong lập trình. Đối với họ, lập trình hay viết code chỉ là công cụ để phân tích, xử lý và xây dựng mô hình dữ liệu.
Các công ty thường yêu cầu Data Scientist có bằng cấp sau đại học như Master (thạc sĩ) hoặc PhD (tiến sĩ). Nguyên team Data Scientist mà tui làm việc chung có 6 thì 2 người là tiến sĩ, 4 người còn lại cũng là thạc sĩ luôn! (Một phút quảng cáo, tui cũng là thạc sĩ nè hihi).
Tùy theo nhu cầu và công nghệ của công ty mà Data Scientist dùng R, Matlab hoặc SPSS, không nhất thiết phải là Python. Ở những công ty sử dụng Microsoft Window Server, mô hình dữ liệu bằng Python sẽ rất khó để tích hợp vào ứng dụng Window Application, thay vào đó Data Scientist xây dựng mô hình dữ liệu bằng Matlab.
Về kiến thức, ngoài Domain Knowledge (kiến thức chuyên ngành) là bắt buộc thì Data Scientist còn cần kĩ năng Research (nghiên cứu) để tham khảo các Papers (tài liệu khoa học) và áp dụng vào công việc của mình.
Machine Learning Engineer
ML Engineer xuất thân 96,69% là từ IT, khoa học máy tính và công nghệ thông tin
Do đều là Engineer (kỹ sư) nên ML Engineer có thể coi là một nhánh của Software Engineer. Ở một số công ty lớn như Apple hay Google, vị trí này được gọi là “Software Engineer, Machine Learning”.
ML Engineer bắt buộc phải vững kiến thức lập trình, ngôn ngữ chủ yếu sử dụng là Python, Scala hoặc Java. Nhưng khác với Back Engineer, ML Engineer hoàn toàn tập trung vào lĩnh vực data.
Ngoài kiến thức về Data Science hay ML/AI, họ còn cần biết về API và DevOps vì họ cũng chính là người đảm bảo mô hình dữ liệu hoặc API luôn chạy ổn định và đưa ra dự đoán chính xác nhất.
Đặc thù công việc, nghề nghiệp
Nói sơ qua về đặc điểm để nhận dạng hai “con pokemon”, nhầm hai nghề này như vậy đủ rồi. Vậy công việc khi đi làm có khác nhau không? Và khác nhau như thế nào?
Ở mỗi công ty thì người ta định nghĩa về Data Scientist và Machine Learning khác nhau, nội dung công việc cũng sẽ khác nhau. Nhưng tựu trung lại thì những đặc điểm chính có thể kể đến là.
Data Scientist
Thường liên quan đến Business và tập trung giải quyết những vấn đề của Business. Ví dụ như dự đoán mức tiêu thụ của khách hàng, dự đoán gian lận, nghiên cứu mô hình dữ liệu để dự đoán tái ung thư…
Công việc của Data Scientist sẽ thiên về nghiên cứu. Họ thử nhiều loại data khác nhau cùng với nhiều phương pháp cũng khác nhau để giải quyết vấn đề bằng Machine Learning.
Data Scientist rất thường xuyên gặp Stakeholders (khách hàng) để thuyết trình về những insights / findings mà mình tìm kiếm được. Mỗi ngày, Data Scientist sẽ dành khoảng 40% thời gian cho việc chuẩn bị slides và thuyết trình.
Ngoài ra, Data Scientist cũng là những người xây dựng mô hình dữ liệu. Tuy nhiên mô hình dữ liệu này chỉ dừng ở mức độ Prototype (thử nghiệm) để chứng minh giả thuyết của họ đúng và giải quyết được vấn đề.
Machine Learning Engineer
Công việc chính của ML Engineer là xây dựng hệ thống pipeline để đưa mô hình dữ liệu được xây dựng bởi Data Scientist thành sản phẩm, cụ thể hơn là API. Nói thêm chút xíu, ở một số công ty không có vị trí ML Engineer thì công việc này được đảm nhận bởi Data Engineer.
ML Engineer cũng là người chịu trách nhiệm về hệ thống API đó. Họ cần đảm bảo hệ thống luôn chạy một cách chính xác và có khả năng Scale để đáp luôn luôn ứng nhu cầu người dùng.
Ở một số công ty, những hệ thống như nhận diện hình ảnh, nhận diện giọng nói, recommendation system (hệ thống gợi ý) được đảm nhận và xây dựng bởi ML Engineer. Nói chung là công việc thiên về Computing hơn là giải quyết vấn đề của Business.
Vì cũng là Software Engineer nên ML Engineer vẫn tuân thủ theo quy trình phát triển phần mềm (software development process).
Kết luận
Tóm gọn lại đây là một bảng so sánh về Data Scientist và Machine Learning Engineer.
Data Scientist | ML Engineer | |
---|---|---|
Background | Kinh tế, tài chính, marketing.. | Computer Science / IT |
Education | Master, PhD | Bachelor |
Working | Research, R&D, Business Solving | Computing, Software Engineer |
Tech skills | Data Mining, Machine Learning, AI, Visualisation, Python, R, SPSS, Matlab,.. | Algorithm, Data Structure, Machine Learning, AI, Docker, CI/CD, Deployment, Python, Java, Scala.. |
Softskill | Thuyết trình, giao tiếp, Kĩ năng kể chuyện (story telling) | Team work, individual |
Lưu ý thêm cho các bạn, theo kinh nghiệm của mình, chức danh ở một số công ty có thể khác hoặc nhập nhằng giữa hai công việc này với nhau. Trong trường hợp này, các bạn nên đọc kĩ nội dung công việc để hiểu rõ trước khi apply vào vị trí đó nha.
Đọc thêm cho biết:
-
Link Reddit https://www.reddit.com/r/datascience/comments/i48b5q/for_those_that_work_for_a_team_that_has_both_data/
-
Link của tui: Tất tần tật về Data Scientist và Machine Learning Engineer https://www.dataguystory.com/post/2020-06-03-tat-tan-tat-data-scientist-machine-learning-ai-engineer/
Credits: hình ảnh được lấy từ internet