Categories: Thông tin

Từng bước để trở thành một lập trình viên giỏi

Như trong bài viết “ Tự học lập trình trong 10 năm ” của Giáo sư Norvig thì tất cả chúng ta đã biết rằng để trở nên tinh thông bất kỳ nghành gì thì ai cũng phải cần tối thiểu 10,000 giờ tập luyện ( tương tự khoảng chừng 10 năm ). Nhưng bạn hoàn toàn có thể nói rằng điều đó chẳng cần tác dụng nghiên cứu và điều tra của những nhà khoa học thì bạn cũng biết. Vấn đề ở đây là 10 năm là một quãng thời hạn rất dài, và với 10 năm đó thì hoàn toàn có thể đã “ vật đổi sao dời ” hay người còn kẻ mất. Điều quan trọng là làm thế nào duy trì được động lực thao tác và học tập trong một quãng thời hạn dài như vậy ?Đúng vậy, để hoàn toàn có thể duy trì được động lực trong một quãng thời hạn dài như vậy thì bạn phải tưởng tượng ra được một big picture ( tạm gọi là bức tranh lớn ) của mình trong tương lai. Liệu bạn sẽ làm gì và ở đâu trong 10 năm tới ? Hay còn gọi là phải đặt ra được tiềm năng đơn cử .Hôm nay tất cả chúng ta sẽ đọc một bài viết của tác giả John Sonmez về cách từng bước làm thế nào để trở thành một lập trình viên giỏi. Hy vọng với một hướng dẫn từng bước kiểu step-by-step này sẽ giúp một số ít bạn newbie hoàn toàn có thể vận dụng và xu thế tương lai sau này .

 

“ Tôi không sợ những kẻ tập một lần 10.000 cú đá, tôi chỉ sợ những kẻ tập 10.000 lần một cú đá. ” ~ Huyền thoại võ thuật Lý Tiểu Long

Thời gian gần đây tôi có nhận được một số ít email mà về cơ bản đều hỏi rằng “ làm thế nào để hoàn toàn có thể trở thành một lập trình viên giỏi / xuất sắc ? ”Những dạng email kiểu này nói chung thường làm tôi cảm thấy buồn lòng, chính do tôi cảm thấy có vẻ như khi bạn hỏi dạng câu hỏi này, thì bạn đang tìm kiếm một liều thuốc thần diệu nào đó khiến bạn hoàn toàn có thể sẽ đùng một cái trở thành một lập trình viên tài ba .Tôi hoài nghi rằng có rất ít người trong số đã gửi email để hỏi tôi về câu hỏi này thực sự muốn biết làm thế nào để trở thành một lập trình viên xuất sắc, nhưng có lẽ rằng họ đang chỉ muốn tìm kiếm cho mình một giải pháp nhanh gọn hoặc một câu vấn đáp thuận tiện .Một mặt khác, tôi nghĩ rằng hoàn toàn có thể có 1 số ít lập trình viên chân thực, và chỉ là họ không biết làm thế nào để đặt ra những câu hỏi thiết yếu để xu thế cho tương lai của họ. Tôi nghĩ những lập trình viên này – đặc biệt quan trọng là những người vừa mới vào nghề – có lẽ rằng đang tìm kiếm cho mình một hướng dẫn từng bước để trở thành một lập trình viên xuất sắc .Vì vậy, tôi cũng nỗ lực từ chính kinh nghiệm tay nghề của bản thân và những kiến thức và kỹ năng tốt nhất mà mình có, để đưa ra một hướng dẫn kiểu từng bước step-by-step dành cho bạn .Lúc này đây, đương nhiên là tôi nhận ra rằng không có một công thức thần kỳ nào ở đây cả và rằng có rất nhiều con đường hoàn toàn có thể dẫn đến thành công xuất sắc, nhưng tôi nghĩ rằng nếu làm theo những bước hài hòa và hợp lý được phác thảo ra sau đây thì một bạn trẻ mới vào nghề hoàn toàn có thể vươn tới một mức trình độ khá cao và sẽ có năng lực trở thành một lập trình viên giỏi hoặc thậm chí còn là xuất sắc .

Bước 1 : Hãy chọn lấy một ngôn từ lập trình, và học từ những thứ cơ bản nhất

Trước khi hoàn toàn có thể chạy, thì tất cả chúng ta phải học cách để đi trước đã. Bạn đi bằng cách học làm thế nào để lập trình trong một ngôn từ lập trình nào đó. Bạn đừng có học đi bằng cách cố gắng nỗ lực học 50 triệu thứ cùng một lúc, vì bạn không hề có phép phân thân ra như Tôn Ngộ Không được phải không nào .

