Menu
CoddyTech
Lộ trình học

Lộ trình kỹ sư phần mềm

Đúng thứ tự mà một kỹ sư đang đi làm sẽ dạy bạn: học thật vững một ngôn ngữ, dòng lệnh, quản lý phiên bản, cơ sở dữ liệu, rồi cấu trúc dữ liệu và thuật toán mà buổi phỏng vấn kỹ thuật nào cũng đòi hỏi, và cuối cùng là viết code người khác đọc được. Miễn phí, thực hành ngay trên trình duyệt.

2,217,844+ người học code đã đăng ký các khóa học này

627 bài học615 thử thách2,397 câu hỏi trắc nghiệm

Lộ trình kỹ sư phần mềm, từng bước một

18 khóa học6 phần627 bài học615 thử thách2,397 câu hỏi trắc nghiệm

Mỗi bước là một khóa học có sẵn trên Coddy. Học theo thứ tự, hoặc vào thẳng bước bạn còn thiếu; tiến độ được lưu riêng cho từng khóa học.

  1. 1
    Bắt đầu bước nàyBắt đầuBiến, luồng điều khiển, hàm, tập hợp dữ liệu, rồi lớp và đối tượng, bằng Python. Mọi thứ sau bước này đều được viết bằng một ngôn ngữ, nên đây là ngôn ngữ cần học sâu chứ không phải học nhanh. Bạn thích Java, C++ hay Go hơn? Mỗi ngôn ngữ đều có một hành trình đầy đủ trên Coddy và các bước sau cũng có ở tất cả các ngôn ngữ đó.Bắt đầuTrang riêng
  2. 2
    Bắt đầu bước nàyBắt đầuDi chuyển trong hệ thống tệp, quản lý quyền truy cập, nối các lệnh bằng pipe, đọc log và viết shell script đầu tiên. Máy chủ, container, pipeline CI và hầu hết công cụ cho lập trình viên đều được điều khiển từ terminal.Bắt đầuTrang riêng
  3. 3
    Bắt đầu bước nàyBắt đầuCommit, nhánh, merge, xung đột, remote và cách hoàn tác sai lầm an toàn. Mọi công việc, mọi dự án mã nguồn mở và mọi bài tập về nhà khi ứng tuyển đều nằm trong một repository Git; học Git ngay sau terminal giúp mọi bài tập về sau diễn ra đúng như công việc thật.Bắt đầuTrang riêng
  4. 4
    Bắt đầu bước nàyBắt đầuChọn, lọc, nối, nhóm và tổng hợp dữ liệu trên các bảng thật. Gần như mọi ứng dụng đều là một lớp mỏng bên trên cơ sở dữ liệu, và một kỹ sư phần mềm không đọc được truy vấn thì không thể gỡ lỗi sản phẩm mình đang làm.Bắt đầuTrang riêng
  5. 5
    Bắt đầu bước nàyBắt đầuStack, queue, danh sách liên kết, cây nhị phân và bảng băm, mỗi cấu trúc đều được cài đặt từ đầu rồi đem ra giải bài tập. Đây là vốn từ vựng của mọi buổi phỏng vấn kỹ thuật và là lý lẽ đằng sau mọi quyết định về hiệu năng trong code thật.Bắt đầu
  6. 6
    Bắt đầu bước nàyBắt đầuĐệ quy trước, rồi đến các thuật toán sắp xếp kinh điển: bubble, selection, insertion, merge và quick, tự viết và so sánh với nhau. Bạn hiểu vì sao một thuật toán nhanh chứ không chỉ biết là nó nhanh, và xem chính những ý tưởng đó chuyển động trong công cụ trực quan hóa thuật toán của Coddy.Bắt đầu
  7. 7
    Bắt đầu bước nàyBắt đầuNguyên tắc clean code, một dự án hướng đối tượng xây từ đầu đến cuối, và một kho bài tập lập trình để tự giải không cần hướng dẫn. Code dễ đọc là kỹ năng mà review code thực sự kiểm tra, và giải được bài toán chưa gặp là điều buổi phỏng vấn thực sự đo lường.Bắt đầu
Bạn nhận được gì
Mọi thứ bạn sẽ dùng để học lập trình

Học qua thực hành

Viết code thật, truy vấn cơ sở dữ liệu, xây dựng trang web và làm chủ prompt AI. Các bài học tương tác bao quát mọi kỹ năng mà lập trình viên hiện đại cần.

playground.js
Trình chỉnh sửa code
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Đầu vào
"Alex"
Đầu ra
"Hello, Coddy! Alex"

Xây dựng streak

Học đều đặn và nhìn tiến độ của bạn lớn dần! Theo dõi thói quen code mỗi ngày, bảo vệ streak bằng ngày đóng băng và nhận phần thưởng khi học mỗi ngày.

12 ngày streak

Quay lại ngày mai để giữ streak!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Gấp đôi hoặc mất hết

Ngày 5/7

fire Freeze icon

Đóng băng streak

2 left

Code ở mọi nơi

Mang hành trình lập trình theo bên mình! Không cài đặt, không tải về: chỉ cần mở ra và bắt đầu code. Có trên iOS, Android và Web với đánh giá 4,9 sao.

Python
7Streak
250Điểm
5Năng lượng
Biến
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
Tiếp tục
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
Hành trình
Mục tiêu
Bảng xếp hạng
Hồ sơ
4.9
Ngôi saoNgôi saoNgôi saoNgôi saoNgôi sao
Đánh giá

Bạn không đơn độc

Thi đấu trên bảng xếp hạng toàn cầu, mời bạn bè để nhận phần thưởng và cùng nhau ăn mừng thành công. Học code cùng bạn bè vui hơn nhiều!

Giải đấu Challenger
Giải đấu ChallengerTop 7 được thăng hạng
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconVùng thăng hạngleaderboard Arrow Up icon

Mọi cách để học

Đọc, nghe, tự kiểm tra, hỏi AI hoặc tra cứu bất cứ điều gì bạn đã học. Mỗi bài học phù hợp với trình độ của bạn.

Giới thiệu về biến
Âm thanh

Biến là một vùng chứa có tên, lưu một giá trị mà bạn có thể dùng lại sau trong chương trình.

Trong Python, bạn tạo biến bằng cách viết tên, dấu bằng, rồi giá trị muốn lưu.

Giá trị có thể thay đổi theo thời gian. Gán lại tên đó chỉ đơn giản là trỏ nó tới một giá trị mới.

1xSarah

Nhận chứng nhận

Nhận chứng nhận cho mỗi khóa học bạn hoàn thành. Thêm vào hồ sơ LinkedIn và CV để cho nhà tuyển dụng thấy kỹ năng lập trình của bạn.

CoddyGiấy chứng nhận hoàn thành
Chứng nhận rằngNguyễn Văn Anđã hoàn thành xuất sắc
python iconPython cơ bản
Đã xác minh
NgàyTh1 2026
LinkedInThêm vào LinkedIn

Vì sao nên theo lộ trình kỹ sư phần mềm này trên Coddy

  • Một ngôn ngữ, nhưng học sâu. Phần lớn các lộ trình liệt kê sáu ngôn ngữ; một kỹ sư đi làm chỉ cần một ngôn ngữ mà mình tư duy được bằng nó. Ở đây ngôn ngữ đó là Python, và các khóa học cấu trúc dữ liệu cũng có ở mười hai ngôn ngữ khác nếu bạn muốn dùng Java, C++ hoặc Go.
  • Luyện tập đúng kiểu phỏng vấn. Các bước cấu trúc dữ liệu và thuật toán chính là chất liệu tạo nên những buổi phỏng vấn kỹ thuật, và bạn học bằng cách tự viết stack, danh sách liên kết và thuật toán sắp xếp thay vì chỉ đọc về chúng.
  • Gợi ý AI đọc code của bạn, không phải một đường dây nóng. Khi một test không qua, Bugsy xem bạn đã viết gì và gợi hướng sửa mà không đưa luôn đáp án.
  • Chứng nhận miễn phí cho các khóa Python, Git, SQL, Linux và phần lớn khóa cấu trúc dữ liệu và thuật toán, mỗi chứng nhận đều xác minh được tại một URL riêng. Không có 'chứng nhận kỹ sư phần mềm' chung nào cả, vì tấm bằng thật sự là kỹ năng mà nhà tuyển dụng có thể kiểm tra.

Câu hỏi thường gặp về việc trở thành kỹ sư phần mềm

Một ngày làm việc của kỹ sư phần mềm thực sự ra sao?

Đọc code nhiều hơn viết, sửa hệ thống có sẵn thường xuyên hơn xây mới, và dành một phần thời gian đáng ngạc nhiên trong terminal và lịch sử Git. Vì thế lộ trình này đặt Git, Linux và code dễ đọc ngang hàng với chính ngôn ngữ lập trình: công việc chủ yếu là làm việc bên trong code do người khác viết.

Không có bằng đại học có trở thành kỹ sư phần mềm được không?

