Phát triển phần mềm: Từ nghiệp dư thành chuyên nghiệp (P1)

Phát triển phần mềm: Làm cách nào để chuyển từ nghiệp dư thành chuyên nghiệp?

Khép lại thập kỷ 2010, thế giới đã thay đổi đáng kể, từ chỗ việc sử dụng được máy tính là một kỹ năng cộng thêm thì bây giờ nó trở thành một kỹ năng phải có để làm được bất cứ việc gì. Chuyện viết được phần mềm máy tính, hiểu và viết được code để tự động hóa công việc của mình ở trong một chừng mực nào đó cũng đang tiến trên con đường như vậy. Từ chỗ nó là một kỹ năng cộng thêm, làm vì thích, thì bây giờ nó trở thành một kỹ năng rất nên có, công việc nào cũng cần. Mình nghĩ rằng nhiều bạn đọc các bài viết của mình là những người thích máy tính, và đang (hoặc có ý định) viết phần mềm. Nhiều người có thể ít nhất là viết code, làm web, làm tự động hóa cho một công ty hoặc dự án nào đó ở một chừng mực nào đó. Nếu như mong muốn của bạn là trở thành người viết phần mềm chuyên nghiệp, thì đây là bài viết dành cho bạn.

Trước tiên, mình nghĩ quan trọng là sự nhận thức rằng việc làm chuyên nghiệp khác với nghiệp dư, và làm phần mềm không nằm ngoài quy luật đó. Nói chúng khác nhau không phải là nói để tâng bốc, quan trọng hóa cá nhân. Một ví dụ là việc đi hát: Cuộc sống của chúng ta có rất nhiều người hát được. Có thể bạn hát karaoke nghe rất hay. Có thể bạn hát hay đến mức có người bạn của bạn mời bạn hát đám cưới. Nếu bạn đồng ý rằng “tôi chỉ muốn hát karaoke đám cưới cho vui” cả đời thì không vấn đề gì. Mặt khác, việc nghĩ rằng một người ca sĩ chỉ là một người hát karaoke hay hát đám cưới mà may mắn có nhiều người nghe là rất sai. Mặc dù nhiều người ca sĩ được khám phá ra vì họ hát đám cưới hay, sẽ tốt hơn nếu chúng ta nhận ra khoảng cách giữa hai người đó là rất xa nhau. Việc ca sĩ chuyên nghiệp như Mỹ Tâm hay Taylor Swift chẳng hạn có cống hiến hàng chục năm mà vẫn có bài hát mới không phải chỉ bởi vì người ta làm vì thích hay người ta may mắn. Mình chắc chắn một điều, phần lớn những thành công đó không nhờ họ có hứng hay họ may mắn.

Điểm giống nhau giữa hai việc hát và code là rất nhiều người làm vì thích, đó là một phần của sự sáng tạo và đi lên từ việc làm nghiệp dư, làm cho vui. Cá nhân mình viết phần mềm đầu tiên từ khi 12 tuổi. Mình viết báo PCWorld về lập trình cho vui từ năm 14 tuổi để lấy tiền tiêu vặt. Phần mềm đầu tiên mình viết “nguồn mở” cũng là vào những năm đó và mình nói chung đều viết code cho đến giờ. Đó đều là những việc làm chơi, nghiệp dư. Mình bây giờ được người ta trả tiền để viết phần mềm – đó là biết mình đã chuyển từ việc làm chơi thành làm thật.

Trong thời gian đó đến giờ, rất nhiều khi mình tự hỏi: Khi biết mình thích, thì làm cách nào để mình biết là mình đang làm đúng hoặc đi đúng hướng trên con đường đó? Làm cách nào để chuyển từ làm chơi thành làm thật?

Trong thời gian đó, mình có những điều hiểu sai về việc này mà mình nghĩ rằng mình biết nhưng thực tế thì không. Nếu mà mình biết trước thì đã tiết kiệm được vô khối thời gian.

# Nên học ít nhất đến hết đại học chuyên ngành

Nếu có thể, bạn nên học tiếp bằng Master. Bạn không nên nghĩ rằng mình có thể “tự học” được tất cả mọi thứ bằng cách mày mò, và dành thời gian đó để làm việc khác (ví dụ làm startup). Tuy “nghề” viết phần mềm là mới so với nhiều nghề khác, nhưng nó cũng không mới lắm. Và khi một con đường đã được người khác khai hoang từ lâu thì bạn sẽ nên đi con đường người khác đã biết và đã tạo lập sẵn, chứ không cần phải khai phá lại. Bạn có thể nghĩ mình có thể học được bằng cách tự học tự làm nhưng việc đó sẽ rất tốn thời gian, và bạn sẽ phải đối mặt với muôn vàn câu hỏi mà bạn không có câu trả lời (nhưng người khác có, và nếu bạn theo người ta thì bạn đã không vướng vào đó rồi).

Sẽ có nhiều điều bạn không biết rằng mình không biết nếu không học đại học. Không ai bây giờ đi nghiên cứu vũ trụ bằng cách tự chế ra một cái kính viễn vọng rồi tự nhìn lên trời để phát minh ra định luật mới cả, mặc dù sách danh nhân hay nói với bạn nhiều người đã làm như vậy (những việc đó bạn đã chậm chân 500 năm). Cũng như vậy, bạn không nên nghĩ rằng mình sẽ hiểu được máy tính bằng cách ngồi ở nhà và tự học: Đại học, được đào tạo chính quy, nghiêm chỉnh luôn là con đường tốt nhất, ngay cả khi bạn đã có vốn liếng kha khá về kiến thức lập trình khi vào đại học/master.

Sự thật với cá nhân mình là mình không ghi danh nhập học ngành máy tính khi bước vào đại học vì mình nghĩ mình đã hiểu được làm cách nào để code rồi thì học cái khác chứ học máy tính làm gì nữa. Sau này khi nhận ra mình phải học nghiêm túc vì có rất nhiều điều mình chưa biết, thì mình chuyển qua học Khoa học máy tính.

Nếu bạn muốn làm startup thì bạn nên làm startup, nhưng nếu bạn không phải là xuất chúng thiên hạ, bạn chỉ có thể chọn giữa làm startup hay làm phần mềm, chứ không phải cả hai. Có nhiều người sẽ hỏi: Vậy tại sao các ông trùm về công nghệ như Bill Gates hay Mark Zuckerberg đều là những kẻ bỏ học? Mình xin được trích lời Gấu: Có bao nhiêu người là người bỏ học và trở thành Bill Gates và bao nhiêu người bỏ học và trở thành đi ăn xin?

Tham khảo khóa học lập trình web 6 tháng, đảm bảo 100% công việc đầu ra!

Nguồn: https://topdev.vn/blog/phat-trien-phan-mem-tu-nghiep-du-thanh-chuyen-nghiep/


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.

Bài viết liên quan

Leave a Reply

Your email address will not be published.

TÀI LIỆU DEV WORLD
Cẩm nang phát triển bền vững với nghề lập trình!