Có rất nhiều lập trình viên bắt đầu bằng cách thử và nhảy vào tất cả mọi thứ một lần và không có đủ kiên nhẫn để học chỉ một ngôn ngữ lập trình duy nhất trước khi tiến lên phía trước. Họ nghĩ rằng họ phải biết tất cả những công nghệ mới đang “hot” thì mới có thể kiếm được một công việc lập trình. Trong khi đúng ra thì bạn cần biết nhiều hơn chỉ những kiến thức cơ bản của một ngôn ngữ lập trình duy nhất, bạn phải bắt đầu từ đây, vì như vậy thì bạn mới có thể tập trung được tốt nhất.

Chọn lấy một ngôn từ lập trình mà bạn nghĩ rằng sự nghiệp của mình về cơ bản sẽ xoay quanh nó. Ngôn ngữ lập trình đó tự bản thân nó thì không quan trọng nhiều lắm, nhưng bạn nên đo lường và thống kê cả về lâu về dài nữa. Ý tôi muốn nói là bạn đừng nên thử và học một ngôn từ lập trình “ dễ ” khi mở màn. Hãy học bất kể ngôn từ nào mà bạn cảm thấy thú vị và hoàn toàn có thể nhìn thấy tương lai lập trình của mình trong một vài năm sắp tới. Bạn muốn chọn một cái gì đó mà sẽ mang lại giá trị vĩnh viễn .Một khi bạn đã chọn lấy ngôn từ lập trình nào đó thì bạn sẽ thử học và tìm một số ít cuốn sách hoặc bài thực hành thực tế mà chỉ tương quan đến ngôn từ lập trình đó thôi. Ý tôi muốn nói là bạn đừng tìm học những tài liệu mà dạy bạn quá nhiều thứ một lúc. Bạn nên tìm những tài liệu dành cho người mới khởi đầu mà chỉ tập trung chuyên sâu vào ngôn từ đó, chứ không phải là rất nhiều công nghệ tiên tiến tương quan .Khi bạn đọc xuyên suốt những tài liệu đó hoặc duyệt qua những bài thực hành thực tế mà bạn đã lựa chọn, thì hãy chắc như đinh rằng bạn có thực hành thực tế viết code. Hãy làm thật nhiều bài tập hoàn toàn có thể. Hãy thử nghiệm toàn bộ những gì bạn đã học được. Hãy thử gom những thứ lại với nhau và sử dụng tổng thể những khái niệm mà bạn đã học được về nó. Vâng, điều này thì khá là “ đau khổ ”. Việc đọc hùng hục một cuốn sách từ trang đầu đến trang cuối thì rất thuận tiện, nhưng nếu bạn thực sự muốn học thực sự thì bạn cần phải thực hành thực tế .

Khi bạn đang viết code, hãy cố chắc chắn rằng bạn hiểu tất cả dòng code mà mình viết ra. Điều tương tự cũng cần làm cho bất kỳ dòng code nào mà bạn đọc. Khi viết ra những đoạn code, hãy làm chậm rãi và đảm bảo rằng bạn hiểu nó. Bất cứ điều gì mà bạn không hiểu, thì hãy tìm hiểu và làm rõ nó. Hãy dành thời gian làm điều này thì bạn sẽ không bị hổng kiến thức và mơ hồ về sau này.

Cuối cùng, hãy chuẩn bị tư tưởng là phải đọc qua một cuốn sách hoặc một hướng dẫn thực hành ít nhất 3 lần trước khi bạn có thể hiểu hết nó. Bạn sẽ không thu được phần “lập trình” trong lần thử đầu tiên – không ai từng làm được điều đó cả. Bạn cần lặp lại để bóc trần nó trước khi bạn bắt đầu có thể hiểu và thu nhận kiến thức từ nó và bạn hiểu được điều gì thực sự đang diễn ra. Cho tới một lúc bạn sẽ cảm thấy như bị lạc lối, điều đó là tốt, đó là một phần của quá trình phát triển. Chỉ việc chấp nhận nó và tiến lên phía trước.

Bước 2 : Xây dựng một cái gì đó nhỏ thôi