Được, và rất nhiều kỹ sư đang đi làm đã làm như vậy. Tấm bằng cho thấy bạn học được ngôn ngữ đầu tiên, suy luận được về cấu trúc dữ liệu và thuật toán, và hoàn thành được các dự án dài; lộ trình này dạy trực tiếp hai điều đầu, còn với điều thứ ba thì cho bạn chứng nhận và một danh mục bài tập đã giải. Một số nhà tuyển dụng vẫn lọc theo bằng cấp, đa số thì không còn nữa, và dù thế nào thì cũng không ai bỏ qua vòng phỏng vấn kỹ thuật.

Kỹ sư phần mềm nên học ngôn ngữ lập trình nào đầu tiên?

Python, với gần như tất cả mọi người, vì nó cho bạn học các ý tưởng lập trình mà không phải vật lộn với cú pháp, và mọi khái niệm đều mang sang ngôn ngữ khác được. Lộ trình này bắt đầu từ đó. Nếu bạn đã biết mình muốn làm lập trình hệ thống, lộ trình vẫn giữ nguyên khi thay C++ hoặc Go vào bước một; các khóa học cấu trúc dữ liệu và thuật toán trên trang này được dạy bằng mười ba ngôn ngữ.

Mất bao lâu để trở thành kỹ sư phần mềm?

Khoảng sáu đến mười hai tháng học đều đặn, mỗi ngày chừng một giờ, để đạt mức vượt qua buổi phỏng vấn kỹ thuật cho vị trí junior. Trên lộ trình này, ngôn ngữ đầu tiên mất sáu đến tám tuần, Git, SQL và dòng lệnh thêm khoảng một tháng, còn các bước cấu trúc dữ liệu và thuật toán từ hai đến ba tháng. Bạn sẵn sàng đi làm khi giải được những bài toán chưa gặp, chứ không phải khi học hết một danh sách.

Có thật sự cần học cấu trúc dữ liệu và thuật toán không?

Với phỏng vấn thì có, không có ngoại lệ: mọi buổi phỏng vấn kỹ thuật ở công ty lớn hay nhỏ đều dựa vào chúng. Với công việc thì cần hơn người mới nghĩ: biết khi nào bảng băm tốt hơn danh sách, hay vì sao một lời giải đệ quy làm tràn stack, là điều phân biệt code chạy được trên dữ liệu test với code chạy được trên môi trường thật. Các bước ở đây dạy chúng bằng cách tự xây từng cấu trúc.

Lộ trình kỹ sư phần mềm này có đủ để được tuyển dụng không?

Đây là nền tảng mà công việc nào cũng mặc định bạn đã có, được dạy bài bản, cộng thêm phần kiến thức phỏng vấn. Điều lộ trình không làm là chọn chuyên môn cho bạn: framework web, mobile, lập trình hệ thống hay dữ liệu là lớp tiếp theo, và các lộ trình backend và frontend của Coddy tiếp nối ngay sau lộ trình này. Thêm một hai dự án tự xây không cần hướng dẫn là bạn đã có đủ những gì một hồ sơ ứng tuyển junior cần.

Khóa học kỹ sư phần mềm này có miễn phí không?

Mọi khóa học trên lộ trình đều miễn phí: bài học, trình soạn thảo code và terminal trên trình duyệt, gợi ý AI và các chứng nhận dọc đường. Pro bỏ giới hạn năng lượng hằng ngày và thêm trợ giúp AI không giới hạn, và không có gì trên trang này bị khóa sau gói đó.

Tôi có nhận được chứng nhận cho lộ trình Kỹ sư phần mềm không?

Có. Hoàn thành mọi bước và bạn nhận một chứng nhận miễn phí cho cả lộ trình Kỹ sư phần mềm. Chứng nhận liệt kê từng khóa học bạn đã hoàn thành trên đường đi và liên kết đến chứng nhận riêng của từng khóa, để ai cũng có thể kiểm tra mọi kỹ năng được nêu. Bạn có thể thêm nó vào hồ sơ LinkedIn. Đây là chứng nhận hoàn thành của Coddy, không phải văn bằng được kiểm định.

Các lộ trình học khác

Cùng các khóa học, sắp xếp cho một vai trò khác. Tiến độ được giữ lại: khóa học đã hoàn thành ở một lộ trình được tính ở mọi lộ trình có khóa học đó.

Tất cả lộ trình học
Hình minh họa các ngôn ngữ lập trình của Coddy

Bắt đầu lộ trình Kỹ sư phần mềm miễn phí

Bắt đầu học