7 sai lầm nguy hiểm trong công việc của lập trình viên (updated)

cong-viec-cua-lap-trinh-vien

Công việc của lập trình viên rất vất vả và nhiều thử thách. Đọc bài viết này để biết:

  • Trong công việc của lập trình viên, 7 sai lầm thường gặp là gì?
  • Cách khắc phục giúp sự nghiệp vút bay

You can read English version here.

Giới thiệuJohn Sonmez là developer nổi tiếng với những bài viết hữu ích giúp các developer khác xây dựng thương hiệu cá nhân, phát triển sự nghiệp.

ITviec hân hạnh giới thiệu một trong những bài viết tâm đắc của anh John Sonmez: 7 sai lầm nguy hiểm trong công việc của lập trình viên.

Tham khảo hàng trăm việc làm developer chất tại ITviec

[Update: Trong bài viết này, tôi đã chỉ ra rằng không học kĩ năng mềm sẽ ảnh hưởng xấu đến sự nghiệp lập trình của bạn. Hôm nay, tôi muốn nhấn mạnh thêm: mọi developer nên học kĩ năng sales.

Vui lòng kéo xuống cuối bài viết để đọc phần nội dung cập nhật: 3 kĩ năng sales đơn giản mọi developer nên học để sự nghiệp vút bay]

May mắn được trò chuyện với nhiều developer, tôi bất ngờ nhận ra: hầu như họ đều mắc phải một số sai lầm tai hại giống nhau. Thậm chí, họ còn không nhận ra sai lầm đó. Bản thân tôi cũng không ngoại lệ.

Sau đây là 7 sai lầm nguy hiểm mọi developer thường phạm phải:

1. Không có mục tiêu rõ ràng

cong-viec-cua-lap-trinh-vien

Hình minh họa cho việc đặt mục tiêu

Công việc của lập trình viên có thể sẽ lặp đi lặp lại nhàm chán như một cái máy. Nếu không có mục tiêu, bạn sẽ chỉ phó mặc cho dòng đời đưa đẩy. Sự nghiệp của bạn sẽ giậm chân tại chỗ, hoặc theo những ngả rẽ… không liên quan gì đến nhau.

Vậy, để làm chủ vận mệnh của mình, bạn hãy:

  • Xác định đích đến cuối cùng cho sự nghiệp của bạn là gì?
  • Đặt ra mục tiêu cụ thể cho từng cột mốc sự nghiệp: lúc nào thì bạn cần đạt được gì để tiến đến bước tiếp theo?
  • Điều bạn muốn hoàn thành ngay lúc này?

Bạn nên note lại, và dán giấy note ở những chỗ dễ nhìn thấy nhất mỗi ngày để không ngừng nhắc nhở bản thân.

2. Không đầu tư vào kỹ năng mềm

cong-viec-cua-lap-trinh-vien

Sách kỹ năng mềm của John

Tôi biết nhiều developer viết code giỏi, chạy thuật toán tốt. Họ hiểu và thực hiện những cấu trúc lập trình phức tạp đến mức tôi chẳng bao giờ muốn nghĩ đến.

Nhưng sau một khóa học về cách 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 cả hiệu suất làm việc, performance, lương bổng….

Tôi nói điều này không phải để khoe khoang, mà để chỉ ra tầm quan trọng của kĩ năng mềm đối với sự nghiệp lập trình. Kĩ năng mềm quan trọng không kém gì các kĩ năng kĩ thuật mà phần lớn developer ngày đêm rèn luyện.

Là một Software Developer, chắc bạn cũng hiểu rằng công việc của lập trình viên không chỉ có viết code.

Chúng ta phải làm việc với con người hàng ngày, vì vậy kỹ năng giao tiếp rất cần thiết.

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, tinh thần thép, khả năng tự khích lệ bản thân. Chúng ta cũng cần học cách sắp xếp thứ tự ưu tiên, nâng cao hiệu suất làm việc nhiều nhất có thể.

