JavaRush /Blog Java /Random-VI /Nghỉ giải lao #12. Những khuôn mẫu mà một lập trình viên ...

Nghỉ giải lao #12. Những khuôn mẫu mà một lập trình viên nên loại bỏ và những kỹ năng không thể tránh khỏi

Xuất bản trong nhóm

Những khuôn mẫu mà một lập trình viên nên tránh

Nguồn: Freecodecamp Bạn có mọi thứ mà một lập trình viên cần không? Rất có thể câu trả lời của bạn sẽ dựa trên một loạt các khuôn mẫu và quan niệm sai lầm. Chúng ta hãy xem xét một số điều mà theo khuôn mẫu, một lập trình viên nên có, nhưng thực tế lại không hề bắt buộc. Nghỉ giải lao #12.  Những định kiến ​​rằng lập trình viên tốt nhất nên bỏ đi và những kỹ năng không thể tránh khỏi - 1

Khuynh hướng đặc biệt

Hãy quên đi những thứ “có thì tốt”. Những người muốn trở thành nhà phát triển không nhất thiết phải là thiên tài hay thậm chí là nhà toán học. Bạn không cần phải có tư duy đặc biệt hay bộ não đặc biệt nào. Lập trình là một kỹ năng. Tương tự như việc chơi ghi-ta hoặc chạy marathon. Để phát triển kỹ năng này bạn cần lập trình. Hãy dành thời gian và sức lực cho nó. Bạn cần học hỏi từ người khác. Đây là một kỹ năng phụ thuộc trực tiếp vào mức độ nỗ lực của bạn.

Hãy là một chuyên gia máy tính

Các chương trình được viết trên máy tính. Điều này là đúng. Vì vậy, dù nhìn thế nào đi nữa, bạn cũng sẽ cần một chiếc máy tính để làm việc. Nhưng bạn không cần phải biết cách tự lắp ráp máy tính. Bạn không cần phải hiểu hoạt động bên trong của nó. Bạn không cần phải là người mà tất cả bạn bè của bạn tìm đến để giải quyết mọi vấn đề về máy tính của họ. Tất nhiên, bạn càng biết nhiều về công cụ của mình thì bạn sẽ càng tự lập hơn nếu có bất kỳ vấn đề nào phát sinh với công cụ đó. Nhưng bạn rất có thể trở thành một lập trình viên giỏi mà không cần biết cách sửa máy tính xách tay của dì mình.

Có bằng cấp về khoa học máy tính. Có bằng tốt nghiệp gì cả

Tốt nghiệp đại học, nếu may mắn được học ở đó thì nói chung là tuyệt vời. Tốt nghiệp ngành khoa học máy tính thậm chí còn tốt hơn. Nhưng điều này không thực sự cần thiết đối với một lập trình viên. Lĩnh vực CNTT có rất nhiều chuyên gia tuyệt vời không có trình độ học vấn cao hơn (cả chuyên ngành và bất kỳ chuyên ngành nào khác). Đã đặt cho mình mục tiêu trở thành lập trình viên, bạn có thể dễ dàng đạt được nó mà không cần tốt nghiệp đại học.

Sự sẵn có của máy tính mới nhất và (hoặc) phần mềm đắt tiền

Tôi từng nghĩ rằng vì một lập trình viên viết chương trình cho máy tính thì bản thân anh ta nhất thiết phải có một chiếc máy tính mạnh mẽ và tiên tiến nhất. Đối với tôi, dường như để phát triển chương trình, bạn chắc chắn cần có phần mềm chuyên dụng và đắt tiền. Cũng giống như những người tham gia thiết kế hoặc làm việc với video. Nhưng sau đó tôi rất ngạc nhiên khi nhận ra rằng tất cả những gì tôi cần để tạo trang web đầu tiên của mình là Notepad đã được cài đặt sẵn trong Windows. Sổ tay!! Chương trình khiêm tốn và nhàm chán nhất. Trình soạn thảo văn bản cơ bản và tầm thường nhất trong tất cả. Vì vậy, để học cách thực hiện những điều đơn giản nhất, bạn có thể sử dụng máy tính cũ của mình mà không cần bất kỳ chuông và còi nào. Nhưng sau đó, để làm việc chuyên nghiệp, bạn sẽ cần một chiếc xe tốt hơn.

Trình độ tiếng Anh tốt

