2023.10.04

Developer du kích – Không chỉ là 1 giải pháp, mà còn hơn thế nữa

Developer du kích

Developer du kích không chỉ là code, mà còn là người cung cấp giải pháp nhằm giải quyết vấn đề. Việc đưa ra một giải pháp phù hợp, đúng đối tượng, đúng thời điểm mà có thể tối ưu hoá được chi phí là điều mà mọi nhà tuyển dụng đều mong muốn.

Lời mở đầu

Đất nước chúng ta có truyền thống nghìn năm chống giặc ngoại xâm và bảo vệ đất nước. Làm sao mà mảnh đất hình chữ S nhỏ bé trên bản đồ thế giới lại có thể kiên cường trước các cường quốc to lớn trong cả nghìn năm như vậy? Câu trả lời đó là tinh thần anh dũng, bất khuất của dân tộc cùng những tầm nhìn, chiến thuật, hành động vô cùng hợp lý mỗi khi đất nước lâm nguy.

Trong cuộc bảo vệ đất nước thời cận đại, cha ông chúng ta đã áp dụng một chiến thuật, nhờ chiến thuật này mà chúng ta đã can trường bảo vệ toàn vẹn lãnh thổ, giúp Việt Nam giành được độc lập. Chiến thuật ấy mang tên: Du kích.

Du kích là gì?

“Kích” có nghĩa là tấn công. “Du” có nghĩa là từ nơi này sang nơi khác. “Du kích” có nghĩa là lúc đánh chỗ này, lúc đánh chỗ khác và sử dụng lối đánh nhỏ gọn, linh hoạt, không thể nào phán đoán được. Đây là loại hình chiến tranh bất thường. Du kích thường được dùng trong nghệ thuật chiến tranh.

Chiến thuật du kích được áp dụng khi có sự mất cân bằng lớn giữa 2 lực lượng đối địch nhau, khi một bên là nhóm quân sự nhỏ, yếu hơn đối chọi với kẻ thù mạnh và kém cơ động hơn.

Áp dụng chiến thuật du kích sẽ dùng một lực lượng nhỏ để phục kích, đánh bất ngờ, chớp nhoáng và rút lui nhanh. Mục tiêu của các cuộc tấn công thường tập trung vào những ĐIỂM TRỌNG YẾU của kẻ thù.

Mục đích của chiến thuật này là làm quấy rối, hao mòn sinh lực địch, khiến họ phải phân tán ra và suy yếu dần dẫn đến việc đối phương phải rút lui, trong khi bên áp dụng chiến thuật sẽ từng bước tích lũy kinh nghiệm chiến đấu và có thời gian tập trung lực lượng với ít nguồn lực nhất.

Nhờ áp dụng chiến thuật này mà quân đội nhân dân Việt Nam không những đẩy lùi thực dân Pháp và đế quốc Mỹ để giành độc lập, mà còn là những bộ đội có kinh nghiệm chiến đấu dày dặn bậc nhất thế giới thời bấy giờ.

Bộ đội Cụ Hồ là những bộ đội có kinh nghiệm chiến đấu dày dặn bậc nhất thế giới thời bấy giờ.

Chiến tranh du kích
Bộ đội Cụ Hồ là những bộ đội có kinh nghiệm chiến đấu dày dặn bậc nhất thế giới thời bấy giờ.

 

Developer du kích là gì?

Vậy, trong ngành lập trình thì developer có thể áp dụng chiến thuật du kích được không?

Nếu chúng ta quan sát, một developer tốt không nhất thiết là người fix bug giỏi, xử lý chức năng một cách nhanh chóng, mà còn cần thêm tư duy giải quyết vấn đề tốt nữa. Nếu bạn là một developer đang phát triển sản phẩm cho công ty để cạnh tranh với các công ty khác, thì yếu tố này lại càng quan trọng. Việc cung cấp một giải pháp mà có thể mang lại giá trị cho người dùng chính là chìa khoá để sản phẩm của công ty bạn hướng đến sự bền vững và cạnh tranh lâu dài.

Tuy nhiên, trên thực tế, làm sao có thể đòi hỏi một developer có thể biết thêm nhiều kiến thức về kinh tế, cạnh tranh thị trường hay chỉ đơn giản là cân bằng giải pháp của mình với công số phù hợp với chính sách công ty. Chúng ta vốn dĩ là những kỹ sư và có xu hướng thiên về kỹ thuật nhiều hơn là khả năng bao quát như tôi đã đề cập như trên.

Nhưng dừng lại một chút, bản thân của developer vốn dĩ là thích học hỏi và tìm tòi mà nhỉ, chỉ có hai vấn đề khiến chúng ta chùn bước, đó là XÁC ĐỊNH VẤN ĐỀ PHÙ HỢP và THIẾU THỜI GIAN, NGUỒN LỰC.

Đến đây, bạn hãy suy nghĩ về chiến thuật du kích xem sao. Ưu tiên hàng đầu của chiến thuật này đó là: Lối đánh tinh gọn, linh động, tấn công chớp nhoáng và rút lui nhanh để bảo toàn và tập trung lực lượng, bên cạnh đó là chỉ tấn công vào những điểm quan trọng và tích luỹ kinh nghiệm sau mỗi lần tấn công.