Nhưng cũng đừng quên chú ý sức khỏe cũng như tình hình tài chính cá nhân. Bỏ qua hai yếu tố này, bạn có thể gặp hậu quả khó lường.

Chủ đề này còn rất nhiều điều để nói, bạn có thể đọc thêm trong ebook “Soft Skills: The Software Developer’s Manual” của tôi.

Ý chính ở đây là, trong cuộc sống, dù bạn làm gì, kĩ năng mềm hầu như luôn quan trọng hơn kĩ năng cứng. Vậy nên, hãy học kĩ năng mềm!

Việc làm developer tại TP HCM

Việc làm developer tại Hà Nội

3. Không tham gia cộng đồng

Một trong những điều mang lại lợi ích lớn cho công việc của lập trình viê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ể lớn hơn, việc gia nhập cộng đồng còn giúp tôi không cảm thấy cô đơn, vì được thuộc về một nơi nào đó. Nó cũng giúp tôi cải thiện kĩ năng, tạo mối quan hệ mới, đặt tham vọng cao hơn cho bản thân.

Ngoài ra, tham gia một cộng đồng với những người cùng làm công việc của lập trình viên có thể giúp bạn chia sẻ khó khăn, tìm kiếm lời khuyên hữu ích.

Nhưng làm thế nào để gia nhập một cộng đồng?

Có rất nhiều nhóm Meetup trên thế giới. Bạn chỉ cần tham gia các buổi chia sẻ của họ.

Hoặc, tham gia Code Camp. Đây là chương trình thường niên miễn phí, tụ hội rất nhiều developer chia sẻ về nghề nghiệp. Mọi người có thể đăng kí để thuyết trình về mọi chủ đề họ muốn.

Tôi từng tình cờ học được cơ hội tạo khóa học Pluralsight tại Boise Code Camp vài năm trước. Từ đó, tôi đã tạo 55 khóa học cho họ.

Xem thêm: 12 tech group và 8 tech event miễn phí dành cho developer ít nhưng mà chất

Nếu không muốn trực tiếp gặp mọi người, bạn có thể tham gia những cộng đồng ảo.

Bạn có thể bắt đầu bằng việc tham gia cộng đồng Simple Programmer. Có nhiều developer giỏi bình luận trên blog này, giúp mọi người tháo gỡ khó khăn trong công việc của lập trình viên.

Hoặc tìm những blog, forum nổi tiếng liên quan đến mảng lập trình mà bạn quan tâm.

Bạn cũng có thể tham gia cộng đồng bằng cách cống hiến. Bắt đầu một blog của riêng bạn, chia sẻ kiến thức, kinh nghiệm.

Xem thêm: Chủ Blog “Tôi đi code dạo” chia sẻ bí quyết tạo thương hiệu bản thân qua blog.

Blog Simple Programmer 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.

Xem thêm: Tomo Huỳnh – CTO của Taembe.vn nhận định developer ở Việt Nam network chưa đủ

 4. Không chuyên môn hóa

Nếu bạn theo dõi blog và nội dung mà tôi đăng trên Youtube, hoặc bạn từng đọc sách của tôi, bạn có lẽ đã nghe đến nhàm tai về việc “chuyên môn hóa.” Nhưng vì nó quá quan trọng, nên tôi cứ nhắc lại nó mỗi khi có dịp.

Chuyên môn hóa

Chọn một ngách nhỏ và tập trung phát triển 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 – tôi là fan trung thành của việc biết nhiều ngôn ngữ. Tuy nhiên, hãy chọn một lĩnh vực để tập trung đào sâu hơn.

Nguyễn Xuân Huy – Tech Architect của Cybozu Vietnam cho rằng developer giỏi không nhất thiết phải biết nhiều ngôn ngữ

Điều này rất quan trọng, đặc biệt là khi bạn mới bắt đầu sự nghiệp. Bạn cần trở thành chuyên gia trong một lĩnh vực nào đó.

Các chuyên gia luôn được mọi người săn đón, họ có mức lương cao hơn, họ được trả phí theo giờ, và họ có thể xây dựng danh tiếng nhanh hơn.