Kiến thức về tiếng Anh chắc chắn sẽ hữu ích cho bạn. Ngôn ngữ lập trình được phát minh và phát triển ở các nước nói tiếng Anh. Dù tốt hay xấu, tiếng Anh vẫn thống trị ngành phát triển phần mềm. Các từ được sử dụng trong ngôn ngữ lập trình là tiếng Anh. Một phần quan trọng của các hướng dẫn và bài viết cũng bằng tiếng Anh. Vì vậy, nếu bạn có trình độ hiểu biết tốt về ngôn ngữ này, nó sẽ giúp ích cho bạn. Nhưng nếu bạn không biết tiếng Anh, đây không phải là rào cản cản trở việc học lập trình của bạn. Bạn có thể học tập và trở thành một chuyên gia giỏi chỉ với trình độ tiếng Anh cơ bản.

Hãy là một người hâm mộ máy tính. Hãy là một game thủ

Đam mê máy tính là tốt, đam mê game là tuyệt vời. Nhưng bạn có thể dễ dàng trở thành thành viên của nhóm phát triển mà không cần đến máy tính nói chung hay trò chơi máy tính nói riêng. Bây giờ không phải là những năm 90 nữa, hiện tại có rất nhiều người làm việc trong ngành này.

Hãy là người hướng nội

Ở đây cũng tương tự. Không có loại tính cách cụ thể nào phù hợp nhất cho nghề này. Không cần thiết phải tìm kiếm bất kỳ đặc điểm nào ở bản thân để chứng minh liệu hoạt động này có phù hợp với bạn hay không. Thái độ của bạn đối với vấn đề này quan trọng hơn nhiều. Một yếu tố quan trọng của thành công là khả năng vượt qua thất bại và kiên trì. Và đây là một kỹ năng có được, không phải là một đặc điểm tính cách.

Để được trẻ

Bạn không cần phải còn trẻ để làm việc trong lĩnh vực CNTT. Để trở thành một lập trình viên giỏi, bạn cũng không cần phải bắt đầu con đường này khi còn trẻ. Tôi bắt đầu học ở tuổi 39 và có công việc đầu tiên ở tuổi 40. Và ngoài tôi ra, còn có rất nhiều người ở các độ tuổi khác nhau cũng đã chuyển đổi thành công tương tự. Chưa bao giờ là muộn để học. Và thay đổi nghề nghiệp nữa. Thêm vào đó, những công ty chỉ tìm cách tuyển dụng những người trẻ tuổi vẫn khó có thể là nơi làm việc tốt.

Hãy là một người đàn ông

Điều này là hiển nhiên, nhưng nó đáng để nói. Bạn không cần phải là đàn ông để trở thành lập trình viên. Và mặc dù nam giới vẫn chiếm ưu thế trong số các lập trình viên, nhưng tình hình đang thay đổi nhanh chóng. Giới tính không ảnh hưởng đến việc một người sẽ trở thành lập trình viên giỏi như thế nào. Không có nhiễm sắc thể hoặc cấu trúc não đặc biệt nào tạo nên thiên hướng cho nghề này. Bạn chỉ cần có khả năng giải quyết vấn đề. Đó là tất cả.

10 kỹ năng mà một nhà phát triển nên thành thạo vào năm 2020

Nguồn: Dev.to Nếu muốn phát triển thành công, bạn cần nắm vững các kỹ năng phân biệt người mới bắt đầu với người lập trình cấp trung. Trong bài viết này, tôi sẽ chia sẻ 10 kỹ năng mà tôi nghĩ bạn cần học trong năm nay. Danh sách này không có nghĩa là đầy đủ nhưng nó sẽ cung cấp cho bạn một điểm khởi đầu tốt để nghiên cứu sâu hơn.

1. Vùng chứa (Docker và Kubernetes)

Vào năm 2020, mọi lập trình viên, kỹ sư phát triển, nhà khoa học dữ liệu và thậm chí cả trưởng nhóm nên biết về các container như Docker và Kubernetes. Với sự trợ giúp của họ, bạn không chỉ có thể thử nghiệm các ứng dụng trong một môi trường duy nhất mà còn đơn giản hóa quá trình triển khai chúng. Với Docker, bạn có thể nhanh chóng triển khai một ứng dụng với tất cả sự hỗ trợ phụ thuộc và không phải lo lắng về khả năng mở rộng. Các container thực hiện việc này một cách tự động. Nếu bạn học Docker và Kubernetes, bạn sẽ trở thành một chuyên gia được săn đón nhiều hơn.

2. Nền tảng đám mây (AWS, Google Cloud hoặc Azure)