Lúc này thì bạn đã có một hiểu biết cơ bản về một ngôn từ lập trình nào đó rồi, và đây là lúc để đưa những kiến thức và kỹ năng đó vào thao tác và để nhận ra bạn đang thiếu vắng những gì. Cách tốt nhất để làm điều này là thử thiết kế xây dựng một cái gì đó .Đừng quá tham vọng tại thời gian này – nhưng bạn cũng đừng quá nhút nhát. Hãy tìm kiếm sáng tạo độc đáo tạo ra một ứng dụng mà đủ đơn thuần để bạn hoàn toàn có thể hoàn thành xong nó với 1 số ít nỗ lực, nhưng không phải là sẽ làm bạn mất vài tháng để triển khai xong. Cố gắng hạn chế nó chỉ trong ngôn từ lập trình bạn đã học nhiều nhất hoàn toàn có thể. Đừng cố gắng nỗ lực để làm một cái gì đó mà phải vận dụng nhiều công nghệ tiên tiến khác nhau ( nghĩa là, sử dụng tổng thể những công nghệ tiên tiến từ giao diện người dùng cho đến database ) – mặc dầu bạn sẽ hoàn toàn có thể cần sử dụng một vài framework hoặc API có sẵn .

Đối với ứng dụng đầu tay thì bạn có thể chọn giải pháp sao chép một cái gì đó đơn giản mà đã tồn tại rồi. Hãy tìm kiếm một ứng dụng đơn giản, kiểu như một ứng dụng dạng list nhắc việc To-Do chẳng hạn và cố gắng mô phỏng nó. Đừng cho phép các kỹ năng thiết kế của bạn cản trở việc học lập trình.

Tôi đề xuất kiến nghị bạn nên tạo ra một ứng dụng nào đó dành cho thiết bị di động, do tại hầu hết những ứng dụng di động thì thưởng nhỏ và khá dễ làm. Thêm nữa, việc học những kiến thức và kỹ năng tăng trưởng cho di động thì rất có ích vì có rất nhiều những công ty đang mở màn cần những ứng dụng di động. Ngày nay, bạn hoàn toàn có thể thiết kế xây dựng một ứng dụng di động trong hầu hết bất kể ngôn từ lập trình nào. Có rất nhiều giải pháp mà được cho phép bạn kiến thiết xây dựng một ứng dụng cho những hệ quản lý di động khác nhau sử dụng rất nhiều những ngôn từ lập trình .Bạn cũng hoàn toàn có thể thiết kế xây dựng một ứng dụng web nhỏ, nhưng cố gắng nỗ lực không nhảy quá sâu vào nhiều công nghệ tiên tiến tăng trưởng web phức tạp. Về cơ bản tôi yêu cầu bạn nên mở màn bằng một ứng dụng di động, chính do tăng trưởng web thì có vẻ rắc rối hơn một chút ít cho người mới khởi đầu. Để tăng trưởng một ứng dụng web thì bạn sẽ phải cần biết tối thiểu là một số ít kỹ năng và kiến thức về HTML, hoàn toàn có thể một vài framework back-end và JavaScript .Cho dù là bạn chọn cái gì để thiết kế xây dựng, thì bạn hoàn toàn có thể phải học chút ít về một vài framework – điều này thì rất tốt, chỉ đừng có quá sa lầy vào những chi tiết cụ thể. Ví dụ, bạn hoàn toàn có thể viết một ứng dụng Android khá đơn thuần mà không cần phải thực sự biết nhiều về toàn bộ những hàm API của Android và làm thế nào Android hoạt động giải trí, chỉ bằng cách làm theo một số ít bài hướng dẫn đơn thuần. Chỉ đừng tốn quá nhiều thời hạn để cố gắng nỗ lực học mọi thứ về một framework nào đó. Hãy học cái mà bạn cần biết để Giao hàng hoàn thành xong dự án Bất Động Sản của mình. Bạn hoàn toàn có thể học về những chi tiết cụ thể sau này .

Oh, và điều này có vẻ là hơi khó. Nhưng đó chính là cách bạn học như thế nào. Bạn phải vật lộn để nhận ra làm thế nào để làm một điều gì đó, sau đó bạn sẽ tìm thấy câu trả lời. Đừng bỏ qua bước này. Bạn sẽ chẳng bao giờ vươn tới đẳng cấp là một nhà phát triển phần mềm chuyên nghiệp nếu bạn không học những thứ khó khăn và nhận ra nhiều điều thú vị trong quá trình nghiên cứu. Đây là một khóa huấn luyện tốt cho tương lai của bạn.

Bước 3 : Nghiên cứu về một framework

