Roadmap cho lập trình viên trong năm 2018

04-04-2018 17:16

Trước khi quyết định trở thành một lập trình viên hay làm bất cứ điều gì, trước hết chúng ta phải hiểu tại sao bạn lại muốn đi theo con đường này. Mỗi quyết định sẽ đòi hỏi thời gian đáng kể của cuộc đời bạn. Và thời gian, sau tất cả, vẫn là tài nguyên quan trọng nhất của đời người.

Lập trình Python & Odoo Framework với IziSolution

Lập trình CC++ với FPT Software

Lập trình ứng dụng di động Android

Khóa học Kiểm thử phần mềm Tester

Khi chọn một con đường sự nghiệp mới, nó cần phải hội tụ được những điều sau:

1. Vẫn có tiềm năng trong 10 năm tới. Điều này nên được đánh giá nhiều năm trong tương lai để đảm bảo cho bạn sự ổn định của công việc.

2. Nhu cầu đối với người có kỹ năng này phải cao hơn lượng cung. Càng có ít người giỏi, bạn càng dễ được nhiều công ty săn đón.

3. Luôn có mức lương cao. Bạn không muốn phải mất nhiều năm để leo lên bậc thang của công ty cho đến khi thật sự có tí dư dả.

4. Một ngành không đòi hỏi bằng cấp chuyên môn từ một trường đại học. Bạn không muốn phải mất 4 năm tiếp theo chỉ để bổ sung một cái bằng mình còn thiếu mới có thể vào làm được. Và tôi nghĩ rằng có những lựa chọn thay thế tốt hơn như là chọn một khóa bootcamp đắt tiền.

5. Có khả năng bắt kịp với những người đứng đầu trong ngành với quãng thời gian ngắn nhất.

6. Nó phải cho phép bạn có nhiều lựa chọn nghề nghiệp bất kể tương lai sẽ ra sao. Ví dụ: bằng cách học code, bạn có thể hiểu rõ hơn về các công nghệ sắp tới mới như blockchain và điện toán đám mây để chọn hướng đi mới tiếp theo cho mình.

7. Thích thú. Điều quan trọng nhất. Liệu bạn có thể chấp nhận việc mình làm khoảng 40 giờ một tuần trong một thời gian dài?

Nghề lập trình sẽ có những chặng như trên mà bất cứ ai cũng đều phải đi qua. Một trong những cuốn sách yêu thích của tôi, có tiêu đề là So Good They Can’t Ignore You, viết rằng niềm đam mê vẫn là chưa đủ. Bạn không nên đi vào ngành du lịch vì bạn “đam mê” về du lịch. Hầu hết mọi người tìm thấy niềm đam mê của mình bằng cách đấu tranh và làm việc chăm chỉ để làm chủ một kỹ năng. Một khi mọi người bắt đầu thừa nhận những kỹ năng có giá trị của bạn, và bạn có thể cảm thấy được sự tôn trọng đối với những kỹ năng này, đó là khi bạn phát triển niềm đam mê cho những gì bạn làm.

Bạn muốn tự mình đánh giá và xem nghề này có thực sự phù hợp với bạn không

Điều quan trọng bạn cần biết: hãy ghi nhớ rằng 2 tháng đầu sẽ cảm thấy như đang leo lên một ngọn núi không thể vượt qua được. Mỗi hướng dẫn, khóa học hoặc bài tập sẽ làm cho bạn cảm thấy như bạn là người duy nhất trên thế giới mà không biết xài công cụ này. Chúng tôi gọi đây là Hội chứng của người ngốc (Impostor’s Syndrome): nơi bạn cảm thấy như bạn là người duy nhất không biết thông tin này và bạn bị bao quanh bởi sự tự nghi ngờ. Tuy vậy, hãy mạnh mẽ lên! Bạn sẽ đạt được thành công. Hãy yên tâm rằng tất cả chúng ta đều cảm thấy như vậy khi mới bắt đầu học.

Bạn sẽ học được rằng một nhà phát triển tốt không nhất thiết phải ghi nhớ một núi tài liệu hướng dẫn. Mà họ học về cách giải quyết các vấn đề bằng việc sử dụng tất cả các công cụ có sẵn cho bạn.

Tôi là ai? Vì sao bạn nên nghe theo tôi?

Trước tiên, tôi là một nhà phát triển phần mềm đã làm việc ở nhiều nơi khác nhau bao gồm cả thung lũng Silicon cũng như là một số công ty công nghệ hàng đầu. Tôi đã rất may mắn trong sự nghiệp của mình và đang cố gắng trong 2018 để giúp người khác học các kỹ năng phần mềm. Nhưng tôi không phải là một thiên tài về code cũng như chả có tốt nghiệp với bằng khoa học máy tính.

Tất cả bắt đầu từ nhiều năm trước … Tôi muốn có một sự thay đổi nghề nghiệp và quyết định tự dạy cho mình một chương trình máy tính.

Tôi đã dành tháng đầu tiên để tránh đọc bất kỳ hướng dẫn hoặc sách nào. Thay vào đó, tôi dùng khoảng thời gian này để tìm kiếm cách tốt nhất nhằm học hỏi và có được việc làm. Tôi không muốn lãng phí thời gian và học phải các công nghệ đã lỗi thời, hoặc học những điều mà bản thân sẽ quên sau một tháng. Khi đấy, tôi nhìn vào các bài đăng tuyển dụng, nói chuyện với các nhà phát triển, xem xét các khóa học trực tuyến, bootcamps, và thậm chí đọc các bài báo của các nhà dự đoán về viễn cảnh công nghệ trong 20 năm tới. Dựa vào đó, tôi tạo ra một chương trình học cho bản thân mình với mục tiêu: tập hợp số lượng lớn các bài học để có thể sử dụng trong khoảng thời gian ngắn nhất.