Bên cạnh vùng chứa, đám mây là một thứ khác mà mọi nhà phát triển và nhà khoa học dữ liệu nên biết vào năm 2020. Các công ty lớn và nhỏ đang ngày càng chuyển dữ liệu của họ lên đám mây để tiết kiệm tiền và cải thiện khả năng mở rộng. Vì vậy, sớm hay muộn bạn vẫn sẽ phải làm việc với nền tảng đám mây. Ngoài ra, không thể thiếu chúng trong lĩnh vực phát triển khoa học dữ liệu, học máy và trí tuệ nhân tạo. Chỉ đám mây mới có thể cung cấp sức mạnh tính toán cần thiết cho các mô hình sử dụng nhiều tài nguyên như vậy.

3. Cấu trúc dữ liệu và thuật toán

Nếu muốn trở thành lập trình viên, bạn phải có kiến ​​thức tốt về cấu trúc dữ liệu và thuật toán. Không có lựa chọn nào ở đây. Họ luôn được hỏi về bất kỳ cuộc phỏng vấn nào. Ngoài ra, nếu không có kiến ​​thức về mảng, tập hợp, danh sách liên kết, ánh xạ thì bạn sẽ không thể viết được ứng dụng.

4. Công cụ kiểm soát phiên bản (Git)

Bạn phải học cách làm việc với các công cụ kiểm soát phiên bản như Git và SVN. May mắn thay, Git và GitHub đang thống trị thị trường và với hơn 70% công ty sử dụng Git, bạn có thể hạn chế chỉ học công cụ này. Nhưng đừng quên rằng bạn cũng sẽ phải làm quen với các khái niệm kiểm soát phiên bản nâng cao như phân nhánh và hợp nhất, cũng như làm việc trên dòng lệnh và sử dụng GUI.

5. Trình soạn thảo văn bản

Không có ngày nào tôi không sử dụng trình soạn thảo văn bản tại nơi làm việc. Nó vẫn là một trong những công cụ quan trọng nhất đối với bất kỳ lập trình viên nào. Tôi chủ yếu sử dụng NotePad trên Windows và VIM trên Linux, nhưng ngày nay bạn có nhiều tùy chọn với các trình soạn thảo nâng cao như Sublime và NotePad++ có các tính năng giống IDE.

6. IDE (VSCode hoặc IntelliJIDEA)

Đối với các lập trình viên Java, có ba IDE chính để lựa chọn như Eclipse, NetBeans và IntelliJIDEA. Tôi thích Eclipse hơn, nhưng IntelliJIDEA cũng khá tốt.

7. Cơ sở dữ liệu và SQL

SQL là một ngôn ngữ cổ điển, ngôn ngữ này đã tồn tại hơn 30 năm và tôi nghĩ nó sẽ tiếp tục được sử dụng trong khoảng thời gian tương tự. Với sự phổ biến của cơ sở dữ liệu, một lập trình viên phải biết cách làm việc với cơ sở dữ liệu; cũng biết tiêu chuẩn hóa và thiết kế bảng và cũng quen thuộc với SQL. Có nhiều cơ sở dữ liệu như Oracle, MySQL, Microsoft SQL Server, PostgreSQL, v.v. Biết ít nhất một điều là đủ. Bạn cũng có thể chèn, cập nhật, xóa dữ liệu và viết truy vấn SQL để truy xuất dữ liệu đó.

8. UNIX (Linux)

Giống như SQL, UNIX cũng đã đứng vững trước thử thách của thời gian. Vì các lập trình viên dành phần lớn thời gian làm việc trên các máy tính dựa trên UNIX, chẳng hạn như máy chủ Linux, nên kiến ​​thức tốt về dòng lệnh Linux là điều cần thiết.

9. Ngôn ngữ lập trình hướng đối tượng (C++, Java hoặc Python)

Tất nhiên, bạn sẽ không cần phải biết ngôn ngữ lập trình hướng đối tượng như C++, Java hoặc có lẽ là Python hoặc JavaScript. Bạn có thể chọn bất cứ điều gì bạn muốn, nhưng đề nghị cá nhân của tôi là ít nhất bạn cũng biết Java. Thật dễ dàng để bắt đầu, khiến nó trở thành lựa chọn phù hợp cho người mới bắt đầu.

10. Khái niệm cơ bản về mạng

Trong thế giới hiện đại không thể làm được nếu không có mạng máy tính. Bạn sẽ tìm thấy mạng máy tính ở mọi nơi bạn đến, từ nhà bạn nơi bạn sử dụng Wi-Fi đến các trường học, cao đẳng và văn phòng nơi bạn sử dụng Mạng cục bộ (LAN). Hầu hết các ứng dụng bạn viết sẽ hoạt động theo kiểu máy khách-máy chủ, trong đó yêu cầu được gửi qua mạng đến máy chủ. Điểm mấu chốt là bạn phải hiểu những điều cơ bản về mạng để phát triển và duy trì ứng dụng của mình.
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION