Share 21 bước trở thành bậc thầy lập trình web.

phuhuu

Member
Con số lập trình web ở Việt Nam không phải là ít, nhưng mấy ai đạt được thành công trên con đường này?

Với bài viết này, hy vọng các bạn có thể trang bị bản thân với lối tư duy, kiến thức, và kỹ năng cần có để nổi bật giữa đám đông và đạt được thành công trong sự nghiệp lập trình web, dù bạn muốn làm cho một công ty ổn định, hay tự chủ với hướng đi freelancer của riêng mình.

Bài viết sẽ là nguồn cảm hứng mạnh mẽ cho những ai đang có ý muốn bức phá giới hạn của bản thân, vượt qua ngưỡng luẩn quẩn “rào cản của sự tầm thường”.

1. Bạn có thực sự đam mê lĩnh vực này?
“Đam mê” là một từ thường thấy, với nghĩa đã bị biến tướng khá nhiều. Thật ra, nghĩa của từ này là “cảm giác mạnh mẽ, khó kiểm soát được.”

Đam mê không phải là thụ động, là mà cả một quá trình hành động. Đa số mọi người ghét 9-5 công việc của mình, như một ít lại làn việc mà họ thích và đam mê công việc đó.

Quan trọng nhất, bạn nên tự hỏi mình ba câu hỏi sau:

Khi nghĩ đến việc website và web app, tôi có hưng phấn?
Liệu đây có phải là công việc lý thú tôi làm được?
Liệu trở thành lập trình viên có phù hợp với lối sống tôi (và gia đình) muốn hướng tới?
Nếu câu trả lời của bạn là “có” cho tất cả câu hỏi trên, bạn đang đi đúng hướng khi muốn trở thành web developer rồi đấy.

2. Bạn có lý do gì?
Dưới đây là câu hỏi quan trọng nhất bạn cần hỏi bản thân. Tại sao bạn muốn trở thành lập trình viên

Để tạo sự khác biệt và thay đổi cuộc sống của những người khác?
Để xây dựng dự án cho người khác?
Để xây dựng dự án của riêng mình?
Để có mức thu nhập cao?
Đối với bản thân tôi, truyền khiến thức và tạo sự tích cực trong cuộc sống của mọi người chính là một trong những “lý do” này.

Khi bạn mệt mỏi, phân tâm, buồn bã hay mất động lực, “lý do” của bạn sẽ thôi thúc bạn hành động mạnh mẽ hơn.

3. Điều gì thu hút bạn?
Bạn thích cái nào hơn, logic và xử lý vấn đề, hay thiết kế và đồ họa?

Nếu thích logic xử lý vấn đề hơn, bạn sẽ phù hợp làm lập trình web back-end web.

Những gì bạn không thấy được của Website đều thuộc về backend. Với server (ổ cứng to tổ bố với tất cả thông tin của site) ở một vị trí nào đó trên thế giới, xử lý mọi dữ liệu của website và gửi thông tin đã xử lý đến trình duyệt.

Tất cả những gì bạn thấy được, click được và tương tác được trên website sẽ thuộc về Front-end.

Có khi bạn còn thích hết cả hai ấy chứ!?

4. Vạch kế hoạch hành động
Khi đã xác định được chủ đề làm bạn thích thú, cũng như kiểu công việc bạn muốn là, đây là lúc lên kế hoạch.

Bạn có thể dành ra bao nhiêu thời gian để học? Bạn sẵn sàng đầu tư đến mức nào cho việc học tập của mình?

Ví dụ sau đây sẽ giúp bạn áp dụng vào trường hợp của bản thân dễ dàng hơn: “Mỗi ngày tôi chỉ học được hai tiếng đồng hồ. Tổng ngân sách của tôi là 500$ và tôi thích học web front-end.”

Sau một khoảng thời gian nghiên cứu phải học gì và học ở đâu, bạn sẽ có được outline (minh họa) như sau:

Month 1: Học HTML và CSS
Month 2: Học Bootstrap và thiết kế cơ bản
Month 3: Làm website bằng HTML, CSS và Bootstrap
Month 4: Học JavaScript
Month 5: Học JavaScript cao cấp hơn
Month 6: Làm website bằng HTML, CSS và JavaScript
Month 7: Tập trung làm web portfolio và xây dựng thương hiệu cá nhân
Month 8: Tìm đến các doanh nghiệp và tổ chức và đề nghị làm web giúp họ (miễn phí để kiếm kinh nghệp)
Month 9: Tập trung nâng cao kiến thức và cải thiện khuyết điểm
Month 10: Cần có ít nhất 10 client websites trên portfolio
Month 11: Học nguyên tắc freelance và kinh doanh cơ sở
Month 12: Tìm đến clients tiềm năng, giới thiệu sản phẩm của mình nhằm thu hút client trả phí hoặc xin việc.
5. Hành động
Nếu muốn làm điều vĩ đại, bạn phải biết đánh đổi và hy sinh.

Nếu muốn trở thành lập trình viên web thành công hoặc freelancer mà lại phàn nàn rằng mình không có thời gian, tại sao bạn không thử nhìn vào lịch hằng ngày/hằng tuần/hằng tháng để xem thử mình có thể tranh thử thêm thời gian để học, phát triển kỹ năng và thực hành?

Xem TV là một trong những thói quen vô bổ nhất tôi đã loại bỏ được: Tôi sống cuộc sống “không-TV” đã hai năm rồi, và đang cảm thấy rất tuyệt!

Bạn muốn đạt đến thành công nhiều đến mức nào? Đừng trì hoãn hay viện lý do nữa. Xách mông lên và làm đi!

>> Bấm xem ngay Bảng giá gia sư học lập trình web.

6. Kỷ luật ăn đứt Động lực
Động lực lúc là cũng tốt, nhưng đa phần chỉ kéo dài…tạm thời. Kỷ luật sẽ bắt bạn hành động khi bạn không muốn làm gì cả hoặc khi bạn không còn hứng thú tiếp tục.

7. Social Media
Ngày nay, bất kỳ ai cũng cần gầy dựng danh tiếng online, và mạng xã hội là kênh lý tưởng.

Hãy xây dựng profile trên LinkedIn, Twitter, Instagram và Facebook.

8. Tạo trang Portfolio
Portfolio của bạn có vai trò không khác gì online resume cả.

Cho người ta thấy bạn đã làm gì luôn có sức thuyết phục mạnh mẽ hơn chỉ lời nói

Dưới đây là ba ví dụ portforlio đẹp:

Robby Leonardi



Adam Dannaway



Denise Chandler



Hãy nhìn vào mấy website trên đi. Họ cũng từng chỉ là tay mơ thôi, và giờ xem họ thể hiện tác phẩm và chuyên môn của mình như thế nào.

Nếu portfolio của bạn đủ tốt, client và/hoặc nhà tuyển dụng tiềm năng sẽ tự tìm đến. Hãy dần xây dựng một loạt dự án/website tốt, ngay cả khi bạn phải làm miễn phí một đoạn thời gian.

9. Đóng góp vào các dự án Open-source
Đóng góp vào các dự án Open-source giúp bạn thể hiện:

Bạn thích thú với công việc mình đang làm
Kỹ năng team-building
Các kỹ năng chuyên môn khác.
Trên hết, nếu bạn làm tốt, bạn sẽ nổi tiếng trong cộng đồng, và tăng mức độ uy tín của bản thân.

John Resig,founder của jQuery, từng nói một câu rất thú vị:

Khi tuyển dụng, 1 GitHub commit log tốt còn hơn cả 8 cái resume hay.

Sau đây là 5 địa chỉ bạn có thể đóng góp vào các dự án Open-source:

GitHub
freeCodeCamp
Automattic
Angular
Go
10. Bạn có đủ bướng bỉnh?
Tại sao lại phải bướng bỉnh?

Web developer thường phải đối mặt với rất nhiều thách thức. Nếu bạn có lỗi trong code, hoặc thành phẩm không đúng như bạn dự đoán, đừng chỉ bỏ qua nếu bạn không tìm được giải pháp. Hãy thật bướng bỉnh và tìm ra cách xử lý toàn diện nhất có thể.

Hiển nhiên, bạn sẽ phải đầu tư nhiều thời gian hơn, nhưng bạn sẽ học được nhiều hơn, nhớ rõ hơn, và vận dụng tốt hơn những kiến thức học được vào các dự án trong tương lai.

11. Làm việc thông minh
Cho tôi sáu giờ để chặt cây, và tôi sẽ dành bốn giờ đầu tiên đễ mài rìu.

Câu nói của Abraham Lincoln đã quá quen thuộc với mọi người lao động, và hiển nhiên cũng áp dụng được với lập trình web. Người thành công sẽ làm việc thông minh, hiệu quả hơn và tiếp kiệm thời gian hơn.

12. Biết nhiều vẫn chưa đủ
Tôi biết nhiều ngôn ngữ hơn bạn nên tôi sẽ thành công hơn.

Biết nhiều vẫn chưa đủ, mà hơn nữa là làm gì với cái bạn biết.

Khi phỏng vấn, người biết nhiều nhất sẽ luôn luôn nhận được công việc đúng không?

Nhưng sự thật mà gần như ai cũng biết là trong “thế giới thật”, điều này không hề đúng. Kỹ năng không phải là yếu tố duy nhất để bạn giành được công việc (hoặc giành được khách hàng freelance), mà còn nhiều yếu tố khác.

13. Phát triển
Chuyên gia ở bất cứ ngành nào cũng cần phải học tập liên tục để cải thiện khiến thức và kỹ năng của mình. Với tính chất ngành như lập trình web, việc học tập lại càng thêm quan trọng.

Nếu bạn từ học C++ 20 năm trước, mà không chịu cập nhật với các xu hướng mới, những kiến thức đó chắc chắc sẽ không thể dùng được hiện nay.

