All posts by Phạm Huy Hoàng

Tôi là Phạm Huy Hoàng, một developer. Thuở còn là sinh viên, tôi từng có những thắc mắc, trăn trở về technical, về con đường nghề nghiệp, nhưng không có ai giải đáp. Blog này là nơi tôi chia sẻ những kiến thức, kinh nghiệm mà mình đạt được trong quá trình làm việc và trải nghiệm. Mong rằng nó sẽ giải đáp phần nào những khúc mắc, trăn trở cho những bạn sinh viên như tôi ngày xưa. Cảm ơn bạn đã bỏ thời gian đọc những dòng tôi chia sẻ.

Sập Server có phải muôn đời – Phần 1: Làm gì khi hệ thống sập bất ngờ?

Đây là phần 1 trong series 3 phần “Sập Server có phải muôn đời”.

  1. Làm gì khi hệ thống sập bất ngờ – Xách quần lên công ty
  2. Viết post-mortem sau khi xử lý sự cố – Đừng chỉ trích hay đổ lỗi
  3. Những phương pháp phòng chống/monitoring – Giúp anh em ngủ ngon không lo server sập

 

Đây là câu chuyện của Hùng, một developer quèn tại 1 công ty startup.

Một chiều thứ 6 đẹp trời nọ, Hùng đang thư thả về nhà, dắt gấu đi chơi cuối tuần, đi ăn khuya. Ăn uống no say, Hùng dắt gấu vào nhà nghỉ (tất nhiên là chỉ để nghỉ thui nha, blog này cho cả các bạn chưa đủ 18 tuổi).

Vào đến nhà nghỉ, Hùng vừa mới tuột quần, chuẩn bị … chạy thẳng vào toilet (chắc do nồi lẩu vừa ăn không sạch lắm). Bỗng dưng, di động reo, anh Sơn team leader trên công ty réo: Hùng ơi, hệ thống sập con bà nó rồi, khách hàng không vào được trang chủ, em lên công ty phụ anh và anh Kha kiểm tra với.

Vội vàng chưa kịp mặc quần, bỏ gấu nằm bơ vơ trong khách sạn, Hùng bắt vội chiếc Grab chạy thẳng lên công ty để tìm lỗi… Còn tiếp!

Vui chơi nhưng không quên nhiệm vụ, hãy như Hùng!

Continue reading Sập Server có phải muôn đời – Phần 1: Làm gì khi hệ thống sập bất ngờ?

Kinh nghiệm làm việc cho công ty product – Làm sao học và kiếm triệu đô từ blockchain

Hôm trước, mình có làm livestream nhẹ về kinh nghiệm làm việc tại công ty startup/product, kinh nghiệm làm blockchain với anh Trần Hoàng Giang – Giảm độc sản phẩm của AkaChain.

Do clip hơi dài nên mình tóm tắt lại 1 vài cái hay ho mà 2 anh em chém gió cho các bạn nhen:

  • Có phải làm outsourcing/IT services chỉ là gia công “đưa gì code nấy”, như “thợ hồ công nghệ”? Tuỳ dự án, ở tầm IT Services thì chúng ta sẽ lo toàn bộ từ architecture design, UI/UX Design, vận hành hệ thống, tư vấn cho khách hàng, chứ không chỉ là đi kiếm requirement rồi làm việc.
  • Nên làm outsourcing/IT services hay làm product/sản phẩm? Mỗi thứ đều có cái hay riêng. Làm IT services sẽ học được về qui trình, document, domain của khách hàng nhưng hơi gò bó. Làm product thì vui hơn, được quyết định nhiều thứ hơn, nhưng cũng khó khăn và phải mò mẫm nhiều hơn.
  • Làm product/startup có gì vui? Làm ra sản phẩm thật, có user dùng chứ không chỉ là code rồi bàn giao. Dev ở product/startup có tiếng nói hơn, được tham gia quyết định hướng đi của sản phẩm.
  • Muốn làm product/startup thì cần những tố chất gì? Phải biết ôm đồm nhiều thứ như full stack, đôi khi nhảy cóc từ front-end, back-end tới DevOps. Phải có cái nhìn sản phẩm, code 1 chức năng cũng biết suy nghĩ cho người dùng chứ không chỉ thuần là code

 

  • Về AkaChain (akachain.io): AkaChain là 1 hệ thống định danh điện tử, dựa trên công nghệ blockchain, hỗ trợ các doanh nghiệp thiết lập hệ thống điểm thưởng, chăm sóc khách hàng mà vẫn đảm bảo tính privacy.
  • Kinh nghiệm tự tìm hiểu blockchain: Đừng cố gắng build một 1 blockchain ngay từ đầu, mà hãy thử build ứng dụng dựa trên cái có sẵn, vừa làm vừa tìm hiểu dần dần.
  • Một số kĩ năng cần có để làm về blockchain: Lập trình back-end (Golang, Rust hoặc NodeJS), hiểu biết về Server/DevOps, cách triển khai các hệ thống phân tán
  • (30s quảng cáo) Tại akaChain nói riêng, cũng như FPT Software nói chung, có khá nhiều dự án làm product hay ho, các bạn mới ra trường hoặc thích làm product có thể tìm hiểu nhé.

Các bạn quan tâm có thể xem clip full 60 phút không che tại đây nha:

Từ chuyện cargo cult programming, đến phong cách lập trình theo kiểu “bầy đàn”

Chuyện kể rằng, vào thời thế chiến thứ 2, binh lính Mĩ lần đầu tiên tiếp xúc với các thổ dân ở nhiều quần đảo thuộc vùng Melanesia.

Vì nhu cầu chiến tranh, quân Mỹ/Nhật chở hàng loạt tàu hàng, cho máy bay thả hàng tiếp tế (thức ăn, lương thực, vũ khí) xuống, làm đời sống nhân dân trên đảo được cải thiện.

Khi chiến tranh kết thúc, hàng hoá cũng hết theo. Cư dân trên đảo bắt đầu bắt chước hành động của binh lính Mĩ. Họ cũng dựng chòi canh, khắc gỗ làm radar headphone, quơ quào trên đường băng như binh lính liên lạc.

Cư dân trên đảo làm giả máy bay, headphone, đài phát sóng; với hi vọng máy bay thật sẽ quay lại

Dân chúng bắt đầu làm theo những nghi lễ này, với hi vọng máy bay sẽ quay lại, mang theo những thùng hàng tiếp tế. Tất nhiên là, dù họ có quơ quào cả năm trời, cũng chẳng có chiếc máy bay nào quay lại cả.

Dần đà, những thứ này trở thành nghi lễ, được thờ cúng. Những tôn giáo, nghi lễ dạng này được gọi là cargo cult (cargo là hàng hoá được chuyên trở trên tàu).

 

Ơ, chuyện nghe thú vị đấy, nhưng mà nó có liên quan gì đến lập trình đâu?? Ấy vậy mà có đấy!

Continue reading Từ chuyện cargo cult programming, đến phong cách lập trình theo kiểu “bầy đàn”

Mấy ông Senior/Full Stack cũng không “trâu bò” như các bạn tưởng đâu!

Mấy nay, khi tư vấn, mình hay nhận được mấy câu hỏi vui vui từ mấy bạn sinh viên, sắp ra trường:

  • Mấy anh senior trâu bò lắm hay sao mà lương ông nào ông nấy cao khủng thế ạ?
  • Nghe nói mấy ông Full Stack cái gì cũng biết, trên thông Cờ Lao dưới tường Đép Ộp phải không ạ?
  • Nghe kể công ty em có mấy ông senior cái gì cũng biết, code bay tóc không cần Google

Do vậy, hôm nay mình sẽ tự bóc phốt mấy ông Full Stack/Senior (trong đó có cả mình), mấy ổng không trâu cho như các bạn tưởng đâu nhe!

Continue reading Mấy ông Senior/Full Stack cũng không “trâu bò” như các bạn tưởng đâu!

Review sách Malcolm Gladwell – Những cuốn sách làm thay đổi thế giới quan của bạn!

Bên cạnh việc đọc sách kĩ thuật, lâu lâu anh em dev chúng mình nên kiếm sách văn học, sách kinh doanh, …. Vừa đọc để giải trí, vừa giúp con người trở nên chững chạc và “sâu sắc” hơn luôn.

Kì này, mình giới thiệu sách của Malcolm Gladwell. Nếu chưa từng đọc cuốn nào của ông thì các bạn đã bỏ phí 1 tác giả xuất sắc rồi.

Trong bài này, mình sẽ giới thiệu, review sơ sách của ông, dụ dỗ để anh em thấy hay mà đọc chung nha.

Continue reading Review sách Malcolm Gladwell – Những cuốn sách làm thay đổi thế giới quan của bạn!

Tại sao bạn không nên quá tin mấy cái blog lập trình trên mạng (điển hình là thằng Code Dạo)

Cá nhân mình hay đọc mấy blog lập trình trên Medium, trên Quora, đọc blog của Uncle Bob, Martin Fowler để nâng cao trình độ.

Từ lúc Medium ra đời, kéo theo sự ra đời của HackerNoon, FreeCodeCamp, số lượng developer viết blog kĩ thuật cũng khá nhiều. Ở Việt Nam cũng vậy, cách đây 5 năm chỉ có lèo tèo vài trang, còn gần đây thì mọc lên như nấm.

Mình thì rất thích đọc blog. So với đọc sách kĩ thuật, blog thường tóm tắt, ngắn gọn, dễ thấm hơn. Thế nhưng, chẳng hiểu gần đây già rồi hay sao, dạo này càng đọc blog nhiều mình càng cảm thấy … méo nên quá tin mấy cái blog lập trình (điển hình như cái blog TDCD này).

Tại sao vậy? Các bạn đọc hết bài rồi sẽ rõ nhé.

Continue reading Tại sao bạn không nên quá tin mấy cái blog lập trình trên mạng (điển hình là thằng Code Dạo)

5 trang web cực hay để luyện thuật toán, học lập trình

Hôm trước, mình đã có viết bài về 4 cách rèn luyện tư duy lập trình rồi! Do nhiều bạn muốn cụ thể, chi tiết những trang có thể học tập, luyện thuật toán nên hôm nay mình chia sẻ thêm cho các bạn 5 trang cực kì hay ho để luyện thuật toán/học lập trình nha!

Các bạn không cần phải dùng hết cả 2 làm gì, chỉ cần chọn 1-2 cái hay nhất là được rồi nhé!

Continue reading 5 trang web cực hay để luyện thuật toán, học lập trình