Ngoài ra, bạn sẽ tận hưởng cảm giác biết về một mảng lập trình hoặc một công nghệ sâu hơn nhiều người khác.

Và, đừng lo ngại việc chọn lựa 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.

Việc làm senior developer tại TP HCM

Việc làm senior developer tại Hà Nội

5. Không xây dựng thương hiệu cá nhân

Suốt cuộc đời bạn, nhiều thứ đến rồi đi. Bạn có thể thay đổi việc làm. 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 bất kể việc gì xảy ra trong đời, một điều sẽ luôn đi với bạn suốt cuộc đời…

Tên của bạn.

Vậy bạn có nghĩ bạn nên đầu tư chút công sức cho nó?

Tên – hay thương hiệu cá nhân, là một yếu tố cực kì quá trị mà nhiều developer không nhận ra. Nó giúp bạn rất nhiều trong việc tìm việc làm, thăng chức, giành khách hàng sộp hay gây dựng một start-up.

Nếu có danh tiếng tốt, bạn có thể xoay chuyện tình thế chỉ với một cái phẩy tay.

Tôi biết nhiều developer không bao giờ phải lo chuyện thất nghiệp, vì dù xảy ra việc gì, họ cũng sẽ kiếm được việc khác ngay trong vòng vài tiếng đồng hồ. Bởi vì họ đã có danh tiếng trong ngành.

Chúng ta thường thấy các công ty quảng bá sản phẩm, dịch vụ. Bạn có từng nghĩ đến giá trị của quảng bá thương hiệu cá nhân?

Để xây dựng thương hiệu cá nhân trong ngành IT, tôi khuyến khích bạn nên bắt đầu viết blog cá nhân. Chọn một mảng cố định, học hỏi và viết về nó. Ngay hôm nay.

Một trong những cách hiệu quả nhất để viết blog là tạo nội dung hữu ích cho người đọc.

Ví dụ, blog của tôi được tạo ra để xây dựng thương hiệu cá nhân trên cộng đồng mạng. Nếu bạn thấy bài viết này hữu ích, hay website của tôi mang lại giá trị cho bạn, bạn sẽ chia sẻ nó. Bạn có thể sẽ đánh dấu và trở lại xem, hoặc đăng ký nhận thông tin.

Blog là một trong nhiều cách xây dựng thương hiệu cá nhân của riêng bạn.

Tôi tạo cả Youtube, đăng podcast, tham gia vào nhiều podcast của người khác, viết bài cho các blog với tư cách khách mời (như bài viết này cho ITviec), viết bài cho tạp chí, sách, và nói chuyện tại các event.

cong-viec-cua-lap-trinh-vien

John đang làm diễn giả cho 1 chương trình về kỹ năng mềm

Bạn không cần phải làm mọi thứ tôi làm, nhưng chúng là những gợi ý tốt. 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 software developer, thì tôi có một chuỗi bài chỉ bạn chính xác các bước để làm điều đó.

Nếu bạn muốn bắt đầu bằng việc viết blog, hãy đăng ký khóa học viết blog hoàn toàn miễn phí của tôi.

6. Không có side-project

Bạn nên có những dự án ngoài giờ làm việc.

Đối với công việc của lập trình viên, một side-project mang lại nhiều ích lợi mà bạn có thể không nhận ra.

Thứ nhất, side-project là cách tuyệt vời để bạn cải thiện kĩ năng, đặc biệt trong lĩnh vực bạn muốn phát triển nhưng lại không thể làm trong giờ làm việc hàng ngày.

cong-viec-cua-lap-trinh-vien

Hình minh họa cho side-project

Side-project còn là cách tuyệt vời để phát triển các kỹ năng mới và học công nghệ mới. Sẽ rất có ích khi bạn cần tìm một công việc khác.

Và cũng đừng quên về những lợi ích kinh tế của việc làm side-project.

Bạn có thể không bắt đầu side-project để kiếm tiền, nhưng chúng có thể là cách tuyệt vời để tạo thêm thu nhập.