Lúc này là thời gian để thực sự tập trung chuyên sâu vào một framework. Vì lúc này bạn đã nắm được một lượng kiến thức và kỹ năng tương đối về tối thiểu là một ngôn từ lập trình rồi và đã có 1 số ít kinh nghiệm tay nghề để hoàn toàn có thể thao tác cùng một framework cho những ứng dụng di động hoặc web .Hãy chọn một framework nào đó để học và nó sẽ cho phép bạn thao tác hiệu suất cao hơn trong 1 số ít thiên nhiên và môi trường. Dạng framework mà bạn lựa chọn để học sẽ được dựa trên kiểu nhà tăng trưởng ứng dụng nào mà bạn muốn trở thành trong tương lai. Nếu bạn muốn trở thành một nhà tăng trưởng web, thì bạn sẽ muốn học một web framework cho bất kỳ ngôn từ lập trình nào mà bạn đang thao tác trên nó. Nếu bạn muốn trở thành một nhà tăng trưởng ứng dụng di động, thì bạn sẽ cần học về một hệ quản lý và điều hành di động và framework đi kèm với nó .Cố gắng đào sâu kiến thức và kỹ năng của bạn về framework đó. Điều này sẽ khá mất thời hạn, nhưng góp vốn đầu tư thời hạn để học bất kể thứ gì về framework mà bạn đang sử dụng thì rất tốt. Đừng cố học nhiều framework vào lúc này – nó sẽ chỉ khiến phân tán sự tập trung chuyên sâu của bạn mà thôi. Hãy nghĩ về việc học những kỹ năng và kiến thức bạn cần cho một việc làm xác lập mà bạn muốn nhận, có sử dụng framework và chính ngôn ngữ lập trình mà bạn đang học. Bạn hoàn toàn có thể luôn luôn lan rộng ra tập kiến thức và kỹ năng của mình sau này .

Bước 4 : Học về một công nghệ tiên tiến cơ sở tài liệu

Hầu hết những nhà tăng trưởng ứng dụng sẽ cần phải biết về một số ít công nghệ tiên tiến cơ sở tài liệu vì rất nhiều những ứng dụng phải có một database back-end. Vì vậy, hãy chắc như đinh rằng bạn không bỏ bê việc góp vốn đầu tư vào nghành này .Bạn sẽ có năng lực nhìn thấy quyền lợi lớn nhất nếu bạn học về SQL – thậm chí còn nếu bạn lên kế hoạch sẽ thao tác cùng cơ sở tài liệu NoSQL như MongoDB hoặc Raven, thì việc học SQL sẽ mang lại cho bạn một nền tảng tốt hơn để thao tác sau này. Có rất nhiều việc làm tuyển dụng ngoài kia mà nhu yếu kiến thức và kỹ năng về SQL nhiều hơn là NoSQL .Đừng quá lo ngại về nhiều loại cơ sở tài liệu SQL. Những công nghệ SQL khác nhau thì thực ra chúng có rất nhiều điểm giống nhau và bạn sẽ không gặp phải yếu tố gì trong việc quy đổi qua lại giữa chúng nếu bạn biết những kỹ năng và kiến thức cơ bản về một công nghệ SQL nào đó. Chỉ chắc như đinh rằng bạn hãy học về những thứ cơ bản như table, queries, và những thao tác thông dụng về database khác .Tôi khuyến khích bạn nên chọn một cuốn sách tốt về công nghệ SQL tương thích và tạo ra một vài dự án Bất Động Sản nhỏ, vì thế bạn hoàn toàn có thể thực hành thực tế cái mà bạn đang học – luôn luôn thực hành thực tế những kiến thức và kỹ năng mà bạn đang học .Bạn phải có đủ kiến thức và kỹ năng về SQL để hoàn toàn có thể :

  • Tạo những bảng ( table )
  • Thực thi những truy vấn cơ bản
  • Join những bảng với nhau để truy xuất tài liệu
  • Hiểu những kỹ năng và kiến thức cơ bản về index thao tác như thế nào
  • Insert, update và delete dữ liệu

Ngoài ra, bạn sẽ muốn học 1 số ít dạng của công nghệ tiên tiến object relational mapping ( ORM ). Cái mà bạn học sẽ nhờ vào vào công nghệ tiên tiến nào mà bạn đang thao tác trên đó. Tìm kiếm những công nghệ ORM tương thích với framework mà bạn đã học. Có thể có một vài lựa chọn ở đây, thế cho nên cách tốt nhất là bạn hãy chọn lấy cái thông dụng nhất .

Bước 5 : Nhận một việc làm tương hỗ một mạng lưới hệ thống đang sống sót

