Bài viết được sự cho phép của tác giả Nguyễn Hoàng Phú Thịnh Đã bao giờ anh em thắc mắc: Product trong ngành công nghệ là gì? Nó khác gì với các “software” thông thường? Và ranh giới giữa một thứ được xem là “product” và một thứ “chỉ-được-xem-là-software” là gì 🙂 ? Chả hiểu bằng một ma lực nào đó mà thời gian qua, các câu hỏi này cứ liên tục trôi nổi trong đầu mình. Nay mình note ra vài thứ (có thể xem là) trải nghiệm cá nhân về 2 khái niệm: product và software này. Hi vọng có dịp cùng anh em chém gió, đàm đạo sôi nổi về topic này 😎 Product vs Software Nói theo ngôn ngữ marketing thì “Product is anything that can be offered to the market that satisfied a want or need“. Anything ở đây có thể là vô hình hoặc hữu hình. Hữu hình như cái chén, cái muỗng, cái dĩa. Đến những thứ vô hình như: tour du lịch, excel, bữa ăn tối tại nhà hàng, hay dịch vụ sử [...]
Read more →Bài viết được sự cho phép của tác giả Thanh Lê Why should you read this article? There is a set of criteria when choosing a library for Frontend State Management What is state management? What does state management care about? Have a bunch of reasons to drop Redux Usually, people who find this post gonna be in one of two groups A Frontend engineer is too tired, suffer from redux 😵💫 Are you just starting out in frontend and want to learn more about state management If you're in group 1 then... Great, I'm writing this post with 80% of my energy wanting to get rid of redux 😄. If you belong to group 2, this post will help you have more perspectives on state management, how to act cool with colleagues So what the hell is State management? If you find "what is state management" on Google, there are quite a few definitions, but it can be summarized into two main ideas as follows: ☠️ State is the skeleton of the application 🏃 State management is to manage that skeleton It's fuking simple, right? FAQ The skeleton of the application? Why state management? I don't care about state management when I code jQuery? Does state management only applies to React? Why do I hate Redux If you have any questions, I am more than happy to reply in the comment section So which state management to choose? In this part, I only focus on React, because my current job is [...]
Read more →Trong thời đại công nghệ số hiện nay, sản phẩm di động không chỉ đơn thuần là một công cụ, mà còn là một phần không thể thiếu trong cuộc sống hàng ngày của người dùng. Vậy điều gì thực sự làm nên một sản phẩm di động đột phá? Để trả lời câu hỏi này, chúng ta cần xem xét các yếu tố chính từ chiến lược phát triển, giá trị cốt lõi, tính năng kỹ thuật đến việc hiểu biết sâu sắc về người dùng. Các yếu tố tác động đến một sản phẩm di động đột phá 1. Chiến Lược Phát Triển (Strategy-driven) Một sản phẩm di động đột phá bắt đầu từ một chiến lược rõ ràng và mục tiêu cụ thể. Điều này bao gồm việc hiểu rõ thị trường mục tiêu, nhu cầu của người dùng và xác định các mục tiêu kinh doanh rõ ràng. Các nhà phát triển cầ [...]
Read more →Manager là một chức vụ vô cùng quan trọng trong bất kỳ tổ chức nào. Họ giữ vai trò then chốt trong việc đảm bảo hoạt động suôn sẻ và hiệu quả của doanh nghiệp. Nhưng Manager là gì và vai trò của họ trong công ty ra sao? Hãy cùng TopDev tìm hiểu trong bài viết dưới đây. Manager là gì? Manager, hay quản lý, là người đứng đầu và điều hành một nhóm, một bộ phận hoặc một tổ chức. Với vai trò quản lý, họ có trách nhiệm lãnh đạo, quản lý các hoạt động hàng ngày và đưa ra các chiến lược quan trọng để đạt được mục tiêu của tổ chức. [irp posts="49563" name="IT Manager Là Gì? Những Điều Bạn Cần Biết Về IT Manager"] Vai trò của Manager trong công ty Manager đóng vai trò quan trọng trong việc cân bằng các nguồn lực để phân công công việc một cách hợp lý và đạt hiệu quả cao nhất. Họ là người lên kế hoạch, [...]
Read more →Bài viết trước mình có đề cập đến Lock và các loại Lock để giải quyết những vấn đề liên quan đến Concurrency. Sử dụng lock là một phương pháp đơn giản nhưng rất hữu ích khi mà các tiến trình khác nhau trong nhiều môi trường phải vận hành và chia sẻ các tài nguyên theo cách đồng bộ. Tuy nhiên, quản lý lock như thế nào lại là một bài toán không đơn giản vậy nên có khá là nhiều bên thứ ba nhảy vào để giải quyết cũng như ăn miếng bánh béo bở này từ những vấn đề của mọi hệ thống dữ liệu lớn. Việc quản lý này được gọi là Distributed Lock Manager Trình quản lý khóa phân tán (distributed lock manager – viết tắt DLM) là một thành phần có thể tích hợp để giúp bạn quản lý lock do bên thứ ba cung cấp để hỗ trợ nền tảng (platform) hệ thống của bạn. Trình quản lý khóa [...]
Read more →Bài viết được sự cho phép của tác giả Tống Xuân Hoài Vấn đề Điều khiến bạn cảm thấy "sợ hãi" khi làm việc với Node.js là gì? Đối với tôi, chắc đó là maintain một mã nguồn Node.js/JavaScript đời đầu, hay có nghĩa là một dự án đã được viết từ rất lâu trước đó, đang sử dụng một phiên bản Node rất thấp mới có thể chạy được. Không có gì khó hiểu khi tôi hay thậm chí nhiều bạn đọc cũng có cảm giác tương tự. Có rất nhiều lý do để đưa ra như cú pháp lỗi thời, tổ chức mã không trật tự, thư viện bị ngừng hỗ trợ hoặc thậm chí là không còn tài liệu nữa… thử nghĩ mà xem, một thư viện mà ta chưa từng dùng trước đó bỗng nhiên không còn dấu vết của tài liệu nữa thì biết dựa vào đâu mà viết tiếp đây? Chưa kể khi gặp vấn đề trên một [...]
Read more →Project Management, vị trí quản lý dự án phần mềm sẽ cần biết những gì? Những yếu tố nào trong quá trình quản lý dự án cần quan tâm? Bài viết này cung cấp cái nhìn khách quan về dự án, các bước sẽ làm khi lên plan, lên quotation cho 1 dự án mới. Kiến thức này chỉ là kiến thức chung chung, chi tiết hơn anh em có thể tìm tới từng phần để đọc và hiểu sâu hơn. [caption id="attachment_56489" align="aligncenter" width="500"] Không có gì mệt mỏi nha anh em. Hiểu cho PM, họ cũng mệt lắm.[/caption] Quản lý dự án cũng là công việc nặng hơn về yếu tố kinh nghiệm. Tức là càng trải qua nhiều dự án càng quản lý dự án tốt hơn. Phần đầu tiên này mới chỉ nói tớ 1 vài point trong Project Management Fundamental. Anh em có thể theo dõi tiếp phần 2 ở các bài viết tiếp sau đây. Bắt đầu thôi nào anh em! 1. What's is my project? Đơn giả [...]
Read more →Trong công ty chúng ta thường nghe nhắc đến vai trò của một Project Manager là người quản lý các dự án. Ở những tổ chức có quy mô lớn hay dự án lớn hơn, vị trí Program Manager được xem là người quản lý một tổ hợp nhiều dự án có liên quan đến nhau, hay nói cách khác thì Program Manager được xem là quản lý cấp trên của các Project Manager. Đây là một vị trí đòi hỏi kiến thức, kinh nghiệm và các kỹ năng về quản lý cấp cao, cũng là vai trò mà nhiều anh chị em hướng đến trong sự nghiệp. Bài viết hôm nay chúng ta cùng nhau tìm hiểu xem Project Manager là gì và cần học gì để trở thành một Program Manager nhé. Program Manager là gì? Program Manager hay Quản lý chương trình (có tổ chức sẽ gọi là Giám đốc chương trình) là người chịu trách nhiệm quản lý một nhóm các dự án liên quan; các dự án này được kết hợp với nhau [...]
Read more →Quản lý dự án công nghệ ở Techcombank Khác với các hoạt động thường ngày để đảm bảo công việc vận hành tại Techcombank, “dự án” là một tập hợp các hoạt động được thực hiện trong một khoảng thời gian có hạn, với nguồn lực được giới hạn để đạt được mục tiêu cụ thể và rõ ràng mà tổ chức hướng đến. Nói cách khác, dự án là công cụ để thúc đẩy tổ chức tiến lên phía trước, tạo ra sự khác biệt giúp đạt được các mục tiêu chiến lược trong tương lai. Tại Techcombank, nơi luôn luôn có hàng trăm dự án lớn nhỏ được thực hiện, quản lý dự án trở thành một công việc vô cùng quan trọng. Nằm trong Khối Công Nghệ, bộ phận Portfolio Capability Management (PCM) là nơi tập trung các Project Managers (PM) – những người áp dụng kiến thức, công cụ và kỹ năng để đảm bảo một dự án công nghệ tại Techcombank hoà [...]
Read more →Trong một công ty, tổ chức thì IT Manager là người chịu trách nhiệm quản lý hệ thống công nghệ và toàn bộ thông tin liên quan giúp duy trì sự ổn định và bảo mật của các hoạt động. Với vai trò quan trọng đó thì vị trí IT Manager luôn có nhu cầu tuyển dụng cao với mức đãi ngộ tốt, được nhiều công ty chú trọng. Bài viết hôm nay chúng ta cùng nhau tìm hiểu danh sách những câu hỏi tuyển dụng vị trí IT Manager để có thể chuẩn bị tốt nhất cho buổi phỏng vấn sắp tới nhé. IT Manager là gì? Công việc của một IT Manager IT Manager là những chuyên gia công nghệ thông tin, công việc hàng ngày là lên kế hoạch, chỉ đạo và giám sát các hoạt động liên quan đến máy tính và hệ thống thông tin của công ty. IT Manager cũng là người quản lý bộ phận IT của phòng ban và là ngườ [...]
Read more →Project Manager, nghe thôi đã thấy quyền lực, phỏng vấn Project Manager yêu cầu những kiến thức gì? Dưới đây là top 5 câu hỏi được đánh giá là mới và thường xuyên được sử dụng trong các buổi phỏng vấn vị trí quản lý dự án. Các câu hỏi dưới đây có đề cập thêm một số câu hỏi liên quan, ứng viên có thể chuẩn bị thêm, tạo tiền đề cho buổi phỏng vấn thành công tốt đẹp. Trời ơi, cuối cùng cũng có một requirement từ Project Manager Tuy nhiên, vị trí Project Manager sướng hơn nhiều Bắt đầu ngay thôi nào! 1. Giới thiệu bản thân và các dự án đã quản lý Câu hỏi đầu tiên phỏng vấn Project Manager là câu hỏi giới thiệu bản thân. Đây là câu hỏi phổ biến cho rất rất nhiều các vị trí tuyển dụng. Tuy nhiên đối với vị trí quản lý dự án, việc giới thiệu bản thân là vô cùng [...]
Read more →Outsource là một thuật ngữ quen thuộc trong ngành công nghệ thông tin, đặc biệt đối với các developer. Quá trình này mang lại những lợi ích rõ rệt cho các công ty như giảm chi phí, tập trung vào nhân lực chính, tiết kiệm thời gian và tăng cường chất lượng sản phẩm. Trong bài viết này, TopDev sẽ giúp bạn tìm hiểu outsource là gì? Những lợi ích và tác động của nó đến developer, cùng những lưu ý quan trọng khi thực hiện quá trình outsource. Outsource là gì? Outsource hay còn gọi là Outsourcing (thuê ngoài) là hình thức công ty hoặc tổ chức thuê một công ty hay cá nhân khác để thực hiện một số công việc cụ thể thay vì thực hiện chúng bên trong tổ chức. Quá trình outsource này thường được thực hiện khi công ty/doanh nghiệp không có đủ nguồn lực để làm, hoặc khi công ty muốn tập trung vào nhân lực [...]
Read more →Vị trí Product Owner xuất hiện phổ biến trong lĩnh vực công nghệ thông tin hiện nay với việc các dự án áp dụng phương pháp phát triển phần mềm linh hoạt Agile. Cũng vì thế mà đây trở thành một vị trí mà nhiều công ty ưu tiên tuyển dụng với các chế độ đãi ngộ cao. Hôm nay chúng ta cùng nhau tìm hiểu về những câu hỏi phỏng vấn dành cho Product Owner thường gặp để chuẩn bị tốt nhất chinh phục các nhà tuyển dụng nhé. Product Owner là gì? Product Owner (gọi tắt là PO) hay người “sở hữu” sản phẩm là người chịu trách nhiệm giải quyết những vấn đề liên quan đến sản phẩm được người dùng đưa ra khi sử dụng sản phẩm đó. PO được xem như là người đại diện cho khách hàng để làm việc với team phát triển, có quyền thay đổi thứ tự công việc, độ ưu tiên các tính năng của sản phẩ [...]
Read more →Trong một công ty hay một dự án phần mềm có rất nhiều vị trí chức danh tương ứng với vai trò khác nhau. Software Manager hay Quản lý phần mềm là một chức danh mà không phải ở công ty nào cũng có, mặc dù công việc và trách nhiệm của họ rất quan trọng và có nhiều điểm giống với một vài vị trí khác. Trong bài viết hôm nay chúng ta cùng tìm hiểu về công việc của một Software Manager cũng như những kỹ năng cần thiết để trở thành quản lý phần mềm nhé. Software Manager là gì? Người quản lý phần mềm là vị trí trong công ty, tổ chức có nhiệm vụ giám sát sự phát triển, việc cài đặt và bảo trì một phần mềm mới và những phiên bản cập nhật mở rộng (upgraded) của nó. Với tư cách là một Software Manager, bạn sẽ phải phối hợp với các thành viê [...]
Read more →Bài viết được sự cho phép của tác giả Lê Chí Dũng SSL/TLS certificates thì được dùng phổ biến trong hệ thống nhằm tăng cường security. Và việc load balancer, Gateway,… thì cấu hình này khá phức tạp và AWS Certificate Manage (ACM) sẽ giúp cho việc này dễ dàng quản lý hơn. Trong bài này mình sẽ share cách tích hợp Let’s Encrypt Certificates (miễn phí) trên ACM. 1. Cài đặt Certbot của Let’s Encrypt Certificates Tài liệu tham khảo: https://certbot.eff.org/ Nếu dùng MacOS thì cài từ brew cho lẹ https://formulae.brew.sh/formula/certbot brew install certbot 2. Execute certbot và cấu hình DNS để tạo Certificate cho domain dưới local sudo certbot certonly --server https://acme-v02.api.letsencrypt.org/directory --manual --preferred-challenges dns -d 'domain.com' Sau khi execute command ở trên sẽ xuất hiện thông tin set up DNS trên domain. Type: TXT Name: _acme-challenge Value: 3qFPwRcxEd… Sau khi add xong TXT trên DNS thì chờ vài giây hoặc vài phút mới apply. Trong lúc chờ có thể confirm bằng cách access vào URL Toolbox của google check https://toolbox.googleapps.com/ [...]
Read more →