Khoảng 4 năm trước, tôi bắt đầu xây dựng app trên Android và iOS như là side-project, và tôi vẫn đang kiếm tiền từ chúng.

Tôi biết khá nhiều developer bắt đầu làm một 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ọ.

Tôi cũng là một trong những developer đó. Blog của tôi, và mọi thứ xung quanh Simple Programmer, là công việc chính của tôi. Tôi thích gọi bản thân mình là người hướng dẫn cho software developer, nhưng tôi nghĩ rằng mọi người hay gọi tôi là blogger.

Một side-project có thể rất vui. Nó cũng có thể là nơi xả stress hiệu quả khỏi công việc hàng ngày.

Xem thêm: không lập trình khi rảnh rỗi có biến bạn thành developer tồi?

7. Không có kế hoạch tự học hỏi

Khi phỏng vấn vị trí Software Developer, một trong những câu đầ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ữ mình luôn cập nhật những thay đổi hàng ngày của ngành công nghiệp này.

Tôi hỏi, gần đây họ đọc quyển sách nào, và đâu là quyển sách mà họ nghĩ là mọi developer nên đọc.

cong-viec-cua-lap-trinh-vien

Hình minh họa cho tự học hỏi

Tôi tìm kiếm câu trả lời tiết lộ những 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ẽ thành công và sẽ giúp cho những người xung quanh họ thành công theo.

Xem thêm: Tôi tìm kiếm điều này ở một CV

Nhưng có quá nhiều programmer không có bất kì kế hoạch gì cho việc phát triển bản thân.

Nếu không có kế hoạch gì để học hỏi điều mới hay mài dũa các kỹ năng của mình, bạn cần phải làm một kế hoạch ngay.

Vậy một kế hoạch đơn giản là gì?

Chỉ cần cam kết với bản thân rằng bạn sẽ đọc một quyển sách kỹ thuật hoặc sách phát triển bản thân hàng tháng.

Xem thêm: 7 sách lập trình hay dành cho developer

Trong một năm, bạn sẽ đọc được 12 quyển sách.

Hãy nhớ rằng, góp gió thành bão. Chỉ cần dành ra 30 phút mỗi ngày, lặp lại hàng ngày, chắc chắn bạn sẽ có sự thay đổi lớn trong một hoặc hai năm sau.

Xem thêm: Martin Papy – CTO của Pyramid Consulting Vietnam chia sẻ kinh nghiệm software developer cần làm gì để phát triển?

UPDATE

3 kĩ thuật sales đơn giản mọi developer nên học để sự nghiệp vút bay

Đối với developer, dân sales có lẽ giống như từ thiên hà khác tới – những người sẵn sàng sống và chết cho lí tưởng ABC (Always Be Closing – tạm dịch: luôn chốt được đơn hàng).

Song, nếu biết áp dụng những kĩ thuật sales sau đây vào công việc của lập trình viên, bạn sẽ thấy hiệu quả bất ngờ.

1. Hiểu bức tranh toàn cảnh

Sếp hay khách hàng không quan tâm đến bạn đâu. Họ quan tâm đến những gì bạn có thể làm cho họ kìa.

Cho nên, hiểu được bức tranh toàn cảnh, hiểu được cuộc chơi mà sếp/khách hàng đang tham gia sẽ giúp bạn nắm được nhu cầu/mong muốn của họ. Từ đó, bạn có thể đề xuất các giải pháp mà họ quan tâm, và trở nên nổi bật!

Nếu không biết phải tìm hiểu từ đâu, thì bạn nên nhớ rằng, nhìn chung developer được thuê vì 2 mục đích sau:

  • Giảm chi phí
  • Tăng lợi nhuận

Và một trong những cách tăng lợi nhuận nhanh nhất là giảm chi phí.

Vậy, hãy chuyên sâu một ngôn ngữ lập trình/framework và biết thêm một số ngôn ngữ/framework khác. Hoặc tìm hiểu một số kiến thức liên quan, chẳng hạn UX UI…