Ok, giờ đây bạn đã có đủ những kỹ năng và kiến thức và kiến thức và kỹ năng để nhận được một việc làm cơ bản như thể một nhà tăng trưởng ứng dụng. Nếu bạn hoàn toàn có thể chỉ cho tôi rằng bạn hiểu những kỹ năng và kiến thức cơ bản của một ngôn từ lập trình, hoàn toàn có thể thao tác cùng một framework, hiểu về cơ sở tài liệu và đã kiến thiết xây dựng được ứng dụng của riêng bạn, thì tôi chắc như đinh sẽ muốn thuê bạn – cũng như nhiều nhà tuyển dụng khác .

Điểm mấu chốt ở đây là không quá nhắm vào một công việc nào đó yêu cầu trình độ cao. Đừng cố thử tìm một công việc trong mơ của bạn ngay lúc này – vì bạn vẫn chưa đủ trình độ. Thay vì đó, cố gắng tìm một công việc dạng bảo trì một hệ thống phần mềm đang tồn tại mà được xây dựng sử dụng ngôn ngữ lập trình và framework mà bạn đã học.

Bạn hoàn toàn có thể không tìm thấy đúng chuẩn một việc làm như vậy, nhưng nhiều năng lực là bạn hoàn toàn có thể tìm thấy một việc làm tốt hơn. Cố gắng ứng tuyển vào những việc làm tương thích đúng mực với những công nghệ tiên tiến mà bạn đã được học .Thậm chí với sự thiếu vắng nhiều kinh nghiệm tay nghề, nếu bạn tương thích đúng chuẩn với một tập kiến thức và kỹ năng và bạn lại sẵn lòng trở thành một lập trình viên bảo dưỡng, thì bạn sẽ hoàn toàn có thể tìm thấy một việc làm .

Vâng, dạng công việc này có thể hơi tẻ nhạt một chút. Nó không được hứng thú như là việc tạo ra một cái gì đó mới mẻ, nhưng mục đích của công việc này không phải là mang lại niềm vui hoặc để kiếm tiền, nó là để học hỏi và thu được nhiều kinh nghiệm nhiều nhất có thể.

Làm việc trên một ứng dụng đang sống sót, cùng với một nhóm những nhà tăng trưởng khác, sẽ giúp bạn lan rộng ra những kỹ năng và kiến thức của mình và biết được một mạng lưới hệ thống ứng dụng lớn thường được cấu trúc như thế nào. Bạn hoàn toàn có thể sửa những lỗi và bổ trợ thêm những đặc trưng nhỏ khác, ngoài những bạn cũng sẽ học và đưa những kiến thức và kỹ năng của bạn vào hành vi .Dồn hết tâm lý của bạn vào việc làm này. Học mọi thứ bạn hoàn toàn có thể. Làm việc làm ở mức tốt nhất bạn hoàn toàn có thể. Đừng nghĩ về tiền tài, đảm nhiệm nhiều vai trò khác nhau trong dự án Bất Động Sản này – tổng thể sẽ đến sau đó – còn lúc này, bạn hãy chỉ tập trung chuyên sâu vào để làm cho việc làm hoàn thành xong một cách hiệu suất cao nhất hoàn toàn có thể và lan rộng ra những kỹ năng và kiến thức của bạn .

Bước 6 : Học những bài thực hành thực tế tốt nhất về cấu trúc ( structural )

Bây giờ là lúc để bạn khởi đầu nâng cao chất lượng trong việc viết code. Đừng lo ngại quá nhiều về yếu tố phong cách thiết kế ứng dụng tại thời gian này. Bạn cần học làm thế nào để viết những đoạn “ code sạch ” ( clean code ) mà thuận tiện để hiểu và bảo dưỡng. Để làm được điều này, bạn sẽ cần phải đọc rất nhiều và xem nhiều ví dụ về một số ít đoạn code tốt ( good code ) .Hãy bổ trợ vào giá sách của bạn với những cuốn sách sau đây :Các cuốn sách về cấu trúc ngôn từ xác lập như :Tại thời gian này bạn thực sự muốn tập trung chuyên sâu việc học của mình vào giải quyết và xử lý cấu trúc để viết ra những đoạn code hay và thao tác trên nhiều mạng lưới hệ thống đang sống sót. Bạn sẽ cố gắng nỗ lực để thuận tiện thực thi một thuật toán trong ngôn từ lập trình của bạn đã chọn và làm nó theo cách thuận tiện để đọc và hiểu nhất .

Bước 7 : Học một ngôn từ lập trình thứ hai

Tại thời gian này bạn nên tăng trưởng năng lực bằng cách học một ngôn từ lập trình thứ hai thực sự tốt. Bạn nên chọn một ngôn từ lập trình mà khác hẳn ngôn từ mà bạn đã biết .