Dù bạn ở mức kinh nghiệm nào, hãy luôn làm mới kiến thức và luôn luôn học tập.

14. Kinh nghiệm
Bạn sẽ muốn tuyển ai hơn?

Business coach 35 tuổi, vừa mới học xong MBA với điểm số cao vút, hay
business coach 30 tuổi bỏ học trung học, không bằng cấp, nhưng có kinh nghiệm quản lý ba mối làm ăn trị giá triệu đô và đã bán đi hai cái để thu lợi nhuận?
Kinh Nghiệm luôn luôn vượt trội Lý Thuyết. Đừng chỉ mở miệng bô bô “Tôi có thể làm [xxx]”: chỉ có những lập trình viên tầm thường mới nói như vậy. Bạn làm được gì thì phải show ra.

15. Mức giá
Khi bạn đã bắt đầu tự tin hơn vã đó có nhiều kinh nghiệm, bạn cần phải định giá dịch vụ của mình tốt hơn.

Ở bước này, thành bại chỉ trong chớp mắt. Bạn thích lương 120 triệu một năm hay 240 triệu một năm hơn?

Nếu tôi chỉ bán một chai rượi, và tôi bảo bạn rằng tôi có đến hai chai, một chai 5$ và chai kia 55$, chắc bạn sẽ nghĩ là chai 5$ có vấn đề đúng không?

Nguyên tắc này cũng áp dụng lên dịch vụ bạn cung cấp.

Tuy nghe thì chủ yếu áp dụng lên freelancing, nhưng thật ra khi deal lương bạn cũng rất cần đánh giá bản thân ở mức nào đấy.

16. Năng suất
Tập trung cao độ trong 1 tiếng rưỡi đồng hồ mà không bị sao nhãng, luôn tốt hơn 4 tiếng đồng hồ vừa làm/học vừa xem tinh nhắn, Youtube, hay những hình GIF vui nhộn.

Hãy loại bỏ mọt thứ gây mất tập trung và trở nên năng suất nhân trong một khoảng thời gian lý tưởng.

17. Skills
Giới hạn chỉ học ngôn ngữ “X” không phải là cách học tập hợp lý. Để cái thiện cơ hội thành công, bạn nên học các kỹ năng khác như marketing cơ bản, lương lượng, giao tiếp và cả kỹ năng xã hội nữa.

Hãy nhìn vào những lập trình viên thành công ngoài kia đi: họ đều là những cá nhân rất toàn diện, tài năng và không chỉ tập trung hoàn toàn vào code.

18. Tương tác trực tuyến với người khác
Tham gia cộng đồng coding, group Facebook, Twitter chats và các platform khác, bạn cũng đừng ngại hỏi câu hỏi (“ngớ ngẩn”) mà mình thắc mắc.

Hỏi và trả lời câu hỏi ở các nơi như Stack Overflow, Reddit, Quora và cả blogs nữa.

19. Đi hợp mặt và tập xã giao
Đây là bước bạn phải thực sự ra ngoài và kết nối với người khác.

Tôi là một người siêu hướng nội. Thật đấy. Người ta gọi tôi là cua ẩn sỹ. Khi được đưa vào một nhóm ngưới chắc bạn cũng biết tôi ngồi ở đâu rồi chứ? Đúng rồi, ngay trong góc ấy…

Nếu bạn là người hướng nội (giống tôi), bạn cần nhận ra điều này, vì tại thời điểm nào đó, bạn buộc phải bước ra “vùng thoải mái” của mình và tương tác với người khác.

PS: đừng chỉ chăm chăm vào những buổi gặp mặt hoặc event cho lập trình viên. Nếu bạn là freelancer, hãy đi đến những buổi event business chung nữa. Nói gì thì nói, bạn có thường khi nào thấy lập trình viên đi thuê lập trình viên khác không?

20. “Tâm thần phân liệt”
Bạn cần phải suy nghĩ như một người xem site và như người làm chủ business (của website đó).

Là người vào site, bạn cần phải nghĩ: Khi tôi lướt trang web này, tôi đang nghĩ gì ở từng giai đoạn? Trang web này có cho tôi lời giải cho những nhu cầu của mình hay không? Tôi có nên tin tưởng doanh nghiệp này hay không?…

Là “người chủ” của website, bạn cần nghĩ:: Trang web của tôi có giải quyết được vấn đề của người xem lúc này hay không? Tôi có thể làm gì để giải quyết nhu cầu của họ? Tôi có thể làm gì trên website của mình để thuyết phục người xem thực hiện action mà tôi mong muốn?

21. Đừng từ bỏ
Trước khi thành công, một người phải thất bại “vài” lần trước đã, và có một điểm chung không thể chối cãi giữa họ là họ không bao giờ từ bỏ, và luôn tìm cách mới để làm cái này cái kia.

Đôi khi điều duy nhất tách biệt giữa thành công và thất bại là ý chí tiếp tục. Đừng từ bỏ ước mơ, nguyện vọng và mục tiêu của mình
 
Top