Rồi, hãy tưởng tượng quân địch trở thành những vấn đề phía trên nhé. Nếu áp dụng chiến thuật du kích, bạn cần thay đổi tư duy sang việc phải lựa chọn những giải pháp đơn giản, linh động thay vì cầu kỳ. Giải pháp đó có thể áp dụng ngay và đặc biệt phải nhắm ngay mục tiêu quan trọng nhất thay vì phải nhắm nhiều mục tiêu như từ trước đến giờ chúng ta vẫn quen làm.

Điều này sẽ giúp chúng ta có đủ thời gian, đủ nguồn lực và đặc biệt là công ty có thể thử nghiệm ngay giải pháp của bạn để kiểm chứng giả thuyết, đo lường giá trị hoặc có thể kiếm lợi nhuận ngay nếu giải pháp của bạn đủ phù hợp để giải quyết vấn đề của khách hàng.

Nhưng làm sao để đủ kinh nghiệm bao quát mà đưa ra giải pháp phù hợp?

Chúng ta còn bỏ sót vài chi tiết của chiến thuật du kích nữa, đó là tập trung lực lượng và rút kinh nghiệm sau mỗi lần tấn công, nó cũng đồng nghĩa với việc mỗi khi bạn đề xuất giải pháp, thì đó chính là cơ hội để bạn tích lũy được kinh nghiệm quý báu của mình sau mỗi lần thực hiện, hãy tin tôi, đến một thời điểm nào đó, khi bạn nhìn lại khoảng thời gian dài tích luỹ, thì có khi bạn đã trở thành chuyên gia rồi chăng.

Tóm lại, chúng ta có thể áp dụng chiến thuật du kích để đưa ra giải pháp phù hợp cho sản phẩm mà chúng ta đang phát triển, đồng thời cũng có thể tích lũy kinh nghiệm dần cho bản thân.

Các yếu tố trở thành một developer du kích

Định hướng về suy nghĩ và tư duy

Đây là yếu quan trọng hàng đầu, để có thể áp dụng chiến thuật du kích, chúng ta cần phải hành động theo kiểu du kích. Mọi suy nghĩ của bạn cũng cần dựa trên những điều tinh gọn, hiệu quả và tập trung vào những điều quan trọng nhất.

Bạn có thể tự do sáng tạo, hoặc áp dụng những giải pháp mà người khác đã sáng tạo để áp dụng vào sản phẩm của mình, chỉ cần nó có thể dễ dàng bắt đầu và mang lại giá trị (hoặc có khả năng kiểm tra giá trị) ngay, tốn ít chi phí, nguồn lực nhất và có khả năng học hỏi sau mỗi lần thực nghiệm.

Áp dụng chiến thuật du kích giúp bạn giảm thiểu rủi ro khi đưa ra hành động, đồng thời cũng giúp bạn sáng tạo, tập trung hơn vào những mục tiêu đơn giản và quan trọng nhất.

Chiến lược khi hành động

Một trong những địa điểm mà chiến thuật du kích hay tấn công đó là kho lương thực, đạn dược hoặc đơn vị chỉ huy. Vì đây là những nơi tồn tại nhiều vấn đề cần thiết nhất. Thiếu lương thực thì không đủ sinh lực để chiến đấu, thiếu đạn dược thì không thể tay không mà chiến đấu, thiếu chỉ huy thì lấy đâu ra kế lược để chiến đấu.

Đây chỉ là ví dụ điển hình, trên thực tế thì còn nhiều lần xác định mục tiêu rất phù hợp đến từ các cụ ngày xưa.

Vì vậy, không cần lựa chọn quá nhiều địa điểm, thời điểm và mục tiêu mà hãy tập trung vào một mục tiêu quan trọng nhất, cần thiết nhất (Just in time). Để làm được điều này, hãy trang bị cho mình kỹ năng tìm kiếm và phân tích vấn đề phù hợp (CPF), tìm giải pháp phù hợp (PSF) và hãy tiến hành thử nghiệm nó với mẫu đơn giản, dễ bắt tay thực hiện và làm nó với một tốc độ nhanh nhất để kiểm chứng nhé.

Chiến thuật du kích – phải thật tinh gọn, hiệu quả và tập trung vào những điều quan trọng

tinh gọn và hiệu quả
Chiến thuật du kích – phải thật tinh gọn, hiệu quả và tập trung vào những điều quan trọng

 

Tối ưu nguồn lực

Chiến thuật du kích đề cao việc sử dụng nguồn nhân lực ít, thời gian ngắn nhưng mang lại hiệu quả cao. Nếu bạn đã suy nghĩ về chiến lược phù hợp rồi, thì khi bắt tay vào thực hiện, hãy suy nghĩ đến những cách thức giúp bạn có thể giải quyết vấn đề nhanh chóng. Ví dụ:

  1. Áp dụng những giải pháp thành công đã có sẵn từ trước đó.
  2. Tổ chức các cuộc brainstorm với đồng nghiệp để thu thập thông tin.
  3. Cho mình 30 phút để trải nghiệm, nếu không tìm thấy câu trả lời, hãy đi hỏi những người có kinh nghiệm xử lý vấn đề mà bạn đang gặp phải.
  4. Áp dụng pair hoặc mob programing để tập trung giải quyết vấn đề.
  5. Hoặc cũng có thể là sử dụng ChatGPT nhỉ?

Tự mình dành nhiều thời gian để tìm hiểu và giải quyết vấn đề không phải là cách duy nhất giúp bạn vượt qua khó khăn khi thực hiện công việc phát triển sản phẩm, sẽ có rất nhiều cách thức giúp bạn có thể vượt qua nó. Hãy chậm lại một khắc và bạn sẽ chợt nhận ra còn nhiều cách thú vị lắm (Chẳng hạn như ChatGPT nè)

Tổ chức tinh gọn và đa nhiệm

Nếu bạn đang phát triển sản phẩm cùng team, thì hãy cùng team tổ chức một bộ máy thật tinh gọn nhưng thật đa nhiệm nhé. Team bạn cho dù chỉ toàn developer nhưng cũng có thể kiêm luôn cả DevOps, SEOer, Designer hoặc kiêm luôn Content nếu các việc đó có sự liên quan đến nhau và bạn có khả năng thực hiện được.

Bên cạnh đó, hãy tập trung vào quy trình tinh gọn, linh động, bạn có thể áp dụng các framework phổ biến của Agile như: Scrum, Extreme Programing, Kanban, Lean Software development … vào quy trình phát triển của team bạn.

Đa nhiệm để giúp team bạn có thể làm việc nhanh chóng, bám sát vào mục tiêu và hiệu quả hơn. Còn tinh gọn, linh động sẽ giúp team bạn dễ dàng tập trung vào những điều cốt lõi hơn và dễ dàng ứng biến hơn nếu có sự thay đổi.

Điều tiếp theo, cả team hãy cùng nhìn về các mục tiêu ngắn hạn, có thể thực hiện được. Sau đó sử dụng các vòng lặp cải tiến để từng bước nâng cao chất lượng sản phẩm. Điều kiện tiên quyết là hãy thực hiện thật nhanh giải pháp đó để có thể đo lường và mang lại giá trị ngay.

Tổ chức theo kiểu du kích cũng cần có sự tương tác đơn giản nhưng hiệu quả, hãy tạo một môi trường trong team có khả năng tương tác nhanh chóng để có thể liên tục trao đổi thông tin. Điều này rất có lợi hơn là các văn bản, tài liệu.

Áp dụng tư tưởng Agile để tăng sự linh động, hiệu quả trong tổ chức

Tư tưởng Agile
Áp dụng tư tưởng Agile để tăng sự linh động, hiệu quả trong tổ chức

 

Tác chiến nhanh chóng, an toàn và ổn định

Chiến thuật du kích giúp đảm bảo lực lượng, nhanh chóng tấn công và rút lui an toàn. Điều này cũng đồng nghĩa với việc khi giải pháp của bạn được vận hành, hãy đảm bảo sự an toàn và ổn định. Việc đứng trên vai các ông lơn như AWS, GCP sẽ là giải pháp phù hợp nhất, khi họ đã cung cấp sẵn hệ thống, đội ngũ chuyên gia nhằm giúp sản phẩm của bạn được đảm bảo ổn định và an toàn nhất, ngoài ra nó cũng có thể scale theo nhu cầu của người sử dụng.

Nếu bạn đang vận hành vào một giải pháp và mong muốn phát triển số lượng người dùng tăng lên từng chút thì đây là lựa chọn phù hợp, giúp bạn giảm đi rất nhiều rủi ro, chi phí.

Ngoài ra, để có thể đo lường được giá trị của sản phẩm thì GA4 cũng là công cụ giúp bạn thực hiện điều đó, quan trọng hơn hết là nó hoàn toàn miễn phí và đầy đủ chức năng.

Lời kết

Developer không chỉ là code, mà còn là người cung cấp giải pháp nhằm giải quyết vấn đề. Việc đưa ra một giải pháp phù hợp, đúng đối tượng, đúng thời điểm mà có thể tối ưu hoá được chi phí là điều mà mọi nhà tuyển dụng đều mong muốn, nhất là thời đại AI đang thịnh hành, thì việc developer áp dụng AI để cung cấp giải pháp phù hợp lại càng quan trọng.

Hiện tại có rất nhiều cách mà các developer có kinh nghiệm đã áp dụng và trải qua, trên đây chỉ là một ý tưởng từ việc áp dụng chiến thuật du kích vào việc phát triển sản phẩm mà tôi suy nghĩ ra, tôi không so sánh hay nhận xét xem cách nào là đúng, sai nhưng tôi nghĩ đây là một cách phù hợp trong nhiều cách giúp developer chúng ta có thể tăng giá trị của bản thân mình nhiều hơn, từ đó đóng góp nhiều giá trị cho nơi bạn đang làm việc và cho gia đình, cho xã hội.

Chúc bạn luôn thành công trên con đường mình đã chọn.

0 Comments
Inline Feedbacks
View all comments