Điều này có vẻ như là hơi kỳ quặc, nhưng hãy để tôi giải thích lý do tại sao việc này là rất quan trọng. Khi bạn biết một ngôn ngữ lập trình thật giỏi, thì bạn chỉ hiểu các khái niệm của phát triển phần mềm trong ngôn ngữ lập trình đó, mà việc phát triển phầm mềm thì lại vượt quá một ngôn ngữ hoặc công nghệ riêng rẽ nào. Nếu bạn dành thời gian trong một môi trường hoặc ngôn ngữ lập trình mới, thì bạn sẽ bắt đầu nhìn thấy mọi thứ theo một cách mới. Bạn sẽ bắt đầu để học một cách thực tiễn hơn là theo cách bắt chước.

Là một lập trình viên mới, bạn thường rất thích làm mọi thứ theo một cách đặc biệt quan trọng nào đó mà không cần biết nguyên do tại sao bạn lại đang làm chúng theo cách đó. Một khi bạn đã học một ngôn từ lập trình thứ hai và nắm vững công nghệ tiên tiến, thì bạn sẽ khởi đầu khám phá xem về nguyên do tại sao. Tin tôi đi, bạn sẽ tăng trưởng nếu bạn triển khai điều này. Đặc biệt là nếu bạn chọn lấy một ngôn từ lập trình mà bạn ghét .Chắc chắn rằng bạn kiến thiết xây dựng một thứ gì đó cùng với ngôn từ mới này. Không cần phải hoành tráng, nhưng một cái gì đó đủ phức tạp để bắt bạn phải tâm lý động não thật nhiều và hoàn toàn có thể thậm chí còn phải đập nguồn vào tường – nhè nhẹ .

Bước 8 : Xây dựng một cái gì đó có giá trị

Tốt rồi, giờ đây tiến đến việc kiểm tra thực sự để chứng tỏ năng lực tăng trưởng ứng dụng của bạn. Liệu bạn hoàn toàn có thể thực sự thiết kế xây dựng một cái gì đó quan trọng cho chính mình ?Nếu bạn liên tục tiến lên và tự tin để nhận một việc làm thiết kế xây dựng một cái gì đó, và có lẽ rằng thậm chí thiết kế một cái gì đó cho một ông chủ của mình, bạn biết là bạn hoàn toàn có thể làm nó. Không có cách nào tốt hơn để biết nó hơn là bắt tay vào làm nó .Chọn một dự án Bất Động Sản mà sẽ sử dụng được hàng loạt những kiến thức và kỹ năng của bạn. Chắc chắn rằng bạn phối hợp cả cơ sở tài liệu, framework và mọi thứ khác mà bạn cần để thiết kế xây dựng một ứng dụng hoàn hảo. Dự án này nên là một cái gì đó mà sẽ chiếm của bạn nhiều hơn một tuần thao tác và nhu yếu 1 số ít tâm lý tráng lệ và phong cách thiết kế. Thử làm một cái gì đó mà bạn hoàn toàn có thể kiếm được tiền từ nó để bạn có một vài động lực thao tác .Nên chắc như đinh rằng bạn không tăng trưởng nó ra quá lớn. Bạn vẫn không muốn mang quá nhiều tham vọng vào đây. Chọn một dự án Bất Động Sản mà sẽ thử thách bạn, nhưng không phải là một dự án Bất Động Sản mà bạn sẽ chẳng khi nào hoàn thành xong được. Đây là một bước ngoặt quan trọng trong sự nghiệp của bạn. Nếu bạn có sự cam kết để theo và triển khai xong dự án Bất Động Sản này, thì bạn sẽ đi được rất xa, còn nếu bạn không hề … vâng, thì tôi không hề nói trước được điều gì .

Bước 9 : Kiếm một việc làm tạo một mạng lưới hệ thống mới