2. Hiểu nhu cầu của khách hàng hơn chính họ

Tích cực lắng nghe là cách hiệu quả nhất để đạt được điều này.

Trong lúc trao đổi với khách hàng tiềm năng, hãy chủ động đặt thêm câu hỏi, chú ý cách họ phản hồi để đào sâu thông tin, nắm được vấn đề lớn nhất của họ là gì. Từ đó, bạn có thể đề xuất giải pháp đáp ứng trúng mong muốn của khách hàng.

Nếu không thể đưa ra giải pháp hoàn hảo, bạn vẫn có thể đề xuất giải pháp một phần, ví dụ :

“Tôi có thể thiết kế lại tính năng ABC cho website của anh, thông thường việc này sẽ giúp tăng sales XYZ % thể hiện qua các case studies 123”.

Hầu hết chủ doanh nghiệp không phân biệt được sự khác nhau giữa C với C#, nhưng họ biết rằng họ có khúc mắc cần được giải quyết. Miễn là bạn chỉ ra được khúc mắc ấy, đề xuất được giải pháp, bạn sẽ luôn chốt được khách hàng.

3. Sử dụng ngôn ngữ thích hợp để thuyết phục khách hàng

Đừng “thật thà” dùng các thuật ngữ kĩ thuật khô cứng, khó hiểu khi nói chuyện với khách hàng. Đừng dùng từ ngữ họ ghét hoặc có ác cảm.

Tốt nhất là sử dụng chính các thuật ngữ của khách hàng, mô phỏng cách họ nói chuyện. Dùng các từ ngữ nâng cao giá trị dịch vụ mà bạn cung cấp.

Ví dụ, khi bán bảo hiểm, tôi không dùng từ “bảo hiểm” vì có thể một số khách hàng không thích. Thay vào đó, tôi chọn từ “bảo vệ”, hoặc “an toàn”. Số lượng hợp đồng chốt được lập tức tăng.

Bạn cũng có thể mô tả chi tiết hơn giúp dịch vụ của bạn trở nên khác biệt.

Ví dụ

Đừng nói “Tôi làm iPhone apps”

Hãy nói “Tôi làm iPhone apps cho các công ty telecom quy mô lớn”

Ba kĩ thuật sales kể trên liên quan mật thiết đến nhau. Một khi đã thực hiện xong, giờ là lúc bạn chốt thỏa thuận. Hãy sử dụng các cụm từ hoặc mẫu câu thể hiện sự chắc chắn, ví dụ:

Tôi đã xác định được một số vấn đề mà website của anh đang gặp phải. Tôi sẽ gửi anh một bản báo cáo nhanh bằng văn bản, đề xuất một số cách khắc phục để tăng số lượng đơn hàng cho website. Tôi có thể gửi anh báo cáo này ngay ngày mai.

Sau đó, nếu anh hứng thú, chúng ta có thể bàn bạc và thỏa thuận chi tiết hơn?

Và đừng bao giờ đặt giá dịch vụ của bạn quá rẻ!

ITviec Robby

Hãy hành động ngay

Bạn thấy bài viết này hữu ích cho công việc của lập trình viên?

Nhưng nó sẽ không giúp bạn trở thành một developer giỏi hơn, nếu bạn không hành động!

Vậy nên, đừng chỉ đọc và gật gù. Hãy hành động.

Nếu bạn đang mắc phải một trong những sai lầm kể trên, hãy cam kết sửa chữa nó ngay.

Hãy bình luận ở cuối bài viết những hoạt động mà bạn lên kế hoạch làm ngay hôm nay để tránh khỏi 7 sai lầm này.

Tham khảo hàng trăm việc làm developer chất tại ITviec!

About the Author:

Guest Author
cong-viec-cua-lap-trinh-vien

I’m John Sonmez.

I’m the founder of Simple Programmer.

My passion is taking the complex and making it simple.

I do this in a variety of different ways and I wear a lot of different hats. Read more...

Comments