Cảm giác như mới hôm qua mình mới chập chững vào nghề vậy mà đã theo nghề được 10 năm rồi. Nhân ngày năm mới mình viết ra vài dòng chia sẻ về quãng thời gian 10 năm làm về linux kernel, để mọi người có thể hiểu hơn về con đường mà các bạn sẽ đi.
Mình bắt đầu học và làm về Linux kernel từ năm 2013. Xuất phát từ đam mê tìm hiểu bản chất vấn đề, cách mà máy tính hoạt động được nên mình lựa chọn theo nghề này. Trong khoảng 4 năm đầu 2013 – 2017, do kiến thức còn nhiều hạn chế, cộng thêm việc Linux cũng phức tạp nên công việc của mình vô cùng áp lực. Có những lỗi mình mất 2 – 3 tháng mới debug ra được nguyên nhân. Đôi khi mình tự hỏi liệu khi đã nhiều tuổi, mình có tiếp tục chịu được áp lực như thế này không?
Trong 3 năm tiếp theo 2017 – 2020, mình làm về embedded Linux. Năm 2017 cũng là thời điểm mình tạo ra group “Cùng nhau học kernel” ( https://www.facebook.com/groups/259967441230713/?mibextid=oMANbw ). Do đặc thù bên embedded không cần can thiệp sâu vào tầng kernel nên công việc cũng bớt phần nào những áp lực. Mình luôn duy trì thói quen đọc sách, nghiên cứu thêm kiến thức từ hồi đi làm đến giờ. Nhờ vậy, càng ngày kiến thức càng được mở mang ra.
Từ sau năm 2020, mình lại quay về làm thuần về Linux kernel theo hướng can thiệp vào tầng nhân. Sau 7 năm vừa làm vừa học, đến thời điểm đó mình cảm thấy đã thực sự hiểu về hệ điều hành. Các áp lực trong công việc từ đó mà hoàn toàn biến mất.
Nhớ lại khoảng thời gian khi mới vào nghề, mình bắt đầu với những công việc đơn giản như quản lý thiết bị đang cắm vào máy tính, ghi log ra file. Còn hiện tại mình làm những thứ rất phức tạp như phát triển các tính năng về security, công nghệ cloud, virtualization trong nhân Linux.
Trải nghiệm về nghề của mình có khác gì sau 10 năm không?
Như mình thì thấy rất khác. Những năm đầu công việc đối với mình vất vả và áp lực. Lương cũng không hề cao so với công sức bỏ ra. Tuy nhiên, cho đến hiện tại mình cảm giác công việc của mình tương đối nhàn và ổn định. So với hồi mới đầu phải làm nhiều việc đơn giản thì hiện tại mình luôn được nghiên cứu về những công nghệ mới liên quan đến Linux, được giao cho phát triển những tính năng quan trọng. Càng làm lâu mình càng cảm thấy nhiều điều thú vị trong nghề. Hiện tại do đã am hiểu sâu về nhân nên lâu lắm rồi mình không còn trải nghiệm với các vấn đề khó trong công việc. Đa số các tính năng hoặc bug phát sinh mình đều phán đoán nguyên nhân ngay từ đầu.
So với hồi mới vào nghề thì hiện tại mình cũng lười hơn. Mình ham chơi game, cafe trà đá vào buổi tối. Công việc của mình hiện tại nhìn chung vẫn đang là 1 coder đúng nghĩa. So với tầng application thì các công nghệ về hệ điều hành thay đổi rất chậm. Ngoài ra do đặc điểm phân mảnh ra nhiều phiên bản, nên hệ điều hành Linux rất khó bị thay thế. Nếu làm sâu về hệ điều hành thì công việc phần nhiều sẽ là nghiên cứu, tỷ lệ thời gian nghiên cứu với development có lẽ là 7 – 3. Do đó, nếu tích luỹ đủ kinh nghiệm thì sẽ tiết kiệm được thời gian nghiên cứu, công việc sẽ rất nhàn. Mình luôn nghĩ sẽ code được đến khi về hưu.
Thực ra ngoài hệ điều hành Linux và các hệ điều hành dựa trên nhân Linux như Android, Vxwork… thì mình cũng biết làm trên 1 số hệ điều hành khác như Windows, MacOS, QNX. Cảm nhận chung của mình thì về mặt nguyên lý trong nhân chúng đều khá giống nhau. Ví dụ như các khái niệm về page nhớ, scheduling, system call…
Ngoài công việc chính là coder thì mình đang điều hành 1 công ty nhỏ do mình tự thành lập, đa số là phát triển các tính năng khó hoặc xử lí bug hộ cho các công ty khác. Những mục tiêu về tài chính, về nghề nghiệp mình đặt ra khi mới vào nghề thì nhìn chung mình đã đạt được từ cách đây 1, 2 năm. Tuy nhiên, quan điểm về cuộc sống của mình cũng thay đổi, mình lại có những mục tiêu khác để tiếp tục cố gắng. Cuộc sống là như vậy, ai cũng phải luôn luôn tiến về phía trước.
Trên đây là đôi lời chia sẻ về 10 năm theo nghề của mình. Đâu đó các bạn cũng có thể mường tượng ra được bản thân sẽ như thế nào nếu như theo nghề này được 10 hay 20 năm. Linux kernel giống như “bình rượu ngâm”, khi còn mới thì vị nồng và khó uống, nhưng khi đợi đủ thì vị lại dễ chịu và bền bỉ với thời gian.