Ok, giờ đây là lúc để bạn lại liên tục đi tìm việc làm tiếp theo. Bởi vào thời gian này, bạn đã đạt được quyền lợi lớn nhất từ việc làm hiện tại – đặc biệt quan trọng là nếu nó vẫn chỉ là việc làm bảo dưỡng .Đây là thời gian để tìm kiếm một việc làm mà sẽ thử thách bạn – nhưng đừng quá nhiều. Bạn vẫn sẽ phải học rất nhiều, thế cho nên bạn không muốn nhận một việc làm mà quá phức tạp so với bạn. Lý tưởng là bạn nên tìm một việc làm nơi mà bạn sẽ có thời cơ để thao tác trong một nhóm đang kiến thiết xây dựng một mẫu sản phẩm gì đó mới mẻ và lạ mắt .Có thể bạn không phải là người kiến trúc ra mạng lưới hệ thống đó, nhưng việc tham gia tạo ra một ứng dụng sẽ giúp bạn lan rộng ra những kỹ năng và kiến thức của mình và thử thách bạn trong nhiều cách khác nhau hơn là chỉ ngồi bảo dưỡng một mạng lưới hệ thống ứng dụng đang sống sót .Bạn đã có một sự tự tin trong việc tạo ra một mạng lưới hệ thống mới rồi, bạn vừa kết thúc việc tạo ra một mạng lưới hệ thống quan trọng cho riêng mình, vì thế bạn hoàn toàn có thể bước vào buổi phỏng vấn mà không cảm thấy quá hoảng sợ và cùng với niềm tin rằng bạn hoàn toàn có thể làm được việc làm đó. Sự tự tin này sẽ giúp bạn hoàn toàn có thể nhận được bất kỳ việc làm nào mà bạn ứng tuyển vào .Hãy chắc như đinh rằng bạn khiến cho nhà tuyển dụng được tập trung chuyên sâu. Hãy nêu bật lên tập những kỹ năng và kiến thức xác lập mà bạn đã đạt được. Đừng cố gây ấn tượng với bất kể ai bằng một list dài dằng dặc của những kỹ năng và kiến thức chả tương quan gì. Tập trung vào những kỹ năng và kiến thức quan trọng nhất và tìm kiếm những việc làm mà tương thích đúng mực với chúng – hoặc ít ra thì cũng tương thích nhất hoàn toàn có thể .

Bước 10 : Học những bài thực hành thực tế tốt nhất về phong cách thiết kế ứng dụng

Bây giờ là thời gian để bạn đi từ một junior ( ít kinh nghiệm tay nghề ) thành một senior developer ( lập trình viên lão luyện ). Các junior developer thường bảo dưỡng những mạng lưới hệ thống, còn senior developer thì phong cách thiết kế và thiết kế xây dựng những mạng lưới hệ thống của họ. ( Thường là vậy, đương nhiên là cũng có một số ít senior developer chuyên đi bảo dưỡng những mạng lưới hệ thống. )Bạn đã sẵn sàng chuẩn bị để kiến thiết xây dựng những mạng lưới hệ thống ngay lúc này, nhưng giờ đây bạn cần phải học cách làm thế nào để phong cách thiết kế ra chúng .Bạn nên tập trung chuyên sâu vào việc nghiên cứu và điều tra vào những bài thực hành thực tế phong cách thiết kế tốt nhất và 1 số ít chủ đề nâng cao kiểu như :

  • Design patterns
  • Inversion of Control ( IOC )
  • Test Driven Development ( TDD )
  • Behavior Driven Development ( BDD )
  • Các giải pháp tăng trưởng ứng dụng như : Agile, SCRUM, v.v …
  • Message buses và integration patterns

Danh sách này hoàn toàn có thể sẽ còn dài ra rất nhiều – bạn sẽ chẳng khi nào hoàn toàn có thể kết thúc việc học và tăng trưởng những kiến thức và kỹ năng của bạn trong nghành này. Chỉ nên chắc như đinh rằng hãy khởi đầu cùng với những thứ quan trọng nhất thứ nhất – điều này sẽ nhờ vào vào cái mà bạn cảm thấy mê hoặc và nơi mà bạn muốn đến trong sự nghiệp của mình .Mục tiêu của bạn ở đây là có năng lực không chỉ là kiến thiết xây dựng một mạng lưới hệ thống mà một ai đó đã phong cách thiết kế ra, mà nó phải hình thành dựa trên quan điểm của chính bạn về ứng dụng nên được phong cách thiết kế ra làm thế nào và những dạng kiến trúc nào thì tương thích cho những loại yếu tố này .

Bước 11 : Tiếp tục học

Tại thời gian này thì bạn đã làm ra mẫu sản phẩm ứng dụng, nhưng bạn cần phải liên tục tăng trưởng để trở thành một lập trình viên giỏi, thậm chí còn hoàn toàn có thể trở nên “ xuất sắc ”. Luôn tâm niệm rằng bạn sẽ luôn có một cái gì đó để học thêm .Phải mất bao lâu thì bạn mới hoàn toàn có thể tới được điểm này ? Tôi cũng không biết chắc. Nó hoàn toàn có thể mất tối thiểu 1 số ít năm, nhưng hoàn toàn có thể phải đến 10 năm hoặc hơn – nó còn tùy thuộc vào việc bạn góp sức nhiều như thế nào và những thời cơ nào Open với bạn nữa .Có một con đường tắt khá tốt đó là cố gắng nỗ lực và luôn luôn bao quanh bạn bởi những lập trình viên giởi hơn bạn để hoàn toàn có thể học hỏi từ họ .

