Tiếp nối series về nghề, mình dành bài viết này chia sẻ về lộ trình + nguồn tự học để trở thành một Data Analyst dựa trên những trải nghiệm của bản thân trong hành trình 3 năm vừa qua.
Nếu như bạn lần đầu đến với blog mình, mời bạn xem qua bài viết tổng quan nói về kinh nghiệm trở thành một DA của mình tại đây
Nếu như bạn là người mới đang tìm hiểu về nghề Data Analyst, mình hi vọng bạn hãy dành vài phút để xem qua các công việc thực tế của một DA tại bài viết này. Hoặc có thể tiết kiệm thời gian bằng cách xem hết chiếc video bên dưới để hình dung rõ ràng về công việc hằng ngày khi làm Data. Xem xong nhớ LIKE và SUBCRIBE ủng hộ kênh tớ nhé!
Bởi lẽ, lời khuyên chân thành mà Maz muốn gửi gắm đến mọi người (những ai đang tìm hiểu nghề Data và có ý định chuyển đến ngành này), hãy tìm đọc và hiểu thật kĩ giá trị cốt lõi của người phân tích dữ liệu là gì, công việc cụ thể ra sao? Sau đó tự hỏi bản thân, mình có thật sự thích thú với nghề data, vị trí mong muốn trong lĩnh vực này là gì? Điều gì ở bạn phù hợp với sự lựa chọn này? Nếu câu trả lời dứt khoát và rõ ràng hết các vấn đề, Maz tin bạn sẽ đạt được mục tiêu của mình sớm thôi.
Rèn luyện các kĩ năng và kiến thức về nghề Data Analyst mất bao lâu? Thứ tự trau dồi như thế nào? Nguồn tự học tốt ở đâu? Các nội dung ở đây hoàn toàn dựa trên kinh nghiệm và sự tìm hiểu của riêng cá nhân Maz. Bạn có thể tự kiểm chứng và chọn lọc những gì cần thiết cho bản thân khi đọc qua bài viết nhé.
4 – 6 tháng là con số ước lượng mà mình nghĩ mọi người hoàn toàn có thể thực hiện được nếu như thật sự quyết tâm và nghiêm túc. Tuy nhiên, học sao cho đúng, cái gì đầu tư học tốt, học sâu? Để trả lời câu này thì việc đầu tiên cần làm là bạn phải hiểu đúng bản chất và vai trò của Data Analyst.
Ngẫm lại vai trò của Data Analyst: là người tìm ra insights thông qua những con số giúp business tạo ra những quyết định có cơ sở, cải thiện tình hình doanh nghiệp và chất lượng sản phẩm. Như vậy người DA phải có năng lực thực hiện được công việc ở các giai đoạn: từ preparation – exploratory – modeling – communication. Ở đây mình chia sẻ chi tiết các nội dung cần học trong Roadmap trên theo từng giai đoạn + nguồn tài liệu kèm theo để mọi người có thể dễ dàng hình dung được các kiến thức và kĩ năng sẽ áp dụng vào các công việc làm phân tích ra sao:
I. Cần gì để làm tốt Data Preparation?
Có 2 yêu cầu cần một DA đạt được ở giai đoạn này:
- Hiểu được kiến thức tổng quan về cơ sở dữ liệu, đặc biệt là Relational database, schema, table, constraints
Source: https://www.youtube.com/watch?v=vOk3X2_GOCM. Đây là video mà mình thấy trình bày nhẹ nhàng tình cảm, mang đến cho bạn cái nhìn tổng quan nhất. Nếu phần nào chưa rõ, bạn hãy tiếp tục google thêm nhe. Nếu có thời gian, hãy “ngó” qua các khái niệm “SQL vs NoSQL” ở đây nữa nhé.
2. Thực hiện được việc querying, transforming, profiling dữ liệu từ database: Có thể dùng SQL hoặc Python
SQL: Bạn cần nắm bắt được các phần chính sau đây:
- Hiểu được ngôn ngữ SQL có thể được thao tác trên nhiều tools/ platforms (SQL Sever Management Studio, Google BigQuery, …) và nền tảng khác (Redash, Metabase, Superset, …) tùy thuộc vào mỗi công ty đang sử dụng cái nào.
- Thành thạo các câu lệnh SQL mà Data Analyst thường sử dụng:
- Select + From statement
- Where statement
- Group By + Window function
- Join function
Sources:
- Basic + Intermediate tutorials of Alex The Analyst
- Detailed tutorial: https://www.youtube.com/playlist?list=PL08903FB7ACA1C2FB
- Course: Mình chưa từng học qua các courses nào cả, tuy nhiên có review một lượt thì thấy course này của Khan Academy hoặc của Linkedin
- Hoặc bạn có thể tham khảo nội dung trong khóa SQL của mình xây dựng:
Nội dung chi tiết tại: Maz Học Data. Không chỉ có kiến thức SQL mà Maz còn cung cấp cho bạn các phương pháp phân tích phổ biến, giúp bạn đến gần hơn với công việc phân tích dữ liệu
PYTHON: dùng ở giai đoạn này cần nắm bắt các concepts sau:
- Read and write text files, Microsoft excel files
- Work with JSON
- Làm quen với thư viện Numpy và Pandas để có thể làm data wrangling:
- Xử lý missing values
- Cleaning & formatting data từ nhiều nguồn dữ liệu: Merge, concatenate, combining data frames, pivoting, mapping, replace, group by, …
Sources: Mình sẽ đề cập ở phần tiếp theo
II. Data exploratory là tiêu điểm
Trong giai đoạn này, mục tiêu chính của bạn là “khai phá” ý nghĩa của data để đưa ra insights. Vì thế bạn cần có sự kết hợp hài hòa giữa domain knowledge + statistical techniques + visualization skills + problem solving strategies.
- Trau dồi problem solving skill và domain knowledge
Khi bạn đủ hiểu về mảng công việc mình đang làm (marketing, risk, finance, …) bạn sẽ có đủ kiến thức và kinh nghiệm để biết rõ từng chỉ số, các root causes có thể xảy ra đối với bài toán bạn đang giải quyết. Khi đã hiểu rõ rồi thì việc giải quyết như thế nào đầy tính logic, có hệ thống để đảm bảo không bỏ sót các khía cạnh của vấn đề, problem solving skill sẽ giúp bạn chuyện này.
DOMAIN KNOWLEDGE: Mình khuyên bạn hãy tập trung vào một lĩnh vực mà mình đang theo đuổi hoặc vị trí hiện tại đang làm việc để bắt đầu đào sâu. Trong quá trình làm việc và tìm hiểu thêm, mình có tổng hợp lại một số nguồn tham khảo:
- Overall knowledge: Gary Fox – strategy and innovation consultant (https://www.garyfox.co/), rất nhiều câu chuyện về business kết hợp với các technical và digital solution trong suốt quá trình làm nghề của tác giả
- Books về Marketing Analytics: Nguồn tổng hợp khá chất lượng của The I Concept
- Product Analytics: Product School
PROBLEM SOLVING:
- Hãy bắt đầu với quyển sách kinh điển bàn về phương pháp giải quyết vấn đề qua những case studies của “con nít” cực dễ hiểu Problem Solving 101
- Quyển sách dạy về problem solving strategies chi tiết, cực kì giá trị “The one skill that changes everything”
2. Áp dụng Statistics
Các kĩ thuật thống kê là vô cùng cần thiết trong quá trình “khám phá” dữ liệu ở những bước đầu tiên, khi bạn mới tiếp xúc với data. Vì thế hãy đảm bảo bạn có thể nắm rõ ý nghĩa và sử dụng statistics hợp lí trong giai đoạn làm EDA (Exploratory Data Analysis):
- Hiểu và phân biệt các topics: Type of data, descriptive statistics, inferential statistics
- Nắm chắc phần kiến thức vô cùng quan trọng là Descriptive statistics:
- Categorical and numerical variables
- Ý nghĩa của histogram, scatter plots và box plots
- Các chỉ số: mean, median, mode, standard deviation and coefficient of variation
Sources:
- Youtube:
- Đây là kênh dạy Statistics cực kì thú vị và dễ hiểu mà mình tâm đắt nhất StatQuest with Josh Starmer
- Kênh thứ hai mình hay tham khảo với những nội dung mà StatQuest không có là MarinStatsLectures
- Courses: Đây là 1 khóa mình đã join trên Udemy với giá 13$ Statistics for Data Science and Business Analysis cho bạn một bức tranh toàn cảnh về statistics.
3. Dùng BI tools (Data visualization tools) cũng làm được EDA
Với mình, các BI tools có thể giúp Data Analyst thực hiện rất tốt công việc phân tích dữ liệu. Bởi lẽ khả năng trực quan hóa vô cùng dễ dàng sẽ giúp chúng ta tìm ra nhanh chóng những insights mong muốn. Vậy thì mình cần học điều gì ở đây?
- Nắm chắc kiến thức về ý nghĩa của các loại biểu đồ: How to choose the right chart for your data
- Ngoài ra, làm dashboard cũng là một công việc cần thiết của DA. Hãy đọc kinh nghiệm tạo ra một effective dashboard của mình ở bài viết này nhé
Chắc mọi người cũng hay được nói nhiều về Tableau, Power BI, Qlik, Google Data Studio, … Đây ắt hẳn là những BI tools phổ biến nhất trên thị trường hiện nay. Ở đây mình sẽ không so sánh chất lượng giữa các tools, vì mỗi sản phẩm sẽ vượt trội ở một tính năng riêng. Nhưng với kinh nghiệm của mình, việc chọn học những tool phổ biến hơn (có cơ hội được sử dụng ở nhiều công ty) thì sẽ là Tableau và Power BI.
Sources:
- Tableau:
- Bạn có thể follow theo Hướng dẫn tự học Tableau Data Visualisation hiệu quả của anh Hiếu Hoàng
- Kênh youtube mọi thứ về Tableau
- Power BI:
- Avi Singh – PowerBI từ căn bản đến nâng cao
- Guy in a Cube – Series PowerBI phù hợp cho người mới bắt đầu
- Sách về Business Intelligence: Sách hay về BI
4. Python – là ngôn ngữ hiện tại mình dùng làm EDA mỗi ngày
Hiện nay, Python thường là một optional requirement trong các JD tuyển dụng vị trí Data Analyst ở các công ty Việt Nam. Tuy nhiên, thị trường ngày một phát triển hơn vì thế trong vài năm tới Python cũng sẽ trở nên phổ biến như SQL của hiện tại. Với mình, việc dùng Python làm EDA là một “best practice”. Mời bạn xem qua “output” của việc EDA với Python sẽ như thế nào nhé (Bạn có thể xem full bài phân tích của DMITRY UAROV tại đây.).
Python không những có thể query dữ liệu mà còn có nhiều thư viện hỗ trợ chúng ta clean, transform, làm statistics và visualization. Cùng mình tham khảo các nội dung cần và nguồn học Python thôi.
- Numpy và Pandas cần thiết cho việc clean, transform và analyze data:
- Matplotlib & Seaborn hỗ trợ việc visualize data với các thư viện vẽ đầy đủ các thể loại chart
- Matplotlib tutorial
- Python Seaborn Tutorials
- File jupyter notebook seaborn sample code
III. Modeling & Evaluation
Với mình, công việc áp dụng các mô hình thuật toán vào phân tích để giải quyết cho Predictive Analytics đòi hỏi sự am hiểu và thực hành tốt Machine Learning. Tuy nhiên, input của các model Machine Learning thường là các features được tìm ra từ bước descriptive và diagnostic analytics. Điều này có nghĩa, bạn phải thực sự hiểu bài toán, vấn đề đang giải quyết, làm EDA sâu sắc để có thể tạo ra input cho bước modeling.
Trong hành trình 3 năm qua, mình may mắn được làm việc cùng với team có cả các bạn Data Engineers và Data Scientists, nên có thể hiểu phần nào tính chất công việc của cả 2 vị trí này. Mình đã từng có ý định học Machine Learning ngay từ những ngày đầu bước vào nghề DA, nhưng lúc đó anh leader đã ngăn mình lại và bảo, hãy học và làm tốt bài toán descriptive và diagnostic trước khi bắt đầu với Modeling. Vì thế mãi đến tận bây giờ, khi mình thật sự đủ hiểu về cái nghề Data Analyst, mình mới enroll khóa học Machine Learning đầu tiên.
- Highly recommend khóa ML bất hủ của Andrew Ng với mọi người nhé.
IV. Communication of insights sẽ chốt hạ thành quả
90% thời gian DA sẽ dành để làm việc với dữ liệu, ước chừng chỉ 10% còn lại được dùng để giao tiếp và trình bày kết quả mình làm ra với đối tác và sếp. Nhưng mà, 10% lại quyết định thành công hay thất bại của 90% công sức. Vì thế communication và presentation skills là những kĩ năng tuyệt đối người DA không thể lơ là.
3 Tips giúp mình thực hiện communication of insights xịn hơn:
- Luôn nhớ Data Storytelling là vô cùng quan trọng. Làm EDA bạn sẽ tìm ra rất rất rất là nhiều insights, nhưng cái nào thật sự quan trọng và ý nghĩa với business và bài toán bạn đang đối mặt thì mới chọn nó. Hãy đọc quyển sách gối đầu giường này để củng cố tư duy trình bày dữ liệu nhé.
- Khi mình thuyết trình, ngoài việc hiểu sâu sắc mọi ngóc ngách các thông tin từ data để luôn sẵn sàng trả lời mọi câu hỏi tốt nhất có thể. Mình luôn tâm niệm trong suy nghĩ: Focus on my audiences. Quan sát, dự đoán cảm xúc và suy nghĩ của người nghe trong khi trình bày, nó giúp các thông điệp mình truyền tải tăng độ thu hút và hiệu quả bài thuyết trình cũng tăng theo.
- Trước khi làm slide deck hay thuyết trình, hãy đặt mình vào vị trí là audience (họ là ai và họ muốn gì) để tìm ra một bố cục và mạch câu chuyện tốt nhất để thể hiện.
V. Xây dựng Portfolio and Resume
Đây là bước cuối cùng nhưng lại là việc mà mình cần phải làm từ nay và cả về sau cho sự nghiệp. Trong suốt quá trình trau dồi các kiến thức và kĩ năng ở trên, bạn đều thực hành với dữ liệu thực tế. Vì thế hãy dùng chúng tạo nên một “hồ sơ năng lực” xịn xò hơn mỗi ngày nhé.
- 2 bài viết đầu tiên của mình về build portfolio với SQL và Tableau
- Bạn có thể tham khảo hướng dẫn khá chi tiết của Alex The Analyst
Kết
Học gì trước, gì sau? Mình đã chia sẻ kinh nghiệm đúc kết của 3 năm qua trong Roadmap 4 tháng này. Đồng thời ở mỗi topics mình cũng đã nói chi tiết các key points trong công việc của một Data Analyst mà mình cần đầu tư lĩnh hội.
Maz không phải là một chuyên gia xuất sắc trong lĩnh vực data, nhưng Maz biết hành trình đến với nghề Data Analyst lắm gian truân đến nhường nào. Hi vọng câu chuyện của mình sẽ giúp các bạn rút ngắn được thời gian trên con đường bước chân vào nghề phân tích dữ liệu. Nếu thấy hữu ích, giúp mình chia sẻ với mọi người nhe.
Đôi lời tâm sự: Trong các bài viết trước, Maz nhận được rất nhiều câu hỏi mà các bạn nhắn gửi. Một trong những lời nhắn nhủ là Maz hãy ra bài viết thường xuyên hơn. Maz rất vui vì nhận được sự quan tâm của mọi người, nhưng bản thân Maz tâm niệm rằng, việc chia sẻ các nội dung liên quan đến kiến thức thì mình phải thật sự cẩn trọng và kĩ lưỡng để hạn chế những sai sót hết mức có thể. Vì thế tần suất ra blog mới có hơi lâu nhưng hi vọng vẫn mang lại những nội dung chất lượng với mọi người.
Follow Maz tại đây để cùng cập nhật thông báo mỗi khi có bài viết mới nhé:
** Mọi thông tin trên blog đều thuộc bản quyền của blog Maz Nguyen. Vui lòng đọc kĩ Copyright Notice trước khi copy hoặc đăng tải lại nội dung/hình ảnh của bài viết **
—————————————————————————————————–
Maz có một dự án dạy học ở đây: Maz Học Data với SQL là course đầu tiên, bạn có thể tham khảo qua nếu thấy cần thiết nhé.
Em cảm ơn anh về tất cả những bài viết anh chia sẻ, đặc biệt là bài này. Em đã mò mẫm và có ý định học DA cách đây 1 năm. Nhưng vì k kỉ luật với bản thân và bị overwhelmed trước vô vàn kiến thức phải học. Em đã kéo dài và trì hoãn việc này. Nhưng khi đọc hết tất cả những bài chia sẻ của anh, em phải ^woww ^ lên khi đọc thấy anh đưa ra 1 roadmap chỉ 4 tháng .Nhờ v mà em cũng hình dung ra đc rõ hơn mình cần học gì . Và em hiểu ra nó k khó nhưng cũng k dễ, quan trọng ở kỉ luật và khi thực sự mình cómuốn theo đuổi không . Cảm ơn anh rất nhiều ạ
Thanks em nè. Chúc em sẽ vững vàng trong hành trình tiếp theo của mình nhé.
bài viết cực kỳ thú vị, chứng tỏ chủ bài viết ngoài đam mê, còn có khả năng tự học và truyền tải cho người khác đam mê đó!
SQL vs NoSQL or MySQL vs MongoDB – YouTube mình thấy cái này khá rõ ràng về SQL
Video tuyệt quá luôn, mình cũng có note ở trên bài viết cho mọi người. Thanks bạn đã chia sẻ với Maz nha ^_^
Em cảm ơn bài viết thật tâm huyết từ Anh.
Ngoài ra anh Hiếu có thể chia sẻ thêm giúp em các nguồn tự học và làm tốt bài toán descriptive và diagnostic được không ah, em cũng đang tự tìm về các cấp độ phân tích này.
Em cảm ơn anh Maz đã nhiệt tình chia sẻ ạ. Em cũng đang định hướng trở thành một DA và bài viết thật sự rất hữu ích với em ^^
chào a cho e hỏi e học ngành lập trình viên thì có thích hợp học data anylist k ạ.E hỏi vậy vì ngành này cần có kiến thức về kinh tế đk ạ ? Mong a giải đáp ạ
Có nha fen, việc học IT ở trường khiến bạn có 2 nền tảng về Dữ liệu và Thuật toán, dễ tiếp xúc với việc phát triển lên DA chỉ cần trau dồi về Business là hoàn toàn có thể join vào vị trí junior nếu bạn chứng minh cho nhà tuyển dụng thấy <3
về business thì học nnao ạ ? có nguồn học nào uy tín k ạ ?
Bạn tìm mấy cuốn sách về đọc thì sẽ tốt hơn á, vì business nó cũng liên quan tới nhiều thứ nên bạn biết nhiều về business + kỹ năng dev thượng thừa => God of IT, chung quy lại thì code nhiều, đọc sách nhiều để tăng kỹ năng đọc, siêng giao tiếp là bạn có được mọi thứ trừ kinh nghiệm thôi á. Chúc bạn thành công <3
Em chào anh Maz.
Cảm ơn anh vì bài viết rất tâm huyết cho những người trái ngành như em. Anh cho em hỏi DA có dùng nhiều toán kinh tế, kinh tế lượng không ạ?
Đọc xong bài viết thấy hết muốn học. Hix
Hi anh, anh ơi cho em hỏi bài viêt về Source học Python thì anh đăng chưa ạ? Em cảm ơn ạ.
Hi anh Maz,
Cảm ơn anh về bài viết cực kì chi tiết và tuyệt vời này. Tuy nhiên em còn hơi mơ hồ ở chỗ mình lấy data từ đâu, bằng cách nào trước khi làm sạch, sắp xếp, khám phá. Anh cho em hỏi mình dùng ngôn ngữ nào hay cách nào để thu thập data ạ?
Many thanks
Em chào anh. Trước hết thì xin cảm ơn anh vì những kiến thức anh đã chia sẻ trên bài viết ạ. Trong bài viết anh có nói đến việc profiling dữ liệu từ database bằng sử dụng Python. Em muốn xin source của anh về phần python này ạ (em thấy anh có note là sẽ nói trong phần sau nhưng em k tìm thấy bài viết nào nữa ạ). Em cảm ơn anh nhiềuu
Chào anh Maz !
Thật sự mà nói thì bài viết cực hay và cực kì chi tiết. Cảm ơn anh rất nhiều vì những kinh nghiệm cũng như bài học của anh.
Tuy nhiên, em có một thắc mắc. À thực sự không phải là thắc mắc, chỉ là em muốn confirm lại liệu em có nghĩ đúng không thôi ạ. Ở phần IV cụ thể là Communication of Insights, những tasks ở bước cuối cùng của phân tích dữ liệu bao gồm trình bày, diễn giải với audience. Nhưng em hong thấy anh đề cập gì tới dashboard hay data visualization, thì liệu những thứ này có nằm trong bước cuối đó không anh hay chúng thuộc về những bước khác trước đó ạ ?
Cảm ơn Maz. Bài viết rất hữu ích và chúc Maz có nhiều gặt hái trong công việc và cuộc sống nữa nhé.
Hi anh Maz, em hiện tại đang làm lập trình viên làm về dev em khá vững về sql và python thì em cũng đang tự học và cả các tool BI, mà sau khi xem qua một số bài tuyển dụng yêu cầu thì chỗ nào cũng yêu cầu phải biết và hiểu về xác suất thống kê. Anh Maz cho em hỏi một số nguồn tài liệu để có thể tự học về xác suất thống kê với ạ. Em cảm ơn
Bài viết thực sự rất bổ ích, cám ơn bạn đã dành thời gian để viết nên bài viết thực sự rất tâm huyết, hi vọng bạn sẽ duy trì và cho ra những bài viết hay về chủ đề cũng như chuyên ngành Data Analyst. Cám ơn bạn rất nhiều <3
Cảm ơn anh đã chia sẻ ạ. Bài viết thật sự rất chi tiết và hữu ích.
33 tuổi mới bắt đầu học để chuyển nghề này liệu có muộn quá ko em?
Có sách nào về DA hay cho em xin với ạ, em cảm ơn!
Hi bạn,
Cảm ơn đã chia sẽ những kinh nghiệm rất thú vị của bạn. Trong bài viết bnaj có share những cuốn sách về BI, mình thấy những cuốn sách này khá là dày và hơi khó đọc vì nhiều từ ngữ chuyên ngành nên vậy mình thường phải tốn rất nhiều thời gian để đọc.
Bạn có thể share cho mình cũng như mn về cách sử dụng những nguồn tài liệu này hiệu quả được ko?
Thankyou
E cảm ơn vì bài viết tâm huyết của anh.
A ơi a cho e hỏi cuốn Problem Solving 101 a để link trên này đủ trang chưa a.