19 tip cho các kỹ sư phần mềm trong năm 2019
Sắp bước qua năm 2019 và thế giới lập trình sẽ có nhiều điều tuyệt vời xuất hiện. Nhưng đối với nhiều developer mới, triển vọng bước vào sự nghiệp coding có thể gặp nhiều khó khăn. Có rất nhiều công nghệ để học và rất nhiều ngôn ngữ để lựa chọn. Do đó, tôi đã soạn ra một danh sách ...
Sắp bước qua năm 2019 và thế giới lập trình sẽ có nhiều điều tuyệt vời xuất hiện. Nhưng đối với nhiều developer mới, triển vọng bước vào sự nghiệp coding có thể gặp nhiều khó khăn.
Có rất nhiều công nghệ để học và rất nhiều ngôn ngữ để lựa chọn. Do đó, tôi đã soạn ra một danh sách gồm 19 tip cho các kỹ sư phần mềm vào năm 2019.
Coding vui vẻ!!
- Đừng nản lòng
Ngành công nghệ là một trong những ngành công nghiệp khốc liệt và biến động nhất hiện nay, và nó có thể khiến bạn không thể quyết định có nhảy vào hay không. Điều tôi cố gắng ghi nhớ mỗi ngày là mọi người, tại một thời điểm trong sự nghiệp coding của họ, đều bắt đầu tại điểm xuất phát như mình. Tất cả các nhà dẫn đầu trong ngành công nghệ này đều từng là người mới.
Có phải có một số người học nhanh hơn những người khác? Đúng vậy. Nhưng bạn không thể để điều đó ngăn cản bạn bắt đầu.
Sự nghiệp coding là rất đáng có vì một lý do tuyệt vời sau: bạn có thể tự học bất cứ điều gì trên internet … miễn phí! Và thường thì cách sống trong ngành công nghệ sẽ thoải mái hơn nhiều so với các nghề nghiệp khác.
Điều quan trọng cần ghi nhớ là: dù có rất nhiều tài nguyên ngoài kia, bạn không cần phải học tất cả mọi thứ. Hãy bắt đầu với những điều cơ bản trước.
Bước đầu tiên là quyết định xem bạn muốn bắt đầu sự nghiệp của mình là front-end (giao diện người dùng của ứng dụng bạn tương tác) hay back-end (làm việc với dữ liệu). Khi bạn chọn được công việc thích hợp với mình, hãy bắt đầu với những điều cơ bản.
Nếu bạn chọn con đường phát triển là front-end, hãy tìm hiểu về HTML, CSS và JavaScript. Đừng coi những kỹ năng này là điều hiển nhiên. Mặc dù thoạt nhìn nó có vẻ đơn giản, nhưng một kiến thức vững chắc về nền tảng phát triển web sẽ đưa bạn đến với vai trò đầu tiên là Kỹ sư phần mềm. Đa số các công ty muốn thấy một ứng cử viên có kỹ năng nền tảng vững chắc hơn là sự hiểu biết khá tốt về một framework/library phổ biến.
Nếu bạn quyết định đi theo con đường phát triển là back-end, hãy thử một ngôn ngữ như Python hoặc Java. Đây là những kỹ năng rất cần thiết trong ngành công nghệ.
Nhưng đừng nản lòng. Sẽ có những ngày mà bạn cảm thấy hoàn toàn choáng ngợp. Nhưng nghĩ tới việc mọi người đều bắt đầu hành trình như bạn đã làm sẽ khiến mọi thứ trở nên dễ dàng hơn.
- Học cách đọc và giải mã code
Một trong những kỹ năng mà tôi đã có được khi tôi bắt đầu hành trình coding của mình là khả năng đọc code của các developer khác. Đây là một kỹ năng thực sự quan trọng vì nó cho phép bạn làm việc hiệu quả trong nhiều cơ sở code khác nhau.
Bạn không cần phải biết tất cả các sắc thái của ngôn ngữ lập trình để giải mã code đó đang làm gì.
Có nhiều cách để học cách đọc code. Kiểm tra một số dự án nguồn mở. Đọc qua tài liệu và nguồn code và xem bạn có thể xác định rõ điều gì đang xảy ra hay không. Bạn sẽ dần dần bắt đầu nhận ra rằng bạn đang cải thiện hơn mỗi ngày, và thậm chí bạn có lẽ mở được một PR!
Học cách phân tích code và xác định xem nó có được viết theo cách hiệu quả nhất hay không.
Học cách đọc và xem lại code là một kỹ năng tốn thời gian, nhưng rất đáng nỗ lực.
- Tìm phương pháp học tập phù hợp
Mọi người học theo nhiều cách khác nhau. Một số ghi nhớ kiến thức tốt nhất khi họ viết code. Một số khác lại học tốt nhất bằng cách đọc hoặc xem video.
Tôi thích xem các hướng dẫn online và đọc tài liệu để bổ sung kiến thức.
Tôi không phải là người có thể khởi động một ứng dụng sandbox và mã hóa nó. Tôi thích làm theo hướng dẫn và sau đó mở rộng các ý tưởng.
Hãy tìm phương pháp học tập của bạn. Thử các tài nguyên và platform khác nhau.
Một khi bạn tìm thấy phương pháp học tập phù hợp, bạn sẽ thấy rằng bạn học hiệu quả hơn nhiều.
- Tham gia vào cộng đồng
Tôi đã không tham gia cộng đồng công nghệ online cho đến khi tôi đã coding được 3 năm. Điều này đã mang lại cho tôi một bất lợi rất lớn.
Tôi đã vật lộn rất nhiều với suy nghĩ rằng mình không có năng lực làm gì và thấy khó giữ được động lực. Nhưng khi tôi tìm thấy một cộng đồng các developer trên Twitter và các trang blog, tôi đã đầu tư nhiều hơn vào việc học.
Tìm một dự án nguồn mở. Tweet các dự án coding của bạn. Đẩy các dự án của bạn lên GitHub. Tìm cách tham gia và bạn sẽ nhanh chóng phát triển mối quan hệ mật thiết hơn với coding.
- Cân bằng lý thuyết với thực hành
Để trở thành một lập trình viên hiệu quả, bạn phải hiểu lý thuyết đằng sau những mô hình nhất định (ở một mức độ nhất định).
Ví dụ: nếu bạn muốn hiểu tại sao một vòng lặp lồng nhau không có hiệu suất như hai vòng lặp trong cùng một phạm vi, bạn cần hiểu ký hiệu Big-O.
Chúng ta đang sống trong thời đại mà bạn không cần tấm bằng Khoa học Máy tính để thành công trong ngành công nghệ. Điều đang được nhắc tới là, một số khái niệm được dạy trong một bằng cấp CS là vô cùng có giá trị rồi (như là các thuật toán, phân tích thời gian chạy, v.v.).
Bạn không cần phải học tất cả các lý thuyết khoa học máy tính, nhưng bạn nên hiểu lý thuyết tại sao giải pháp này tốt hơn một giải pháp khác.
- Đừng so sánh bản thân với người khác
Sự nghiệp của bạn sẽ không bao giờ đi theo con đường chính xác như một developer khác. Bạn không nên so sánh mình với người khác.
Bạn là bản thể độc nhất và các kỹ năng bạn có được sẽ chỉ phù hợp với bạn.
Vì một trong những người dẫn đầu ngành công nghệ đang học Ruby on Rails không có nghĩa là bạn phải học theo. Tìm các kỹ năng mà khiến bạn hào hứng với lập trình và học chúng với khả năng tốt nhất của bạn.
Không có khung thời gian dự kiến liên quan đến việc học một công nghệ. Như tôi đã đề cập trong tip 3, mọi người học theo những phương pháp khác nhau và vì vậy họ học ở các mức độ khác nhau.
Chỉ vì bạn mất ba tháng để học JavaScript không có nghĩa là bạn là developer tệ hơn người học nó trong vòng một tháng.
- Tham gia vào các dự án nguồn mở
Cộng đồng nguồn mở đang phát triển mạnh mẽ, vậy tại sao không tham gia? Nếu bạn cần một cách để tăng cường kỹ năng đọc code của mình, hãy tìm một dự án nguồn mở!
Bạn có thể bắt đầu với cộng đồng GitHub!
Bạn thậm chí có thể bắt đầu dự án nguồn mở của riêng bạn! Tôi đã thành lập dự án nguồn mở của riêng mình tên là Coding Coach vào tháng 9 năm ngoái và đó là một trải nghiệm mở mang tầm mắt.
Nếu bạn muốn tham gia và học hỏi từ một số developer tuyệt vời, hãy thử xem!
- Hãy thoải mái với việc không thoải mái
Ngành công nghệ thay đổi liên tục, và điều đó có nghĩa là luôn có một kỹ năng mới để học hỏi.
Mặc dù điều này nhìn qua có lẽ đáng sợ, nhưng nó cũng tạo cho chúng ta nhiều cơ hội học một công nghệ mới (làm thế nào bạn có thể chán được chứ?!).
Cách tốt nhất để phát triển các kỹ năng coding của bạn là giải quyết các công việc khiến bạn sợ hãi. Bạn có thể làm được điều này bằng cách tình nguyện hoàn thành một nhiệm vụ đầy thách thức, hoặc trong thời gian rảnh rỗi với các công nghệ mới.
Bạn phải trở nên thoải mái với việc không thoải mái. Không phải lúc nào bạn cũng có tất cả các câu trả lời.
- Đừng ngại đặt câu hỏi
Cuối cùng, bạn sẽ gặp phải một vấn đề mà bạn không biết cách giải quyết. Và không có câu trả lời nào trên Stack Overflow!
Điều quan trọng là nhận ra khi bạn cần hỏi để được giúp đỡ. Nếu bạn đã cố gắng giải quyết vấn đề và không còn cách nào khả thi, đã đến lúc tìm sự giúp đỡ.
Cần sự giúp đỡ không làm bạn trông yếu đuối; đây là điều mà tôi vẫn đang đấu tranh
Nếu bạn đang dành hàng giờ đồng hồ cố gắng để hiểu lý do tại sao biến của bạn lại bị ReferenceError, hãy tìm sự trợ giúp.
- Bạn cần những người ủng hộ mình
Coding rất khó. Sẽ có những ngày bạn cảm thấy không muốn làm Kỹ sư phần mềm nữa.
Do đó, bạn phải có những người tin tưởng vào bạn. Tìm một nhóm bạn thân hoặc gia đình, những người sẽ xây dựng lòng tự trọng cho bạn, và nói lời tạm biệt với những người không làm vậy.
- Tập trung vào một việc một lần
Thực nhiên nhiều việc một lần là cách nhanh nhất để khiến cho mọi việc có kết quả không tốt. Con người không thể đa nhiệm một cách hiệu quả.
Chọn một việc để tập trung vào một lần thôi. Học tập hoặc hoàn thành công việc, chọn một trong hai rồi làm với khả năng tốt nhất của bạn. Sau khi hoàn thành, chuyển sang việc tiếp theo.
Đừng cố gắng làm nhiều việc cùng một lúc.
- Có cái nhìn tổng thể – làm thế nào để tất cả các công nghệ này khớp với nhau
Bạn sẽ học được nhiều công nghệ khác nhau trong suốt sự nghiệp coding của mình. Và có thể bạn sẽ cực kỳ mơ hồ khi xác định công nghệ nào giải quyết nhiệm vụ nào.
Tôi thích vẽ sơ đồ cho các vấn đề phức tạp. Nếu tôi được giao nhiệm vụ xây dựng một ứng dụng, tôi sẽ chia nó thành các miền. Ví dụ: tôi biết tôi cần HTML, CSS và JavaScript ở front-end, có lẽ tôi sẽ quyết định sử dụng React làm thư viện JS. Và có lẽ, nếu tôi cần ứng dụng này để mở rộng quy mô, tôi sẽ chọn Redux để quản lý trạng thái.
Tìm hiểu các cách sử dụng tốt nhất cho các công nghệ khác nhau. Khi nào bạn sẽ chọn cái này thay vì cái khác? Làm thế nào để chúng khớp với nhau?
Đây là những câu hỏi quan trọng bạn nên học cách trả lời.
- Tìm toolbox của bạn – tool nào là tốt nhất cho công việc?
Ngày nay không thiếu các công cụ có sẵn cho các developer. Tôi có thể kể tên ít nhất năm IDE mà tôi đã từng làm việc trong quá khứ.
Số lượng công cụ có sẵn có thể cực kỳ lớn. Hãy thực hiện một vài nghiên cứu, rồi quyết định công cụ nào phù hợp với bạn. Một số câu hỏi được đặt ra là:
- Công cụ này có đang được duy trì?
- Có cộng đồng developer nào đang phát triển mạnh mẽ đang sử dụng nó không (trong trường hợp bạn cần trợ giúp)?
- Để đặt cấu hình nó khó như thế nào?
- Tích hợp tool có gây ra tác động tiêu cực đến hiệu suất không?
- Tôi có thể giải quyết công việc mà không cần tool không?
Một tool tồn tại không có nghĩa là bạn cần sử dụng nó.
- Duy trì cân bằng công việc / cuộc sống
Bạn không cần phải dành cả ngày để coding. Thực ra, làm như vậy sẽ không tốt cho sức khỏe bạn.
Bạn phải duy trì sự cân bằng giữa công việc và cuộc sống, nếu không bạn có thể phải chịu hậu quả của sự kiệt sức.
Nếu bạn làm điều gì đó từ lúc thức dậy cho đến khi đi ngủ, bạn sẽ rất dễ bực bội.
Hãy dành thời gian cho bản thân và các sở thích khác của mình, và bạn sẽ duy trì được mối quan hệ tốt đẹp với việc coding.
- Tìm hiểu những điều cơ bản của thiết kế
Nếu bạn đang xây dựng một ứng dụng hướng tới người dùng, bạn nên biết những điều cơ bản về thiết kế. Tôi không nói rằng bạn cần học cách sử dụng Sketch hoặc Adobe Illustrator, nhưng học những điều cơ bản về UX Design sẽ mang lại tác động tích cực đến các ứng dụng của bạn.
Bạn không thể cho rằng người dùng sẽ sử dụng ứng dụng của bạn theo cách mà bạn làm. Trên thực tế, bạn không nên đưa ra bất kỳ giả định nào về hành vi của người dùng.
Hiểu lý do đằng sau các nguyên tắc UI nhất định để xác định giải pháp tốt nhất cho ứng dụng của bạn.
Ví dụ, người ta thấy rằng các nút vuông thực sự tốt hơn cho người dùng so với các nút tròn, vì chúng chứa nhiều pixel hơn.
Tìm hiểu những điều cơ bản này và bạn có thể chắc chắn rằng ứng dụng web của bạn sẽ nổi bật.
- Tìm một người hướng dẫn
Tìm một người hướng dẫn khá khó nhưng lại rất cần thiết. Bạn có thể học được những kỹ năng vô giá từ lời khuyên của họ và thực hành coding một cách tốt nhất.
Không bao giờ quá khó khăn khi hỏi một người trong ngành, người mà bạn ngưỡng mộ, để hướng dẫn cho bạn. Điều tồi tệ nhất họ có thể nói là không!
Và khi thời gian trôi qua, hãy nhớ đánh giá lại quá trình hướng dẫn của bạn để đảm bảo rằng việc này có lợi cho cả bạn và người hướng dẫn.
- Xây dựng một portfolio và resume tuyệt vời
Portfolio và resume là thứ gây ấn tượng đầu tiên đối với một nhà tuyển dụng trong quá trình phỏng vấn. Nó rất quan trọng vì đó là cả bộ mặt của bạn.
Sửa lỗi chính tả và ngữ pháp. Và đảm bảo rằng mọi thứ được định dạng nhất quán và phù hợp.
Nếu bạn muốn biết thêm chi tiết về việc viết một resume tuyệt vời, hãy xem bài viết trên blog trước đây của tôi.
- Thất bại nhanh chóng và thất bại thường xuyên
Thất bại là chủ quan. Nếu bạn mắc lỗi, hãy học hỏi từ nó. Đừng phạm sai lầm tương tự lần hai. Chỉ vì một cái gì đó “thất bại” không có nghĩa là nó không có giá trị gì.
Người thành công nhất trong lịch sử đã tạo ra rất nhiều thành phẩm, nhưng chỉ một số ít trong đó được công nhận.
Bạn không cần phải code các website đẹp ngay từ bắt đầu cho đến khi kết thúc cho mỗi dự án bạn phát triển. Tập trung vào công nghệ cơ bản, và bạn có thể quan tâm đến việc làm cho nó trông đẹp hơn sau này.
- Cứ tiếp tục
Sẽ có ngày bạn muốn từ bỏ coding. Đừng. Đây là một công việc khó khăn và mọi người đều mắc phải hội chứng kẻ mạo danh (suy nghĩ rằng bản thân là kẻ tầm thường và không có năng lực làm gì).
Bạn không cô đơn. Và coding sẽ trở nên dễ dàng hơn theo thời gian.
Làm mỗi ngày, và bạn sẽ ổn thôi.
Cứ tiếp tục.
Techtalk via Dev