Một số điều cần làm trong suốt quy trình thực thi những bước trên

Có 1 số ít điều mà bạn nên làm trong suốt quy trình mà bạn đang làm theo 10 bước nói trên. Nó sẽ rất khó để liệt kê chúng trong mỗi bước, vì thế tôi sẽ liệt kê chúng một cách tóm tắt ở đây :

Dạy – Toàn bộ thời gian trong quá trình bạn đang học các thứ nói trên, bạn cũng nên dạy chúng cho những người khác. Không quan trọng là liệu bạn là một người mới bắt đầu hay là một chuyên gia, bạn sẽ có một cái gì đó có giá trị để dạy, dạy người khác thì cũng là một cách tốt nhất để học. Ghi lại tài liệu tất cả quá trình và chuyến hành trình của bạn, và giúp đỡ những người khác trên suốt con đường mà bạn đi.

Tiếp thị bản thân bạn – Tôi nghĩ rằng đây là một điều rất quan trọng đến mức tôi đã xây dựng một khóa học hoàn chỉnh về ý tưởng này. Học cách làm thế nào để tiếp thị bản thân và tiếp tục làm nó trong suốt sự nghiệp của bạn. Nhận ra cách làm thế nào để có thể tạo ra thương hiệu cá nhân cho chính bạn, xây dựng một danh tiếng cho riêng mình trong ngành công nghiệp phần mềm và bạn sẽ chẳng bao giờ sợ thiếu việc làm cả. Bạn sẽ quyết định về tương lai của chính mình nếu bạn học được cách tiếp thị bản thân. Có rất nhiều công việc phải làm, nhưng nó cũng mang lại giá trị xứng đáng. Bạn đang đọc bài viết này từ chính nỗ lực của tôi cho mục đích đó.

Đọc – Đừng bao giờ ngừng học. Đừng bao giờ ngừng đọc. Luôn luôn làm việc theo cách của bạn thông qua những cuốn sách. Luôn luôn phát triển bản thân. Chuyến hành trình tìm kiếm tri thức của bạn sẽ chẳng bao giờ kết thúc, vì việc học là chuyện của cả đời. Bạn có thể sẽ không biết được tất cả. Nếu bạn tiếp tục học trong suốt sự nghiệp của mình, thì bạn sẽ luôn luôn vượt trội hơn so với những đồng nghiệp khác.

Làm – Với mỗi điểm dừng chân trên chuyến hành trình đó, đừng chỉ học mà hãy làm. Hãy đặt mọi thứ mà bạn học được vào hành động. Thiết lập một quỹ thời gian bên cạnh để luyện tập các kỹ năng của bạn và viết code và xây dựng một số thứ. Cũng giống như việc bạn có thể đọc tất cả các cuốn sách về hướng dẫn chơi golf mà bạn muốn, nhưng bạn sẽ chẳng bao giờ trở thành tay golf số 1 thế giới như Tiger Woods nếu bạn không vác gậy đi đánh golf thực sự.

Theo Vinacode. net

Source: https://expgg.vn
Category: Thông tin

Recent Posts

Bảng xếp hạng Anime mùa hè 2022 – phần 7

Bảng xếp hạng Anime được xem nhiều nhất tuần của mùa hè. Bảng xếp hạng…

1 năm ago

Manga The Witch and the Beast được chuyển thể thành Anime

Theo thông báo của biên tập viên của manga là Shiraki trên Twitter Manga The…

1 năm ago

Tensei Shitara Slime Datta Ken chuẩn bị có bản điện ảnh

Vừa qua, dàn nhân lực chính thức cho bộ anime điện ảnh Tensei Shitara Slime…

1 năm ago

Anime One Punch Man công bố ra phần 3

Anime One Punch Man đã xác nhận ra phần 3, với thông báo sắp ra…

1 năm ago

Cẩm nang ĐTCL: Đội hình Bang Hội – Luyện Rồng

Nếu đã quá nhàm chán với các đội hình meta hiện tại thì cùng đổi…

1 năm ago

Anime EDENS ZERO chuẩn bị ra mắt phần 2

Vào hôm thứ tư vừa qua, Twitter chính thức cho anime Edens Zero đã xác…

1 năm ago