7 sai lầm bạn đang mắc phải trong sự nghiệp lập trình
Đây là bài chia sẻ được dịch từ bài viết của tác giả John Sonmez (https://simpleprogrammer.com/7-mistakes-youre-making-in-your-programming-career/). May mắn có cơ hội được trò chuyện với nhiều lập trình viên về cách giúp họ có thể cải thiện sự nghiệp và thúc đẩy mạnh sự phát triển của họ, tôi ...
Đây là bài chia sẻ được dịch từ bài viết của tác giả John Sonmez (https://simpleprogrammer.com/7-mistakes-youre-making-in-your-programming-career/).
May mắn có cơ hội được trò chuyện với nhiều lập trình viên về cách giúp họ có thể cải thiện sự nghiệp và thúc đẩy mạnh sự phát triển của họ, tôi đã nhận ra rằng rất nhiều lập trình viên đều đang mắc phải những sai lầm giống nhau và thậm chí họ không hề nhận ra điều đấy. Ngay bản thân tôi cũng không phải ngoại lệ.
Sau đây là danh sách 7 sai lầm thường gặp của các lập trình viên trong sự nghiệp phát triển phần mềm của họ:
1. Không có mục tiêu rõ ràng
Nếu bạn không có một đích đến rõ ràng, cuộc sống của bạn sẽ chỉ trôi dạt, và gió sẽ đưa đẩy bạn đi bất cứ nơi đâu. Sự nghiệp của bạn sẽ cứ giậm chân tại chỗ hoặc rẽ sang một hướng khác mà bản thân bạn không hề mong muốn.
Để có thể làm chủ tương lai của bản thân, bạn nên:
- Xác định đích đến cuối cùng cho sự nghiệp của bạn
- Đặt ra những mục tiêu cụ thể cho từng cột mốc trong sự nghiệp. Với mỗi mục tiêu, hãy hoàn thành nó một cách vững chắc, xác định rõ những gì bạn cần phải làm để có thể đạt được mục tiêu đó.
- Ngay tại thời điểm này, hãy xác định điều đầu tiên mà bạn muốn nhắm tới.
Bạn nên viết những mục tiêu đó ra những mẩu giấy, đặt chúng ở đâu đó bạn có thể nhìn thấy mỗi ngày, để bạn sẽ liên tục được nhắc nhở về những gì mà mình đang nhắm tới.
2. Không đầu tư vào kỹ năng mềm
Tôi biết rất nhiều lập trình viên viết codes rất giỏi, chạy thuật toán rất bá đạo. Họ có thể hiểu và suy nghĩ về những kiến trúc phức tạp trong đầu ở một level mà thậm chí tôi không hy vọng là sẽ có thể cạnh tranh với họ.
Nhưng hãy đoán thử xem, sau khi học xong một khóa về phát triển sự nghiệp lập trình, tôi đã vượt mặt họ, không chỉ về vị trí công việc, mà còn về năng suất làm việc, hiệu quả công việc và lương bổng.Tôi không nói ra để khoe khoang, mà để chỉ ra rằng tầm quan trọng của kĩ năng mềm đối với sự nghiệp lập trình của bạn, chứ không chỉ có những kĩ năng về kĩ thuật như rất nhiều lập trình viên đang tập trung vào.
Là một lập trình viên, tôi chắc chắn rằng bạn cũng biết nó không chỉ có việc viết codes mà thôi. Có rất nhiều những kĩ năng quan trọng khác cần thiết để thành công. Hằng ngày, chúng ta thường xuyên phải giao tiếp với những người khác kể cả trong công việc lẫn cuộc sống bên ngoài, vì vậy kĩ năng giao tiếp là không thể thiếu.
Deadline dồn dập, yêu cầu công việc của lập trình viên thay đổi không ngừng, đòi hỏi sự tập trung cao độ, tinh thần thép. Chúng ta cũng cần học cách sắp xếp thứ tự ưu tiên của công việc, nâng cao hiệu suất làm việc nhiều nhất có thể.
Nhưng cũng đừng quên quan tâm đến sức khỏe và thể lực cũng như tình hình tài chính của bản thân, nếu bỏ qua những thứ đó bạn sẽ gặp rắc rối lớn đó.
Chủ đề này còn có rất nhiều điều để nói, bạn đọc hãy tìm hiểu thêm trong cuốn sách này của tôi nhé “Soft Skills: The Software Developer's Manual”
3. Không tham gia cộng đồng
Một trong những điều mang lại lợi ích to lớn trong sự nghiệp lập trình của bạn, đó chính là tham gia vào cộng đồng.
Không chỉ trở thành một phần của tập thể rộng lớn, việc tham gia vào cộng đồng còn giúp tôi không cảm thấy cô đơn, và cảm thấy được thuộc về một nơi nào đó. Hơn thế nữa, nó còn giúp tôi trau dồi kĩ năng, tạo sự kết nối với mọi người và nâng cao tham vọng của bản thân lên một chút.
Nếu bạn đang không tham gia vào một cộng đồng lập trình nào cả, tôi rất khuyến khích bạn nên tham gia.
Nếu bạn đang cảm thấy sự nghiệp lập trình phần mềm của mình gặp trì trệ, có rất ít điều có thể giúp bạn tạo bước nhảy vọt tốt hơn việc tham gia một cộng đồng những người có cùng chung chí hướng, những người sẽ giúp bạn chia sẻ khó khăn và đưa ra những lời khuyên hữu ích.
Nhưng làm thế nào bạn có thể tham gia một cộng đồng?
Có rất nhiều nhóm Meetup trên toàn thế giới, bạn có thể dễ dàng tham gia và tham dự các buổi meeting của họ.
Hoặc, bạn có thể tham gia Code Camp, đây là một sự kiện thường niên, miễn phí, tụ hội rất nhiều lập trình viên cùng nhau chia sẻ về nghề nghiệp của họ. Mọi người đều có thể đăng ký để thuyết trình về bất cứ chủ đề nào họ muốn.
Nếu bạn không muốn gặp gỡ trực tiếp mọi người, bạn cũng có thể tham gia vào những cộng đồng ảo. Bạn có thể bắt đầu bằng việc tham gia cộng đồng trên Simple Programmer. Có rất nhiều lập trình viên giỏi bình luận trên blog này và sẽ giúp bạn tháo gỡ những thắc mắc hoặc vấn đề gặp phải.
Ngoài ra, còn có rất nhiều cộng đồng trực tuyến tuyệt vời khác nữa. Bạn có thể tìm kiếm những blog, forums hoặc những chat channels phổ biến dành cho những lập trình viên có chứa những chủ đề mà bạn đang quan tâm.
Bạn cũng có thể tham gia vào cộng đồng bằng cách đóng góp trực tiếp. Hãy bắt đầu xây dựng một blog riêng cho mình và viết về những gì bạn biết, những gì bạn được học.
Blog này là điều đầu tiên tôi đã làm để trở thành một phần của cộng động lập trình rộng lớn ngoài kia.
4. Không chuyên môn hóa
Nếu bạn theo dõi blog này và nội dung mà tôi đã đăng lên kênh Youtube của mình, hoặc bạn đã đọc cuốn sách này, chắn hẳn bạn đã nghe đến nhàm tai về chủ đề này rồi, nhưng vì nó quan trọng nên tôi vẫn nhắc lại mỗi khi có cơ hội.
Chuyên môn hóa trong phát triển phần mêm
Hãy chọn cho mình một lĩnh vực và tìm hiểu chuyên sâu về nó. Điều này không có nghĩa là bạn không nên có kiến thức nền rộng - Bản thân tôi là một big fan của việc biết nhiều ngôn ngữ - tuy nhiên, hãy chọn một lĩnh vực cụ thể và tập trung đào sâu về nó. Điều này rất quan trọng, đặc biệt là khi bạn bắt đầu con đường sự nghiệp của mình, để trở thành một chuyên gia trong lĩnh vực nào đó.
Những chuyên gia luôn được mọi người săn đón, họ được trả mức lương cao hơn và được trả theo giờ, và họ có thể xây dựng danh tiếng nhanh hơn.
Ngoài ra, bạn sẽ cảm thấy một sự hài lòng nhất định khi thấy rằng mình biết về một mảng lập trình, hoặc công nghệ một cách rất sâu sắc.
Bạn luôn muốn trở thành một con cá lớn trong một cái ao nhỏ, chứ không phải điều ngược lại
Cuối cùng, đừng lo lắng việc lựa chọn một lĩnh vực sẽ cản trở khả năng phát triển của bạn, vì điều đó rất hiếm xảy ra.
5. Không đầu tư vào thương hiệu cá nhân
Suốt cuộc đời bạn, có nhiều sẽ đến rồi đi. Bạn có thể thay đổi công việc. Bạn có thể thay đổi bạn đời. Bạn có thể giàu hoặc nghèo. Bạn có thể gầy hoặc béo, nhưng dù có bất cứ chuyện gì xảy ra đi chăng nữa, có một thứ sẽ luôn gắn liền với cuộc đời bạn... Đó là tên của bạn.
Vậy bạn có nghĩ nên đầu tư một chút công sức cho nó?
Tên - hay thương hiệu cá nhân, là một tài sản vô cùng quý giá mà nhiều lập trình viên không nhận ra. Nó là một công cụ tuyệt vời giúp bạn có thể tìm kiếm công việc tốt, thăng chức, tìm kiếm khách hàng hay xây dựng một start-up. Nếu bạn có danh tiếng tốt, bạn có thể xoay chuyển mọi thứ chỉ bằng một cái bắt tay đơn giản.
Tôi biết nhiều lập trình viên sẽ không bao giờ phải lo chuyện thất nghiệp nữa, bởi vì họ đã đầu tư thời gian và công sức để xây dựng cho mình một thương hiệu cá nhân vững chắc. Họ biết rằng không có vấn đề gì cả và họ có thể kiếm một công việc khác trong vài giờ, vì họ đã có tiếng tăm rồi.
Chúng ta thường thấy các công ty, thương hiệu lớn đầu tư rất nhiều để quảng bá sản phẩm, dịch vụ của họ. Vậy bạn đã từng nghĩ đến giá trị của việc quảng bá thương hiệu cá nhân chưa?
Để xây dựng thương hiệu các nhân trong ngành lập trình, tôi khuyến kích bạn nên bắt đầu bằng việc viết blog. Hãy chọn một lĩnh vực cụ thể nào đó, tìm hiểu về nó và sau đó bắt đầu viết về nó. Một trong những cách viết blog hiệu quả nhất là hãy tạo những nội dung hữu ích đối với người dùng.
Ví dụ, bài viết này, blog này đang xây dựng thương hiệu cá nhân và danh tiếng của tôi trên cộng đồng mạng. Nếu bạn thấy bài viết này hay website của tôi có giá trị đối với bạn, bạn có thể chia sẻ nó cho những người khác cùng biết tới. Bạn có thể bookmark nó lại và quay lại trong thời gian gần hoặc đăng ký để nhận những thông tin trong thời gian tới.
Viết blog cá nhân là một trong những cách để xây dựng thương hiệu cá nhân. Ngoài ra bạn cũng có thể tạo những videos trên Youtube, đăng podcasts, viết bài cho các tạp chí, sách, hoặc nói chuyện trong các sự kiện.
Bạn không cần phải làm mọi thứ mà tôi vừa nêu lên ở trên, nhưng chúng cũng là những gợi ý tốt mà bạn có thể lựa chọn. Nếu bạn muốn tìm hiểu sâu hơn về cách để xây dựng thương hiệu cá nhân cho mình, thì tôi có một chuỗi bài chỉ cho bạn chính xác những điều cần phải làm.
6. Không có side-project
Bạn nên có những dự án làm thêm ngoài giờ làm việc. Đối với công việc lập trình, một side-project mang lại nhiều lợi ích mà bạn không nhận ra.
Đầu tiên, một side-project là một cách tuyệt vời để bạn trau dồi những skill của mình, đặc biệt trong lĩnh vực mà bạn không có khả năng làm trong giờ làm việc hàng ngày. Làm việc trong một side-project cũng là một cách tuyệt vời để bạn phát triển những kĩ năng mới và học hỏi những công nghệ mới, nó sẽ rất có ích nếu bạn cần tìm một công việc mới. Tôi đã từng nói chuyện với nhiều lập trình viên, và họ nói rằng họ không có cơ hội làm việc với những công nghệ mới trong công việc hiện tại của họ, do đó những kĩ năng của họ không liên quan đến thị trường làm việc hiện tại. Tôi luôn khuyên những lập trình viên khác nên làm việc trong một vài side-project, sử dụng những công nghệ mới mà họ muốn làm việc, như vậy sẽ là một cách tuyệt vời để bạn phát triển được những kĩ năng liên quan.
Và, cũng đừng quên những lợi ích tài chính mang lại cho bạn từ những side-project đó. Bạn có thể không bắt đầu một side-project để kiếm tiền, nhưng chúng là một cách tuyệt vời để bạn kiếm thêm thu nhập đó.
Khoảng 4 năm trước, tôi đã bắt đầu làm việc trong một side-project về Android và iOS, và cho đến bây giờ tôi vẫn tiếp tục kiếm tiền từ nó. Tôi cũng biết nhiều lập trình viên đã bắt đầu với side-project để học hỏi, nhưng cuối cùng chúng lại trở thành công việc chính của họ.
Thực tế, tôi cũng là một trong số họ. Blog này và những thứ khác xung quanh Simple Programmer là công việc chính của tôi. Tôi thích mọi người gọi mình là một người hướng dẫn cho những lập trình viên, nhưng tôi cho rằng mọi người hay gọi tôi là một blogger toàn thời gian :v.
Một side-project cũng có thể đem lại cho bạn nhiều niềm vui. Nó cũng là nơi để bạn xả stress hiệu quả khỏi công việc hàng ngày.
7. Không có kế hoạch tự học hỏi
Mỗi khi tôi phỏng vấn một lập trình viên, một trong những câu hỏi đầu tiên tôi hỏi họ là về kế hoạch tự học. Họ đang làm gì để cải thiện bản thân? Tôi hỏi rằng, họ hay làm gì để giúp mình luôn cập nhật những thay đổi liên tục của lĩnh vực lập trình. Tôi hỏi về những cuốn sách họ đọc gần đây và cuốn sách nào mà họ nghĩ là tốt nhất m à mọi lập trình viên nên đọc.
Tôi tìm kiếm câu trả lời tiết lộ kế hoạch cải thiện và phát triển bản thân, bởi vì tôi biết một người suy nghĩ không ngừng đến việc cải thiện bản thân sẽ không những trở nên thành công mà còn giúp cho những người xung quanh cũng thành công.
Nếu bạn đang không có một kế hoạch nào để học những điều mới, và phát triển bản thân của mình thì bạn cần phải có một kế hoạch ngay bây giờ. Chỉ cần cam kết rằng bạn sẽ đọc một cuốn sách về kĩ thuật hoặc sách về phát triển sự nghiệp mỗi tháng. Một năm bạn sẽ đọc được 12 cuốn sách.
Cá nhân tôi cũng dành ít nhất 45 phút mỗi ngày, trong khi đang đi bộ trên máy chạy bộ, tôi đọc một cái gì đó để tiếp tục mục tiêu phát triển bản thân của mình.
Hãy nhớ rằng góp gió thành bão. Chỉ cần 30 phút mỗi ngày, bạn có thể tạo ra sự thay đổi lớn trong một vài năm.
Kết luận
Hi vọng bài viết này sẽ giúp bạn nhận ra những sai lầm thường xuyên mắc phải của mình, nhưng nó sẽ không làm cho bạn tốt lên một chút nào nếu bạn chỉ nhận ra mà không hành động.
Hãy hành động ngay hôm nay. Chọn ra ít nhất một lỗi lầm mà bạn đang mắc phải và cam kết sẽ sửa đổi nó.