Mục tiêu
Là một người mới hoàn toàn, mục tiêu của bạn nên là:
- Làm quen với các khái niệm cơ bản (biến, vòng lặp, điều kiện, hàm).
- Luyện tập hơn 30 bài tập lập trình.
- Xây dựng 2 dự án để áp dụng các khái niệm đã học.
- Làm quen với ít nhất 2 framework.
- Bắt đầu với IDE, GitHub, hosting, dịch vụ, v.v.
Sau khi hoàn thành, bạn sẽ trở thành một Junior Python Developer.
Kế hoạch tổng thể:
Bây giờ, mình sẽ chia kế hoạch theo từng tuần cho bạn.
1. Làm quen với Python
Hãy tò mò và khám phá cách làm việc với Python. Hãy kiểm tra càng nhiều thứ càng tốt.
- Ngày 1: 4 khái niệm cơ bản (3 giờ) →
print
, biến, nhập dữ liệu, câu lệnh điều kiện (if-else
). - Ngày 2: 4 khái niệm cơ bản (5 giờ) → List, vòng lặp
for
, vòng lặpwhile
, hàm, import module. - Ngày 3: Bài tập lập trình đơn giản (4 giờ) → Hoán đổi hai biến, chuyển đổi độ C sang độ F, tính tổng các chữ số của một số, kiểm tra số nguyên tố, tạo số ngẫu nhiên, loại bỏ phần tử trùng lặp trong danh sách, v.v.
- Ngày 4: Bài tập lập trình trung bình (5 giờ) → Đảo ngược chuỗi (kiểm tra palindrome), tính GCD, gộp hai mảng đã sắp xếp, trò chơi đoán số, tính tuổi, v.v.
- Ngày 5: Cấu trúc dữ liệu (4 giờ) → Stack, Queue, Dictionary, Tuple, Cây, Danh sách liên kết.
- Ngày 6: Lập trình hướng đối tượng - OOP (5 giờ) → Đối tượng, Lớp, Phương thức & Constructor, Kế thừa trong OOP.
- Ngày 7: Thuật toán (5 giờ) → Tìm kiếm (Tìm kiếm tuyến tính và nhị phân), Sắp xếp (Bubble sort, Selection sort), Đệ quy (tính giai thừa, dãy Fibonacci), Độ phức tạp thời gian (Tuyến tính, Bậc hai, Hằng số).
2. Bắt đầu phát triển phần mềm (Xây dựng dự án)
Hãy tập hợp mọi thứ lại để tạo ra một dự án thực tế.
- Ngày 1: Làm quen với IDE (4 giờ) → Chọn một IDE tốt, mình khuyên dùng VS Code và cài đặt Python Extension.
- Ngày 2: Tìm hiểu về GitHub (5 giờ) → Tạo repository, thử commit, diff, push code. Học về branch, merge, pull request.
- Ngày 3: Dự án đầu tiên - Máy tính đơn giản (4 giờ) → Làm quen với Tkinter, tạo một ứng dụng máy tính đơn giản.
- Ngày 4-6: Dự án cá nhân (5 giờ mỗi ngày) → Chọn một dự án và bắt đầu làm. Nếu chưa có ý tưởng, hãy tham khảo danh sách dự án Python thú vị.
- Ngày 7: Hosting (5 giờ) → Học cách triển khai dự án lên server, tạo tài khoản Heroku và deploy ứng dụng.
Tại sao phải làm dự án?
- Học qua video hay khóa học không đủ! Bạn cần áp dụng kiến thức vào thực tế.
- Làm dự án giúp bạn suy nghĩ và giải quyết vấn đề, chứ không chỉ làm theo hướng dẫn.
3. Làm quen với quy trình phát triển phần mềm
Tuần thứ 3 sẽ giúp bạn hiểu về quy trình phát triển phần mềm. Bạn không cần thành thạo tất cả, nhưng hãy biết những điều cơ bản.
- Ngày 1: Cơ bản về Cơ sở dữ liệu (4 giờ) → Câu lệnh SQL (
CREATE TABLE
,SELECT
,WHERE
,UPDATE
), các hàm SQL (AVG
,MAX
,COUNT
), chuẩn hóa dữ liệu, JOIN (INNER JOIN, OUTER JOIN). - Ngày 2: Sử dụng Cơ sở dữ liệu với Python (5 giờ) → Làm việc với SQLite hoặc Pandas, kết nối, tạo bảng, thêm dữ liệu, đọc dữ liệu.
- Ngày 3: API (5 giờ) → Cách gọi API, học về JSON, microservices, REST API.
- Ngày 4: Numpy (4 giờ) → Làm quen với thư viện Numpy, thực hành 30 bài tập cơ bản.
- Ngày 5-6: Xây dựng Website Portfolio (5 giờ mỗi ngày) → Học Django, xây dựng website cá nhân, tìm hiểu Flask.
- Ngày 7: Kiểm thử và Debugging (4 giờ) → Học về Unit Test (PyTest), Logging, Debugging.
4. Chuẩn bị nghiêm túc để xin việc
Mục tiêu tuần 4 là tìm việc làm hoặc ít nhất là chuẩn bị tốt cho tương lai.
- Ngày 1: Viết CV (5 giờ) → Tạo một CV một trang, đưa phần tóm tắt kỹ năng lên đầu, liệt kê các dự án có link GitHub.
- Ngày 2: Website Portfolio (6 giờ) → Viết ít nhất 2 bài blog và thêm vào website cá nhân.
- Ngày 3: Tạo tài khoản LinkedIn → Cập nhật tất cả thông tin từ CV lên LinkedIn.
- Ngày 4: Chuẩn bị phỏng vấn → Tìm hiểu câu hỏi phỏng vấn, luyện tập 10 bài tập thuật toán trên giấy, tìm câu hỏi trên Glassdoor, Careercup.
- Ngày 5: Mở rộng mối quan hệ → Tham gia các sự kiện Meetup, hội chợ việc làm, gặp gỡ nhà tuyển dụng.
- Ngày 6: Bắt đầu ứng tuyển → Google "Python Jobs", chọn 3 công việc, tùy chỉnh CV cho từng vị trí. Tìm 2-3 kỹ năng chưa biết trong mô tả công việc và học trong 3-4 ngày tiếp theo.
- Ngày 7: Học từ thất bại → Nếu bị từ chối, hãy tìm ra 2 kỹ năng bạn cần cải thiện và dành 4-5 ngày để học thật sâu.
Sự thật về việc tìm việc
- Bạn sẽ không bao giờ cảm thấy 100% sẵn sàng để đi làm.
- Bạn không cần biết mọi thứ, chỉ cần thành thạo một vài kỹ năng chính và làm quen với các công nghệ khác.
Tận hưởng quá trình học tập
- Học là một quá trình! Bạn sẽ gặp khó khăn, nhưng càng cố gắng, bạn sẽ càng giỏi hơn.
- Nếu bạn hoàn thành 100% kế hoạch này trong 28 ngày, thật tuyệt! Nhưng nếu chỉ hoàn thành 60-70%, bạn vẫn đủ khả năng trở thành một lập trình viên giỏi.
👉 Bạn có thể học từ đâu?
- Programming Hero (ứng dụng học Python thú vị)
- Learn Python for Data Science (khóa học online miễn phí)
- Chuỗi video trên YouTube
Chúc bạn thành công trên hành trình học Python! 🚀