Nếu bạn yêu thích tác phẩm của Tim Ferriss nhiều như tôi, bạn sẽ yêu thích điều này. Nó không tập trung vào việc làm một công việc dễ nhất có thể. Thay vào đó, nó tập trung vào những điều quan trọng nhất để được sử dụng một cách tối ưu. May mắn thay cho bạn tôi đã sàng lọc tất cả mọi thứ trong quá trình này.

Mặc dù tôi đã dành một tháng để lên kế hoạch học tập của mình thay vì thực sự học tập, nhưng đó là một lợi ích lâu dài bởi vì tôi không bị “mù”. Đó là vì tôi biết phương hướng mình đang đi và nơi đến là ở đâu.

Thật đáng buồn là có nhiều người uyên bác về kỹ thuật nhưng lại không có khả năng dạy một người mới tốt. Và khi đó, tôi chợt nghĩ rằng sao mình không thử chia sẽ và giúp các bạn, những người đồng môn vẫn con đang loay hoay mới bước vào.

Kể từ đó, tôi đã tư vấn cho các công ty công nghệ của Fortune500, tổ chức hội thảo code, tham khảo ý kiến ​​về các sách công nghệ và trao đổi kỹ thuật. Bây giờ tôi đang ở một vị trí mà bản thân không phải làm việc cho bất cứ ai. Tôi yêu sự nghiệp này và tôi nghĩ nhiều người cũng sẽ thích nó.

13 mẹo học lập trình cho người không biết bắt đầu từ đâu

Tuesday.css - Thư viện Animation nóng nhất hiện nay

7 bước để có được công việc lập trình đầu tiên

Chúng ta nên học ngôn ngữ gì?

Bạn sẽ trở thành một ninja Javascript vì những lý do sau:

Javascript ở khắp mọi nơi. Mỗi công ty có một trang web hoặc một ứng dụng cần người có kiến ​​thức về Javascript. Có vô số các tin tuyển dụng luôn đòi hỏi tới ngôn ngữ này.

→ Với việc xuất hiện của Node.js, bạn giờ đã có thể sử dụng Javascript để tạo một full-stack app ( bạn có thể sử dụng javascript để xây dựng cho toàn bộ dự án của mình). Sử dụng các công cụ như Electron, React Native và nhiều thứ khác, Javascript cho phép bạn tạo bất cứ ứng dụng nào trên desktop, mobile và thậm chí cho cả VR. Bạn có thể kiểm soát robot bằng cách sử dụng một tool gì đó như Jonny-Five. Ngay cả blockchain cũng có thể được tạo ra với javascript.

→ Nếu ​​bạn không đọc điều đầu tiên và đang nghĩ về cái gì khác, hãy để tôi nhắc lại: Nhu cầu về các chuyên gia về Javascript là rất lớn. Thường thì các developer có thể liên hệ với nhà tuyển dụng và headhunter nhiều lần trong tuần để được cung cấp việc làm.

→ Cộng đồng Javascript đang phát triển với tốc độ chóng mặt. Bạn sẽ được học những công nghệ mới cùng một lúc với những người đã từng làm việc trong ngành trong nhiều năm.

Hãy tin vào những gì tôi nói. Đây là một cộng đồng lớn với rất nhiều nhu cầu cũng như cơ hội.  

Trong phần sau tôi sẽ nói về cách thức để trở thành một lập trình viên với những bộ kĩ năng tốt nhất chỉ trong vòng 5 tháng. Xin hãy lưu ý rằng đây là một khóa học không dễ dàng nhưng sẽ cho kết quả tuyệt vời nếu bạn đủ sự kiên nhẫn.

Tháng đầu tiên: Nhìn xa trông rộng

Câu hỏi lớn bạn cần trả lời: Cách máy tính, internet và các trang web làm việc? Làm thế nào tôi có thể xây dựng một trang web?

Hiểu kỹ thuật Feynman để bạn thực sự học được trong quá trình 5 tháng tiếp theo thay vì chỉ sử dụng bộ nhớ “ngắn hạn” của mình.

  • Internet hoạt động như thế nào: Tham gia khóa học tại LearnCode.academythenewboston.
  • Tổng quan về khoa học máy tính: Khóa học Crash
  • Thực hiện theo khóa học Harvard này trên youtube. Đây là nguồn học “vàng” khoa học máy tính tốt nhất.
  • Làm thế nào để sử dụng dòng lệnh: Hãy học từ Zed Shaw.
  • Làm thế nào để xây dựng một trang web / có được một tên miền / và nó chạy ngon lành: LearnCode.academy Video.
  • HTML, CSS và Javascript khớp với nhau như thế nào: Khóa học FrontendMasters về phát triển web.
  • Tìm hiểu để xây dựng các trang web với Bootstrap. Sau đó chuyển qua Bootstrap 4 và thêm các component bạn thấy ở đó vào một trang web mẫu. Hiểu những lợi ích mà nó mang lại và viết CSS cho chính mình.
  • Hiểu cách sử dụng template để xây dựng các trang web bằng themes và templates miễn phí.
  • Nếu bạn có thời gian, bạn có thể thực hiện một vài khóa học về phần HTML và CSS tại freeCodeCamp.

Tháng thứ hai: Javascript

Câu hỏi lớn bạn cần trả lời: Làm thế nào để javascript khiến máy tính làm những gì như bạn muốn?

Đây là nơi tập trung nhiều nhất vào những tháng sau đó. Javascript giải quyết vấn đề gì? Cũng như bắt đầu viết một số chương trình bằng Javascript để làm cho trang web của bạn hoạt động. Bắt đầu với hai khóa học này: mộthai

Ban Truyền thông ITPlus Academy

Bài viết cùng chủ đề