Hoàng xuất phát là dân kỹ thuật phần mềm, tham gia mảng phát triển phần mềm từ 2017 đến nay. Mình muốn mang những trải nghiệm cá nhân chia sẻ đến anh em, từ đó anh em thấy gì hay thì có thể tham khảo sử dụng, mà dỡ thì anh em góp ý giúp nhé.
View all posts by hoangphan
Hi mọi người, team mình vừa go live tính năng Seitrace Insights và với việc phân tích tính năng này, mình sử dụng AI rất nhiều để phục vụ việc phân tích, thiết kế và vẽ luồng nghiệp vụ.
Nhờ đó mà mình có kinh nghiệm để viết lại bài blog này để chia sẻ
cách mình đã dùng AI cho việc phân tích và vẽ sequence diagram một cách nhanh chóng
tiết kiệm khá nhiều thời gian, rút ngắn thời gian phân tích, và Dev cũng có thêm thời gian để develop tính năng khi mà yêu cầu về timeline khá gấp rút.
2. Công cụ AI sử dụng
Mình chỉ sử dụng 2 công cụ AI trong đợt này đó là ChatGPT4.0 và Mermaid
ChatGPT thì mình không biết phiên bản miễn phí 3.5 có hỗ trợ tốt được như bản mình đang sài không, mình sài Poe trả phí nên sài ChatGPT4 và các AI khác khá sướng 😀 Mà thiết nghĩ GPT3.5 cũng có support sẵn rồi.
Mermaid bạn có thể lựa chọn dùng phiên bản live tại: https://mermaid.live/ hoặc dùng Visual Studio Code và cài plugin Markdown Preview Mermaid Support
3. Bước phân tích cơ bản
Thật ra mỗi bạn BA, và tuỳ theo công ty sẽ có những cách phân tích khác nhau để đạt được mong muốn, mình với vai trò là một Product Manager, góc nhìn và cách phân tích của mình sẽ đi từ overview => đến chi tiết.
Mình chia làm các giai đoạn phân tích tính năng
Bước 1: Sử dụng thử các sản phẩm có sẵn trên thị trường mà có tính năng tương tự
Bước 2: Tập trung suy nghĩ và định hình những thành phần, Actors, tasks cần làm để xây dựng tính năng.
Bước 3: Dùng AI để research dựa theo keyword để tìm các kiến thức xung quanh tính năng/partner
Bước 4: Dùng AI để bắt đầu vẽ luồng…
Bạn có thể đọc bài “Phân tích tính năng subscription” của mình để biết được cách mình đã phân tích, ở bài này mình sẽ tập trung vào phần vẽ luồng
4. Sử dụng ChatGPT để vẽ ra luồng
Ở bước này mình cơ bản chỉ chat với ChatGPT và đưa ra yêu cầu cụ thể nhất có thể.
Thường thì các bạn có thể sử dụng để vẽ sequence diagram, flow chart hoặc activity diagram sẽ khá là ok nha.
Ví dụ:
Hi, Mình muốn xây dựng tính năng bán API của một Explorer blockchain SEI.
Hiện tôi đã có nguồn dữ liệu có sẵn.
Hãy giúp tôi vẽ luồng Sequence diagram, thanh toán sử dụng Coinbase, phần subscription (Subscription Management sẽ được đội ngũ tự phát triển)
Luồng người dùng sẽ chọn gói Advanced hoặc Professional, sau đó yêu cầu Sub Mgmt Server tính toán để cho User xác nhận, Khi xác nhận => xử lý để qua bên Coinbase tạo hoá đơn, Và khi có hoá đơn cần gửi cho user thông tin qua kênh Front end và Email.
User sẽ thanh toán
Sử dụng Mermaid
Thì mình sẽ nhận được một luồng bằng chữ như dưới => Copy bỏ vào trong công cụ Mermaid online, hoặc trên Visual Studio Code
Và sẽ nhận được luồng như sau.
Nhưng dĩ nhiên luồng sẽ chưa thể đúng 100%, do đó bạn cần chat và trao đổi, yêu cầu chỉnh sửa thêm với ChatGPT để cho luồng chính xác nhất.
Bạn có thể đọc đoạn demo của mình bên dưới để biết cách mình đã trao đổi với ChatGPT như thế nào để có luồng nhé.
… Thế là có luồng rồi :v. Khá tiết kiệm thời gian, thậm chí đôi lúc AI hỗ trợ mình vẽ ra các luồng mà mình cũng không nghĩ tới luôn. Nhưng cần có những lưu ý sau khi sử dụng AI vẽ diagram.
5. Lưu ý khi sử dụng AI vẽ diagram
Cần phải phân tích cơ bản, high level trước, khi gặp vấn đề thì sẽ nhờ AI để ra thêm ý tưởng, cũng như luồng còn thiếu, hoặc hỏi để tham khảo.
AI không thể thay thế được mình, bạn không thể đưa một bài toán chung chung mà nó giải và đưa ra luồng cho bạn
Phải chat và hỏi nhiều lần để AI làm gần sát với ý đồ của bạn nhất.
AI là trợ lý của bạn, giúp bạn có thêm ý tưởng, luồng chưa hiểu, nhưng việc rà soát lại luồng, đọc docs chính thống là rất quan trọng. Ví dụ như trong bài toán mình vừa giải, mình phải cần kiến thức về API để đọc rất nhiều docs API chính thống của 3rd để xác định xem luồng của AI vẽ đúng, và có thể sử dụng với bên thứ 3 không.
Bạn cũng cần có kinh nghiệm, quan điểm, ý kiến, tư duy riêng để check lại xem luồng, ý kiến của AI đưa ra đúng không.
6. Kết luận.
Mình gần đây nghiên cứu về các công cụ về AI, và sài khá nhiều loại khác nhau, thật sự thấy nó rất tiện ấy… Bạn thử sài đi nha 😀 Giờ mình xem AI như là 1 trợ lý, vừa rồi có ngồi cf với vài người bạn bàn luận về chủ đề, rất rất nhiều bạn đã áp dụng trong công việc và hiệu quả nhiều rồi. Bạn hãy thử sài đi nhé 😀
Và việc vẽ diagram này là một trong những ứng dụng mình thấy rất tiện, tiết kiệm thời gian, hi vọng sẽ giúp bạn làm việc nhanh và hiệu quả hơn với cách mình đã dùng.
Vừa rồi đội ngũ dự án mình đã xây dựng xong những tính năng cơ bản của Seitrace – một dự án Explorer official và lớn nhất trên SEI blockchain, và cũng là explorer đầu tiên hỗ trợ một chain chạy song song EVM/Cosmos.
Giới thiệu
Với vai trò là Product Manager của dự án, cũng như sự đặt hàng của nhiều anh em developer trên mạng SEI blockchain về việc sử dụng API miễn phí và có trả phí để lấy dữ liệu on-chain đã visualize về sử dụng trên dự án của họ, mình đã research về cách xây dựng tính năng Subscription/mua API. Bài viết hôm nay mình sẽ chia sẻ những gì mình đã phân tích được một cách tổng quan về:
Tính năng subscription dưới góc nhìn của một Product Owner/ Business Analyst
Dữ liệu trả ra API từ đâu mà có?
Nếu bạn nào có phát triển các dự án trên blockchain, sẽ biết là các dữ liệu on-chain sẽ được lưu trữ trên các block, trong mỗi block sẽ chứa nhiều transactions, và các block này sẽ nối lại với nhau tạo thành một chuỗi các blocks
Còn phía dự án Seitrace, Sẽ kết nối với các node RPC của blockchain => Crawl dữ liệu thô từ blockchain về (thông tin các transactions, blocks, status, smart contracts, …) => decode/xào nấu những dữ liệu đó sao cho dễ dùng => dùng Indexer để lập chỉ mục và lưu trữ các dữ liệu đã xào nấu vào những database riêng của Seitrace để từ đó truy vấn nhanh chóng và hiệu quả.
Và các dữ liệu này sẽ được dùng để hiển thị ra trên ứng dụng Seitrace, và cũng với những dữ liệu này phía dự án cũng cho các bên dự án khác sử dụng thông qua API, nhưng sẽ có những mức phí khác nhau.
Kế hoạch phân tích
Để có thể phân tích đầy đủ thì mình list out ra thành những task nhỏ cần làm
Mình thì cũng hay phân tích các dự án lớn và đi từ đầu (từ lúc mới có ý tưởng), thậm chí là chưa bao giờ làm qua, nhưng thường ngại các phần thanh toán, vì dính nhiều cái liên quan đến pháp lý, đăng ký theo công ty, chia sẻ lợi nhuận nên thường sẽ research đầu tiên => trong bài toán này mình cũng nghiên cứu phần payment đầu tiên.
Luồng thanh toán
Để tìm bên cung cấp dịch vụ thanh toán, thì cần nghĩ tới việc thanh toán thì có thanh toán 1 lần, hoặc thụ động, và một loại nữa là gọi hằng tháng (subscription) để trừ tiền 😀 Và ngoài ra thì bên hỗ trợ thanh toán phải hỗ trợ cho các bên dự án crypto, thanh toán quốc tế với nhiều quốc gia, có phương thức thanh toán qua crypto.
=> Đối với loại thụ động, hoặc thanh toán 1 lần thì dễ, kiểu như gửi số tài khoản cho user chuyển qua => rồi có 1 bộ listen để xem nếu user đã thanh toán => thì chuyển trạng thái thành công.
=> Đối với loại thanh toán hằng tháng => thì trừ tự động => phải qua một bên thứ 3 và cho accept các loại thẻ, hoặc hỗ trợ kiểu như ví đã nạp tiền sẵn và tự động trừ.
Sau một hồi check qua nhiều phương án thanh toán, mình nhận thấy có những phương án phù hợp nhất:
Stripe: https://stripe.com/pricing – phí có hơi cao 1 tíu, có hỗ trợ upgrade, downgrade (nâng gói/hạ gói), hỗ trợ thanh toán qua thẻ, có hỗ trợ các dự án crypto, có hỗ trợ thanh toán qua crypto (USDC), tài liệu gần như đầy đủ nhất 😀 đáng để anh em đọc và học hỏi.
Coinbase commerce: https://www.coinbase.com/commerce – phí rẻ hơn bên stripe, có hỗ trợ refund, hỗ trợ payment 100% = crypto luôn, nhưng chưa hỗ trợ tự động trừ tiền mỗi tháng.
Một số kênh khác các bạn có thể tham khảo trong luồng thanh toán:
Bên mình đã chọn sử dụng Coinbase commerce với 2 lý do, 1. Stripe phí cao :v, 2. Thủ tục Stripe khá rờm rà, mất 1 thời gian dài để contact, làm việc, và sau đó tích hợp, trong khi tính năng này chỉ có 8 tuần để phân tích, thiết kế, phát triển và test => Ưu tiên sài Coinbase, khi lượng user tăng quá nhiều và nhu cầu thanh toán qua thẻ tăng => Tích hợp Stripe sau.
Nhưng… sau khi đã chốt sử dụng Coinbase ở giai đoạn đầu và phân tích luồng xong, tới bước dev & đăng ký tài khoản 😀 Coinbase cũng rườm rà =)) bữa giờ team mình đăng ký đã được 3 tuần rồi mà chưa xong :D, mặc dù công ty bên mình là bên UK luôn mà thủ tục khá lâu :D….
=> Chốt lại là chơi check bằng tay trước, kiểu như tới ngày thanh toán thì nhắn tin cho tụi mua API để gửi bill (hay kiểu số tài khoản á), rồi nó chuyển vào xong rồi check xem tiền vào chưa và apply manual trong Admin dashboard.
=)) Công cốc 1 ngày research và vẽ luồng của mình 😀 – cơ mà đợi khi dự án chạy ổn cũng như lượng người mua API tăng lên thì tích hợp sau cũng được, luồng vẽ rồi sau dev chiến thôi 😀
—
Nhưng ở đây mình cũng sẽ chia sẻ luồng payment cho mọi người xem luôn há.
Với Stripe: (Khi lượng user tăng quá nhiều + có nhu cầu thanh toán qua phương thức truyền thống)
Stripe đã hỗ trợ sẵn luồng subscription => Sẽ sử dụng luôn của bên đó (có cả upgrade, downgrade, cancel, …) => Cần đăng ký tài khoản & cài đặt các gói => Seitrace không cần xây dựng “Subscription System“
Thường Stripe lại ưu tiên thanh toán qua các kênh truyền thống (credit card, debit card), nên sẽ kết hợp với xử lý qua Coinbase commerce để xuất bill, cũng như thanh toán với nhiều nguồn tiền crypto hơn (BTC, ETH, USDC, USDT, …) từ Metamask (phổ biến nhất trong crypto), Coinbase wallet.
Do đó khi một giao dịch được hoàn tất qua kênh Coinbase Commerce => Bên webhook của trả về cho Seitrace & Seitrace trả về lại cho bên Stripe để cập nhật.
Vì luồng này khá quen thuộc và docs của Stripe khá rõ => Anh em đọc thêm trên đó nha.
Bước 1: Stripe đưa ra thông tin subscription mỗi tháng
Bước 2: Gọi từ Stripe qua hub của hệ thống mình => Gọi qua bên Coinbase Commerce
Bước 3: User sau khi thanh toán xong => gọi ngược lại Stripe để update theo luồng Upgrade/Downgrade
Trong quá trình trên, ae có thể gọi về system và store data/logs lại nhé
Với chỉ thanh toán qua Coinbase Commerce: (sẽ develop sau khi lượng user tăng lên, cũng như đăng ký được với Coinbase)
Với việc đi qua Coinbase commere, và chưa có subscription system => Seitrace phải tự xây.
Khi tự xây thì sẽ liên quan đến các luồng upgrade, downgrade, thanh đổi gói, cancel gói, … => mình sẽ nói ở phần dưới của bài viết sau nhé.
Thì luồng cơ bản của thanh toán => Khi phát sinh thanh toán (bạn xem sequence diagram ở dưới nhé) – từ bước số 2.
Với việc thanh toán có thể phát sinh từ nhiều luồng (thanh toán lần đầu, thanh toán khi mua thêm credit, thanh toán phát sinh, thanh toán hằng tháng, thanh toán khi thay đổi gói (upgrade/downgrade), …)
Với thanh toán nhưng check manual: (đang develop => này đỡ tốn thời gian đợi accept từ các bên nền tảng 3rd, mà có thể giảm thời gian dev, test => từ đó mục tiêu 8 tuần build xong tính năng (cùng với nhiều tính năng khác release trong giai đoạn này) sẽ dễ dàng hơn)
=)) Luồng này chưa vẽ, tại như luồng qua Coinbase, mà bỏ bớt, bạn đọc có thể xem luồng trên và bỏ đi bước gọi qua Coinbase Commerce API, thay vào đó gửi thông tin thanh toán (Số tiền, thông tin/mô tả thanh toán, địa chỉ nhận tiền, thời gian phải thanh toán) qua email, cũng như trả vào FE để hiển thị lên màn hình, thậm chí có nút share public để gửi qua tin nhắn cho user, có thể có đếm giờ/hoặc không tuỳ logic => Và khi thanh toán xong => vào Admin dashboard update trạng thái thanh toán => tự động gửi mail báo cho user sau khi update trạng thái.
Luồng subscription, upgrade, downgrade
Ở đây mình chỉ copy 1 phần nhỏ luồng cho anh em xem nhé, ae nào khi nào cần làm kỹ thì có thể phân tích kỹ hơn 😀 Share hết bí mật sao được 😀
Giả sử có các gói Subscription
– Miễn phí (Free): $0/tháng
– Advanced: $100/tháng
– Professional: $200/tháng
Luồng các trường hợp
1. Từ Free -> Advanced
– Trạng thái ban đầu: Người dùng đang sử dụng gói Free.
– Hành động: Người dùng chọn nâng cấp lên gói Advanced.
– Xử lý:
+ Người dùng sẽ được yêu cầu thanh toán $100 cho tháng đầu tiên của gói Advanced.
+ Sau khi thanh toán, gói của người dùng sẽ được nâng cấp ngay lập tức lên gói Advanced.
+ Kỳ thanh toán tiếp theo sẽ là $100 vào cùng ngày tháng sau.
2. Từ Advanced -> Free
– Trạng thái ban đầu: Người dùng đang sử dụng gói Advanced với phí $100/tháng.
– Hành động: Người dùng chọn hạ cấp xuống gói Free.
– Xử lý:
+ Gói Advanced sẽ tiếp tục được duy trì cho đến cuối chu kỳ thanh toán hiện tại.
+ Sau khi kết thúc chu kỳ thanh toán hiện tại, gói của người dùng sẽ tự động chuyển về gói Free.
+ Không có khoản hoàn tiền cho phần thời gian chưa sử dụng của gói Advanced.
3. Từ Advanced -> Professional
– Trạng thái ban đầu: Người dùng đang sử dụng gói Advanced với phí $100/tháng.
– Hành động: Người dùng chọn nâng cấp lên gói Professional.
– Xử lý:
+ Phần tiền đã trả cho gói Advanced sẽ được tính tỷ lệ theo số ngày đã sử dụng trong tháng.
+ Số tiền còn lại sẽ được khấu trừ vào chi phí của gói Professional.
+ Người dùng sẽ thanh toán số tiền chênh lệch để nâng cấp lên gói Professional.
+ Ví dụ: Nếu người dùng đã sử dụng gói Advanced được 15 ngày, số tiền còn lại là $50. Người dùng sẽ cần thanh toán thêm $150 để nâng cấp lên gói Professional.
+ Ngay sau khi thanh toán, gói của người dùng sẽ được nâng cấp lên gói Professional.
4. Từ Professional -> Advanced
– Trạng thái ban đầu: Người dùng đang sử dụng gói Professional với phí $200/tháng.
– Hành động: Người dùng chọn hạ cấp xuống gói Advanced.
– Xử lý:
+ Gói Professional sẽ tiếp tục được duy trì cho đến cuối chu kỳ thanh toán hiện tại.
+ Sau khi kết thúc chu kỳ thanh toán hiện tại, gói của người dùng sẽ tự động chuyển về gói Advanced với phí $100/tháng.
+ Không có khoản hoàn tiền cho phần thời gian chưa sử dụng của gói Professional.
Tổng Kết
– Nâng cấp (Upgrade): Người dùng sẽ phải thanh toán chi phí chênh lệch tương ứng với số ngày còn lại trong chu kỳ thanh toán hiện tại.
– Hạ cấp (Downgrade): Người dùng sẽ tiếp tục sử dụng gói hiện tại cho đến hết chu kỳ thanh toán và không có khoản hoàn tiền cho phần thời gian chưa sử dụng của gói cao hơn.
Ngoài ra còn luồng từ monthly qua yearly/annual, và ngược lại kết hợp với việc từ gói rẻ -> gói mắc hơn, hoặc mắc hơn -> rẻ hơn. Các trường hợp này sẽ tuỳ logic của từng dự án mà thay đổi khác nhau 1 ít. Và cũng khá phức tạp khi có trường hợp gói mắc về gói rẻ, nhưng vì từ monthly qua annual => có phát sinh phí, nghĩa là mắc qua rẻ nhưng lại không phải luồng downgrade như ở trên có đề cập 😀
Đối với bên Seitrace =)) sau khi mình phân tích đủ các luồng, Dev khóc => quyết định không chơi luồng upgrade/downgrade ở giai đoạn này vì nguồn lực build không đủ => chặn luồng này luôn, chỉ hỗ trợ upgrade/downgrade, hoặc chuyển monthly qua yearly hoặc ngược lại thì đều phải nhắn tin :)))
Thật ra thì với mình khi phân tích mình nhìn đủ các trường hợp để mang ra trao đổi, còn với tư duy xây dựng product mình hay build basic với mục đích chính là sử dụng được, cover được các case nhưng có thể làm manual ở giai đoạn đầu, và sau đó sẽ tự động hoá dần, điều này nằm sâu trong tư duy của mình từ khi chuyển qua làm product, thậm chí khi mình tự xây trung tâm tiếng Anh enrichenglish.net cũng đang áp dụng như vậy, chạy được, ra doanh thu rồi khi có thời gian, nguồn lực sẽ nâng cấp dần dần, cũng như biết chỗ nào sai và sửa.
Bạn xem luồng manual bên mình ở dưới nhé.
Subscription first time
Ở luồng này thì mình viết bằng text với idea cơ bản nhé:
Xét xem đang là sub lần đầu => Server xử lý và tính giá tiền, thời hạn + thông tin các kiểu
Trả cho UI để hiển thị => user confirm => tạo bill và gửi yêu cầu qua Coinbase để tạo bill bên Coinbase
Trả thông tin lại cho user (UI và email) => user thanh toán
=> Đợi user thanh toán và Webhood của Coinbase trả kết quả => update gói & thời hạn mới của gói cho user ở phía Sub Mgmt Server + gửi mail successful
Đối với không thanh toán => huỷ bill sau khi hết hạn.
Trước khi sub => Thì cũng có các luồng liên quan đến đăng nhập, tạo gói free, xử lý các logic để phân biệt đang gói nào, và đang thực hiện luồng sub lần đầu hay upgrade/downgrade,….
Payment monthly
Có 1 con Cronjob sẽ quét DB subscription daily => phát hiện anh nào tới hạn thanh toán (có thể set là 5 ngày trước khi hết hạn)
Tạo thông tin thanh toán và gửi qua Coinbase Commerce tạo bill
=> gửi thông tin bill qua email cho user
=> Đợi user thanh toán và Webhood của Coinbase trả kết quả => update gói & thời hạn mới của gói cho user ở phía Sub Mgmt Server + gửi mail successful
Đối với không thanh toán => thì quét nhắc lại trước khi hết hạn 24h
Trường hợp hết hạn mà không thanh toán => update gói về free (cancel package) + gửi email cancellation
Sử dụng API => Trừ tiền
Luồng này thì có nhiều phương án, các bạn có thể tham khảo thêm từ các subscription API khác nhé, mình chỉ liệt kê 1 số luồng và không nói quá sau, bạn nào làm tới tính năng này thì research thêm sau nhé.
Dựa theo gói => giới hạn tính năng, lượt request theo giây, giờ, ngày, tháng,… và khi hết thì không được sài nữa (Giống như đăng ký 4Gb của các nhà mạng 😀 tốc độ nhanh chậm, ngày nhiêu Gb :v hết thì không được sài nữa)
Cũng là trường trên nhưng mà hết thì được sài với tốc độ chậm 😀
Cũng là trường hợp trên nhưng khi hết thì tính giá riêng (thường mắc hơn rất nhiều so với mua gói, và trừ tiền dần trong tài khoản) => này khó áp dụng khi không có cà thẻ hoặc tiền có sẵn trong tài khoản => có thể ignore.
Cũng là trường hợp đầu tiên, nhưng khi hết thì được mua thêm những gói mini khác (ví dụ như mua thêm 1Gb sử dụng trong 24h với tốc độ của gói đã mua trước đó)
Hoặc cho sài tẹt ga, nhưng cũng có giới hạn tốc độ theo giây, theo giờ (kiểu như mua gói mạng dây Viettel trả tiền theo tháng hoặc 12 tháng tặng 1 tháng, có tốc độ đó thì mạng chạy chậm hơn, nhưng được sài tẹt ga)
Hoặc quy ra thành Credit, cứ mỗi lượt sẽ trừ tiền bớt, sài nhiều thì hết sớm, sài ít thì lâu hết, có thể mua thêm gói mini nếu hết 😀
Hoặc là mua thêm cộng dồn (kiểu trả nhiêu sài nhiều rồi trừ dần – như tiền nạp vào thuê bao di động)
Và tuỳ theo gói sẽ có các luồng trừ tiền/limit khác nhau.
Bên mình sau khi nghiên cứu thì thấy hướng credit sẽ dễ develop hơn, ít tốn nguồn lực => chọn và sau này tuỳ nhu cầu của người dùng cũng như áp dụng số liệu product research để thay đổi sau.
Bên mình cũng thêm luồng khi sử dụng gần hết data => sẽ gửi email báo (một dạng warning) => thì thêm con cronjob quét daily.
Về giao diện
Về mặt giao diện thì có thể phân ra các nhóm màn hình sau:
Màn hình thông tin bán các gói API, đăng ký mua (kiểu như mấy trang landing page quảng cáo á) => do có thanh toán => tích hợp UI thanh toán vào (ví dụ đăng ký 4G, các bạn vào app xem list gói + nhấn đăng ký + confirm thanh toán, hoặc nhắn tin qua tổng đài đăng ký ấy).
Luồng quản lý gói & dữ liệu đã sử dụng, ở đây sẽ hiển thông tin gói chi tiết, số lượng credit, lưu lượng, limit đã sử dụng, còn lại bao nhiêu, và có nút mua thêm các gói mini, cũng như nơi tạo và quản lý API key. Kèm theo đó là dữ liệu bill history, API usage logs, chart usage các kiểu
3. Giao diện phía quản lý của Seitrace (Admin dashboard)
Danh sách customers
Customer details + thông tin gói, subscription, change plan for user,….
Nơi cấu hình các package (Gói, thông tin gói, các limit, giá gói theo tháng, năm, giảm giá,….)
Cấu hình giá trị của từng API theo credit, … rồi bên Pro, Free thì như thế nào,…
Ngoài ra còn các giao diện tính năng khác, tuỳ theo người phân tích có thể đưa ra cho phù hợp
Kết luận
Bài toán subscription được nhiều bên xây dựng rồi, bạn có thể tham khảo các logic mình phân tích, và ánh xạ lên nhiều bên khác nhau để chọn cho phù hợp, hoặc tự build.
Với mỗi dự án thì nhu cầu sẽ khác nhau do đó bạn có thể linh hoạt điều chỉnh tính năng
Dự án bên mình nguồn lực khá ít, do đó xây dựng theo hướng đơn giản trước, khi doanh thu và nhu cầu tăng => sẽ mở rộng dần
Đối với người phân tích dự án thì nhìn rộng và phân tích các trường hợp có thể xảy ra, thậm chí có thể phân tích hết trước dù khi làm chỉ là 1 phần nhỏ, hoặc chọn phân tích kỹ phần sẽ làm và phần chưa làm có thể chỉ phân tích luồng chính và đi details sau khi cần.
Luồng này liên quan đến tiền của người dùng do đó phần security khá quan trọng 😀 anh em cũng lưu ý kỹ nha.
Phần thanh toán hằng tháng thì nên sài qua bên thứ 3 nếu cho thanh toán qua thẻ, vì liên quan đến nhiều license và quy định bảo mật 😀
Anw, bài viết khá dài, cảm ơn bạn đã đọc đến đây nha <3
Hello, I am Hoàng Phan, you can call me “King” in English. This is my very first blog post written in English. I hope you find it clear and enjoyable to read! 😀
Today I want to share what I did research about pump.fun
Overview
Pump.fun is a project on the Solana blockchain designed to facilitate fair fundraising for MEME coin through the use of a linear bonding curve mechanism.
I researched & asked pump.fun about the bonding curve, they told me that their bonding curve is similar to Uniswap V2 where x*y = k represents a linear bonding curve. This coin allows for dynamic pricing influenced by market demand and supply.
Target to raise to 85 SOL with 796M Meme tokens and add LP pair to DEX, and burn the LP token and the MEME coin has no owner.
While user joining the launchpad, user can change their mind to sell their tokens/shared back to Bonding Curve.
Create MEME COIN
Before creating any Meme coin, the creator must first establish a Solana wallet, deposit some SOL (at least 0.021 SOL for creating fee) into it, and then register an account on pump.fun.
Creator fills out Ticker, meme name & description ⇒ Then choose the number of token to buy right after token created (First buy in SOL ⇒ Tokens [optional])
The system will create/mint 1B Tokens
Add 794M Tokens to Bonding Curve
206M Token is used to create Pair on TOKEN/SOL on Raydium and Add LP there if the bond can fill.
If creator set first buy (in SOL) ⇒ Bonding Curve will execute the swap for that first buy
The price will increase when more SOL & less Tokens in Bonding curve (more buy ⇒ gain price, and more sell ⇒ dump price, it follows the rule of Uniswap V2 Bonding Curve x*y = k )
1% fee for buy/sell actions, it will come to pump.fun team’s wallet
example buy 1 SOL, you will pay 1 SOL + 0.01 SOL (1% fee)
sell and receive 1 SOL ⇒ user can only receive 99% of 1 SOL = 0.99, then 0.01 SOL (1% fee) will be sent to pump.fun team’s wallet
List on Raydium
Once the bond reaches 100% (0 TOKEN & 85 SOL in bonding curve) ⇒ (maybe) a cronjob will run & execute to create pair on Raydium & add LP
6 Sol will be taken for fees (2 to pump, 4 to Raydium), then 79 SOL + 20% of tokens (206m) will seed the LP.
Bonding Curve ⇒ Transfer 85 SOL to wallet 39azUYFWPz3VHgKCf3VChUwbpURdCHRxjWVowf5jUJjg then this wallet will transfer to the team’s wallet 2 SOL (deduct fee ⇒ 1.85 SOL) & create PAIR + Add LP (79 SOL + 206M Tokens)
Right after add LP ⇒ they are will be burned ⇒ No one owner
Update the UI on pump.fun after Raydium listing, so now user can trade on Raydium via pump.fun & see the new chart of pair TOKEN/SOL on Raydium. => can check the UI here: https://pump.fun/GzqmrcsvGkAiTpJrYTYav2j5F3NquE3x1gcDR71Jpump
Some other features
King of the hills: To achieve “King of the Hill” status, about 45 SOL is required, marking the halfway point in token sales.
When a token’s market cap hits around $30K, it overtakes the current “King of the Hill” and is featured prominently. This visibility often attracts new buyers but can also be exploited by scammers.
Thread: This is using for discussing about the project, user can comment/replies free even you did not buy/invest to that tokens.
Bubble Map: just use the framework to show the address & token’s holding.
Marketcap
I just copy message from pump.fun team wrote to me for question asking about how to calculate MC on pump.fun.
We have virtual (non real) reserves for both Sol and tokens. This sets the parameters and initial price in the bonding curve. The market cap is the initial ratio (price) of the virtual Sol and tokens multiplied by the total supply of tokens.
Từ lâu mình đã thích việc leo núi và enjoy cái moment lúc ngắm nhìn thiên nhiên, cây cối. Khi còn ở Sài Gòn, giai đoạn sinh viên thì kiểu thích và đi leo mấy núi như núi Bà Đen, Chứa Chang đồ á.
Lúc về Nha Trang thì mình leo núi thường xuyên hơn, trung bình 1 tháng 2-3 lần leo núi, cứ mỗi cuối tuần thì chạy xe trong thành phố rồi leo thôi, rất tiết kiệm thời gian khi chỉ tốn 2-3 tiếng cho 1 lần như vậy, nhiều thì những núi cao hơn sẽ mất 7-8 tiếng. Vừa để rèn luyện sức khoẻ, vừa để ngắm nhìn thiên nhiên và giảm bớt áp lực/stress từ công việc.
Bài học rút ra
Sau những lần leo núi mình thấy có những cái khá giống với việc đặt mục tiêu và đi tới mục tiêu. Để mình kể các bạn từng chi tiết riêng, sau đó sẽ đưa ra những nhận định nằm ở cuối nhé.
Chuyện dễ bỏ cuộc khi leo núi
Những thời điểm đầu mình leo núi, mình thấy khá chật vật và chưa biết cách leo làm sao tiết kiệm sức và tới đỉnh nhanh.
Thực tế là khi mình leo, bắt đầu đi mình leo rất nhanh, vì lúc đó còn sức, còn khoẻ, chân chưa mỏi. Nhưng mới leo được cỡ 1/20 đoạn đường cần leo thì thở hổn hển, tim đập nhanh. Đặc biệt là lần đầu leo cảm giác như muốn bỏ cuộc dù mới đi được cỡ 1/5 đoạn đường sau nhiều lần nghỉ mệt. Những lần đầu leo là cứ khúc đầu tăng tốc, leo nhanh được 1 đoạn ngắn, xong nghỉ mệt đâu đó 5-10 phút, hết mệt lại leo nhanh, rồi lại nghỉ mệt 5-10 phút, càng về sau càng nghỉ mệt nhiều hơn. Thế là tổng thời gian leo cứ thế bị tăng lên rất nhiều, mà tại những thời điểm dừng lại để nghỉ mệt lại càng có suy nghĩ bỏ cuộc, càng về sau cái suy nghĩ bỏ cuộc nó càng tăng lên.
Mình liên tưởng tới lúc xưa khi còn là sinh viên và những năm đầu làm việc, ngoài việc học và công việc trên công ty mình hay có các ý tưởng thêm và cố gắng tự xây dựng/build sản phẩm riêng của mình. Giai đoạn đầu của các dự án mình lao vào làm hì hục, cày đêm cày khuya liên tục, lúc đó kiểu rất hào hứng nên dành rất nhiều thời gian cho nó, quên nghỉ ngơi luôn ⇒ hay bị burn out ⇒ dẫn tới chán nản và bỏ cuộc ⇒ cuối cùng cũng không đi tới đâu cả và bỏ đi rất nhiều công sức đã làm trước đó rất sớm. Giống y chang việc leo núi, nếu không leo cùng bạn, không có người đốc thúc để cố gắng sau nhiều lần dừng lại nghỉ mệt thì mình đã bỏ cuộc ngay những bước đầu tiên. Còn việc build dự án riêng lại không có ai đốc thúc nên mình đã bỏ cuộc rất nhiều lần.
Leo núi từng bước một, ít khoảng nghỉ
Nhớ giai đoạn đầu vừa về Nha Trang, leo núi gặp một ông người Đức 65 tuổi, ổng hay leo canh khoảng 9g sáng. :v mình và bạn mình leo lên trước ổng khoảng đâu 15 phút, nhưng ổng leo đi sau ⇒ rồi đi ngang và nói chuyện với tụi mình ⇒ cuối cùng là mình đi được nữa đường, ông chú đó đã leo lên tới đỉnh, lúc đi theo được tới mốc 3/4 đường thì lại gặp ông chú đi xuống và nói chuyện với tụi mình, cuối cùng khi lên tới đỉnh :v ông chú đã xuống gần tới chân núi.
Mới đầu mình cứ nghĩ chắc là do ông chú leo thường xuyên nên quen với việc leo núi, thành ra ổng leo nhanh. Nhưng sau 1 thời gian leo mình lại thấy leo thường xuyên chỉ là 1 yếu tố, nó còn nhiều yếu tố khác nữa mà sau nhiều lần leo núi mình nghiệm ra được. Trong đó yếu tố mình thấy giúp mình lên đỉnh núi vừa ít mệt vừa tiết kiệm thời gian đó chính là đi từng bước một thật chậm rãi.
Tức là trong suốt quá trình leo, đặc biệt là khúc đầu leo, mình sẽ leo thật chậm rãi từng bước một thôi – giống như việc giữ sức vậy đó. Nhờ vào việc leo từng bước một ngắn, đều, không bước vội thì nhịp tim của mình nó chỉ tăng lên 1 tíu chứ không tăng lên vượt ngưỡng ⇒ từ đó toàn bộ cơ thể (đặc biệt là tim) rất ít mệt ⇒ dẫn tới việc không cần nghỉ nhiều ⇒ thậm chí là không cần nghỉ mà leo 1 mạch lên luôn 😀 (giống ông chú người Đức 65 tuổi mình nói ở trên)
Ở trên mình có nói đó, 1 lần nghỉ ngơi mất đâu 5-10 phút, giả sử 1 lần leo nên ngọn núi cao có 330m à, mình phải nghỉ ngơi tận 10 lần, tổng thời gian nghỉ ngơi trung bình mất tiu 50 phút 😀 =)).
Mà thời gian nghỉ 50 phút này là còn dài hơn tổng thời gian mình leo lên tới đỉnh sau khi đã rút ra được bài học này 😀
Rồi mình lại liên tưởng tới lúc làm việc, học tập và dự án cá nhân. Cứ có chiến thuật và đi từng bước một, làm liên tục và đều – lâu lâu ngừng lại nghỉ ngơi nhẹ thôi rồi tiếp tục. Không nên để rơi vào tình trạng burn out thì vẫn còn sức để chiến tiếp và theo dự án được dài hơi hơn, không chắc sẽ thành công nhưng giúp mình đi được dài hơi với một ý định gì đó. Mình đã áp dụng và thật sự thấy có hiệu quả cho một số dự định cá nhân, đừng quá sức và bỏ cuộc là được.
Kinh nghiệm và sức bền là điều cần khi leo núi
Núi nhỏ – thấp thì không nói, nhưng với những ngọn núi cao, dài, địa hình khó khăn thì kinh nghiệm và sức bền là điều cần lưu ý rất nhiều.
Ví dụ như ở trên mình ngẫm ra được việc bước từng bước nhỏ và đều là sau 1 thời gian leo ở Nha Trang mình mới tự nhận ra ⇒ đó là nhờ nhiều lần leo và quan sát nên mới có kinh nghiệm. (Mặc dù trước đó có leo ở núi Bà Đen, Chứa Chang nhưng lúc thời điểm đó mình rất gầy và kiểu khoẻ nữa =)) thành ra leo thấy easy quá mà k để ý luôn, sau về Nha Trang tăng so với xưa 15 Kg nên khác lắm 😀 ).
Còn sức bền thì khỏi nói rồi, leo các ngọn núi dài, hoặc đơn giản như núi Cô Tiên ở Nha Trang có 3 ngọn, để leo hết cả 3 ngọn trong thời gian ngắn thì cũng cần có sức bền. Mà sức bền cũng nhờ những lần leo núi trước đó hoặc rèn luyện các môn thể chất khác để tăng lên.
Vậy trong công việc và học tập cũng y chang luôn, phải làm thì mới có kinh nghiệm, tự ngẫm ra kinh nghiệm cho bản thân, rồi sức bền khi chiến các dự án dài hơi, fix bugs liên miên. Nên khi học hành thì cũng cần rèn luyện, ví dụ việc học tiếng Anh – khúc đầu học ít phút thôi cho quen dần, đỡ phải nản cũng như rút ra các bài học ⇒ rồi sau đó sẽ có kinh nghiệm và sức bền thì tăng độ khó của bài học, cũng như tăng thêm thời gian học. Hoặc là với đi làm, giờ muốn làm dự án khó và dài hơi thì trong khi đang làm các công ty bây giờ nè, rãnh thì xin thêm dự án đi, hoặc tốt hơn thì nên tự nghĩ ra ý tưởng rồi tự build, như ông anh “T” trong bài viết mình có đề cập trước đó, ảnh tìm thêm job ngoài để làm vừa để học hỏi thêm kinh nghiệm nhanh nhất, vừa là để kiếm thêm thu nhập, thêm nữa ảnh còn build thêm các thiết kế cá nhân để đưa vào portfolio. Rồi trước khi ảnh làm các dự án lớn, ảnh cũng học rồi rèn luyện từ các dự án nhỏ đi lên để lấy kinh nghiệm và sức bền từ đó có thể chiến được các dự án dài hơi hơn 😀
Uống nước ít hơn (nhưng đủ) trong quá trình leo núi
Khúc đầu mình leo núi thì hay mang nhiều nước lắm, vì sợ thiếu nước, chưa kể vì leo núi hay mệt nhanh khi khúc đầu cứ có sức nhiêu là leo nhiêu ⇒ mệt nhiều ⇒ dừng nhiều ⇒ uống nước nhiều.
Núi cô Tiên thời gian đầu mình leo, lên được một ngọn núi đầu tiên sẽ bay 1,5l nước. Nên lúc nào mình cũng mang cỡ tầm 2-2,5l cho 1 lần leo núi là 1 đỉnh.
Nhưng những lần uống nước đó hay có tác dụng phụ, kiểu như xốc hông nè, mất nước điện giải nè, mắc tè nè.
Một mặt khác nữa là mang nhiều nước thì nặng hơn, làm mình cũng kiểu nhanh mệt hơn 1 tíu.
Đặc biệt mấy lần đầu leo, nghỉ mệt nhiều thì lại uống càng nhiều nước =)).
So với khi làm việc mình cũng thấy giống y chang, đang làm việc chán nản/mệt mỏi cần nghỉ ngơi thường xuyên thì lôi điện thoại lướt lướt facebook, insta, twitter (x) các kiểu, càng burn out mà không có kinh nghiệm điều chỉnh là càng lao đầu vào sài lướt mạng xã hội các kiểu nhiều hơn ⇒ Nếu ai hiểu về dopamine thì sẽ biết là các việc như vậy làm tăng dopamine lên rất cao, sau đó cơ thể phải tự giảm xuống thấp hơn mức trung bình để cân bằng, và từ đó càng làm cho ta nản việc tiếp tục làm việc. Mà việc cân bằng này cũng cần có kinh nghiệm và sự quyết tâm nha.
Do đó nếu chỉ giải trí ở mức vừa đủ, không quá lạm dụng, hoặc dùng các phương án như tập thể dục, ngắm cảnh, healing đồ các kiểu thì dopamine tăng ở mức an toàn giúp ta làm việc hiệu quả hơn.
Và việc leo núi, uống nước vừa phải hợp lý cũng sẽ giúp ta giảm bớt những tác dụng phụ đi. Mà mình nghĩ cũng từ nhiều yếu tố, ví dụ có kinh nghiệm, biết cách leo núi từng bước nhỏ đều đặn cũng giúp cho việc uống nước ở mức vừa đủ, đi đều, ít mệt ⇒ ít khát và ít cần bổ sung nước hơn. Mà nhớ ông chú 65 tuổi ở trên không? Ổng leo không mang nước luôn =)) ổng cầm có 1 cái cây gậy, quần đùi, áo 3 lỗ leo núi thôi, chứ không mang theo gì cả.
P/s: Mình nghĩ chắc là sẽ có người phản biện là sao không uống nước tăng điện giải cho có điện giải trở lại – … ờ thì mình lấy ví dụ để suy ra cách áp dụng cho công việc thôi… và việc dùng nước tăng điện giải so qua với công việc thì kiểu dùng các cách như tập thể dục, ngủ đủ giấc để cân bằng dopamine tốt nhất ấy là giống nhau.
Chọn thời điểm leo núi.
Thật ngu ngốc khi 2-3 tháng đầu leo núi, mình luôn chọn leo từ 9g sáng và xuống núi đâu đó lúc giữa trưa =)).
Giữa trời tiết mùa hè nắng nóng mà leo giờ đó đúng là kiểu đi phá sức á chứ, thời gian đầu vì leo khung giờ đó mà mình thấy kiểu mệt, da cháy nắng luôn, mà bị mất sức + cần bổ sung nước rất nhiều, dẫn đến nhiều thứ hơn.
Sau này khi nhiều người leo xuống núi cũng là lúc mình leo lên người ta hay bảo là nên leo sáng sớm hoặc chiều tối, mình đổi qua khung khác để leo thì kiểu chả thấy mệt gì cả (do lúc đó đã kèm theo việc áp dụng chiến thuật đi từng bước ngắn và đều)
Thì việc này cũng giống như đi làm, hay xây dựng dự án cá nhân, luôn cần chọn đúng thời điểm và khung giờ hợp lý. Ví dụ như có những người làm việc hiệu quả vào ban đêm ⇒ thì ban ngày làm các việc không cần quá tập trung, ban đêm thì các việc khó, cần suy nghĩ nhiều, tập trung nhiều. Mà đôi lúc cứ nghĩ là mình hợp khung giờ đêm rồi cứ thức 2-3 giờ đêm làm để hại sức khoẻ cũng không đúng nhé (y chang việc leo núi 9g sáng – 12g trưa của mình). Sao không thử ngủ sớm rồi dậy sớm thử khung giờ sáng sớm xem sao 😀 (như mình chọn đổi khung giờ sang leo từ 3g chiều)
Còn khi xây dự án, mình đã và đang làm nhiều dự án thì mới nhận ra việc thực hiện xây dựng/ ra mắt sản phẩm đúng thời điểm rất quan trọng, ví dụ các dự án trong thị trường Blockchain, năm cuối 2021-cuối 2023 là thời điểm rất ít dự án ra mắt, vì giá thị trường, đặc biệt BTC đang có xu hướng giảm, nên đa số các dự án ra mắt thời điểm này ngủm mất tiu, nhưng gần đây thì trường lại sôi nổi trở lại, nhiều nguồn tiền đi vào ⇒ các dự án xây dựng gần đây lại có cơ hội thành công cao hơn. Hay công ty mình cũng vậy, khi làm các dự án, thì mua giảm giá bên mình chỉ nghiên cứu, thử nghiệm và khi thị trường quay trở lại là thời điểm tốt để xây dựng các dự án.
Cần có các bước chuẩn bị trước khi leo núi.
Trong quá trình leo núi, cũng cần có sự chuẩn bị, dù là nhỏ hoặc đơn giản nhưng cũng cần làm đúng và phù hợp.
Ví dụ trước khi leo núi thì không nên ăn quá no, dễ bị xốc hông, nên do đó nên ăn trước ít nhất 30 phút và ăn vừa phải để leo.
Hay là việc mang theo nước, cũng nên mang vừa phải, không quá nhiều, không quá ít ⇒ mà này cũng cần leo và thử nghiệm nhiều lần trước để rút ra kinh nghiệm á nha.
Rồi khi leo cũng cần khởi động trước nữa, chứ không phải bụp cái là leo ngay, dễ bị trật chân khi mà không khởi động.
Rồi để leo được núi cao và dài, địa hình khó thì cần phải rèn luyện trước đó, tập chạy thể dục, rè luyện thể chất, leo núi nhỏ trước, thử nghiệm nhiều lần và tăng dần độ khó, độ cao lên. Chứ lần đầu leo mà đi leo mấy núi mất 7-8 tiếng leo thì dễ toang lắm.
Và trong công việc cũng vậy nốt, cần có sự chuẩn bị.
Lúc chưa có kinh nghiệm đi làm ⇒ thì làm dự án mẫu, học kỹ kiến thức, tự thực hành theo tưởng tượng hoặc tìm mentor hỗ trợ.
Các kỹ năng cần thiết như chỉnh sửa ảnh, video, kiến thức cơ bản công nghệ thông tin, ngoại ngữ cũng cần phải biết, không quá giỏi cũng được nhưng cần biết để khi cần mà sài tới liền.
Việc học có lúc nghĩ nó không cần tới, nhưng lúc cần là có sài liền, chứ đợi lúc cần mới đi học thì tốn thêm mớ thời gian, hoặc đôi lúc nghĩ mà tiếc bị lỡ mất cơ hội. Ví dụ như mình đồng ý nghỉ việc và bỏ ra 100 triệu đi qua Philippines học tiếng Anh, để khi có cơ hội là mình nắm bắt ngay, nhiều lần mình nghĩ nếu không có tiếng Anh thì mình đã lỡ đi cơ hội việc làm như bây giờ, không có những trải nghiệm tốt hơn. Hoặc việc lúc cấp 2, cấp 3 mò về Photoshop cũng là lợi thế khi mà khi đi làm sài những công cụ vẽ như Figma, Balsamiq, XD,… mình chả cần học gì mà cứ vào sài thôi. Hay là kỹ năng nói chuyện trước đám đông, dẫn dắt cuộc họp ⇒ mình đã phải mất hơn 3 năm để rèn luyện, tham gia các hoạt động Đoàn Hội, dẫn dắt các bạn đi tổ chức sự kiện ở nhiều nơi, gặp các cấp lãnh đạo ở các huyện, xã. Kỹ năng bạn học nó sẽ ở trong bạn, có thể thời điểm hiện tại nó chưa bùng nổ, nhưng khi có cơ hội nó bộc phát ra thì việc công việc thuận lợi hay lương bổng tăng gấp nhiều lần cũng có ngày diễn ra thôi :D.
Tự rèn luyện thêm trong quá trình đi làm cũng là một bước chuẩn bị cho tương lai, thời gian 8 tiếng 1 ngày đi làm, bạn thường sẽ có ít nhất 1-2 tiếng buổi tối, hãy tận dụng nó đi ⇒ những người chiến thắng/thành công sẽ là những người biết tận dụng khoảng khung giờ đó :D.
Kết luận việc leo núi
😀 Mình lấy cớ việc leo núi để liên tưởng và viết bài, đôi lúc có mấy cái nhìn có vẻ hơi vô lý 1 tíu :D, dưới đây là những điều mình rút ra được:
Dễ bỏ cuộc nếu khúc đầu của bất kỳ dự án/ kế hoạch nào cũng làm không có kế hoạch, lao vào chiến, không biết nghỉ ngơi hợp lý.
Bước từng bước 1, có kế hoạch rõ ràng, duy trì mỗi ngày 1 ít, nhưng mà thường xuyên và có khoảng nghỉ hợp lý sẽ giúp bạn dài hạn từng bước đi tới vạch đích.
Kinh nghiệm và sức bền là cần thiết, do đó hãy cố gắng rèn luyện thường xuyên để nâng cao kinh nghiệm làm việc/học tập và sức bền từ những dự án nhỏ ⇒ sau đó sẽ chiến được dự án khó, phức tạp và dài hạn.
Cân bằng cuộc sống và làm việc, không nên để bị burn out, nản trí và sau đó lướt những điều vô bổ trên internet thường xuyên ⇒ tăng dopamine quá độ ⇒ không có hứng thú làm việc nữa.
Thời điểm học, rèn luyện và làm là quan trọng, chọn khung giờ bạn làm việc hiệu quả nhất, né tránh thức quá khuya gây hại sức khoẻ, giảm trí nhớ. Khi làm dự án cũng chọn thời điểm thích hợp để làm và ra mắt sản phẩm.
Cần chuẩn bị kỹ năng và kiến thức từ sớm, bất kỳ thời gian rãnh nào cũng quý giá cả, tận dụng phù hợp để nâng cao kỹ năng.
Qua bài viết, hi vọng được nhiều bạn đoán nhận, nếu có góp ý hay bình luận, hãy để lại lời nhắn cho mình nhé.
Ây yahhh, lâu quá rồi bận xây dựng dự án Trung tâm Tiếng Anh mới, nên mình cũng ít có thời gian viết blog lại.
Nay một ngày dậy sớm hơn mọi ngày, mình dành ít thời gian chia sẻ về việc một ông Anh chuyển việc từ mechanical (cơ khí) hơi thiên về làm khuôn nhựa và thiết kế in ấn trên ly, vật phẩm physical trở thành một UI Designer (ảnh nói ảnh chỉ biết ít về UX à, nên mình gọi là UI Designer nha) với mức lương tăng từ 12 triệu/tháng lên 2000$ sau 2 năm.
Câu chuyện này nhằm mục đích truyền cảm hứng cho nhiều bạn với mong muốn cố gắng để đạt được những thành tựu tốt hơn về lương bổng, chứ không có ý khoe gì nha (à có 1 tíu khoe 😀 =)) )
Và qua câu chuyện mình cũng chia sẻ tips và các khoá học mà anh đó đã dùng.
Kể về ông Anh và cơ duyên gặp
Ông Anh mình kể tên là “T” sinh năm 1991 hiện đang ở Đà Nẵng.
Khoảng hơn 2 năm trước, ảnh làm mechanical (cơ khí) thiên về làm khuôn nhựa và thiết kế kiểu bao bì, rồi mấy cái in lên ly, đồ vật phẩm.
Sau đó ảnh nghiên cứu và quyết định chuyển hướng sang làm liên quan đến IT => Chọn ngành UI Design
Riêng vợ ảnh làm giáo viên dạy tiếng Anh được 10 năm và cũng chuyển hướng làm BA => Và giờ đang thấy phù hợp với hướng QC hơn nên chuyển qua làm QC (mình mới advise hôm rồi))
Thời điểm 2023, ảnh quen mình vì vợ ảnh có đọc blog + kết bạn fb, mình đăng tin tuyển dụng tuyển UI Design cho team, thì ảnh liên hệ để apply làm việc với bên mình => Từ đó dẫn tới việc anh em làm việc chung.
Hiện tại thời điểm mình viết bài này, ảnh đã nhận công việc 2000$ và đang làm việc remotely tại nhà.
Tips và các khoá học
Từng bước anh đó chỉ mình (để mình share lại cho cháu mình đang làm BA và học thêm về UI Designer, định hướng chuyển làm Product Designer)
Đa số mình copy từ trong tin nhắn của ảnh qua.
Bước 1:
Học figma hì, khoá học bất kỳ, utube free cho tiện, chú ý mấy cái sau nè:
autolayout
responsive
color & typo: style, variable
Bước 2: là đăng ký patreon anh Trí Tâm xem hết các video ảnh làm project – siêu hữu ích lun mà k hiểu sao view hiện tại cực kỳ thấp
Hiện giờ a Tâm k có bài mới, nhưng mình vẫn đăng ký vào xem đc
Ảnh quay video lúc làm việc á, xưa anh coi 1 video 3-4 lần, ngáp cũng coi, ớn cũng coi, coi để để ý detail nhỏ nhất của ảnh lun
Học đc siêu nhiều thứ hay ho, từ process làm việc, tạo component, naming, layout bố cục tất tần tật
Bước ni nếu cần thì bợ 1 bộ UI kit của ảnh về phân tích và chép theo lại UI để hiểu là ok
Hoặc khoá bên Telos, học cỡ 1,5 tháng (học giỏi nhất đc free học phí) => Ảnh được free.
Bước 3: học 1 khoá ux foundation – anh Nguyễn Vương Chung
Bước 4: mua mobbin, vẽ theo cỡ 10 flows, làm chỉnh chu để bỏ zô porfolio
Sau đó chiến project thực tế để nạp thêm kinh nghiệm thui
Nhận xét của mình
Câu chuyện thật nên chia sẻ để mọi người học hỏi
Thật ra anh này lúc mới gặp mình, thì chưa có kn làm product nhiều nha, vẫn chú tâm làm UI.
Anh e chia sẻ kinh nghiệm với nhau, thật lòng mà nói anh này trong 2 năm cố gắng liên tục, nên thấy skills ảnh grow nhanh, mình từng tuyển nhiều Designer tầm cỡ 5 năm kn hoặc hơn, mà về cách build UI chưa bằng ảnh về tốc độ & độ chính xác.
Mình chưa nói đến vấn đề về branding/visuallize nha.
Mình nghĩ mới 2 năm kn, lên đc lead UI Design là khá là nhanh, trong khi trước đó chưa có kn làm UI & product.
Và mình cũng nhận thấy luôn là giờ ảnh đang làm Design cho bên mình, về việc tối ưu chi phí thì ảnh là lựa chọn hàng đầu luôn. 😄 (Tại team mình có 1 người làm visual, bổ sung qua lại thì sẽ tạo nên 1 bộ hoàn hảo mà tối ưu chi phí)
Mình được ảnh chỉ làm UI tầm cỡ 16 tiếng, mình đã vẽ và dùng được khá nhiều công cụ/tip hay luôn. (Ảnh chỉ mình về UI Design, mình chỉ ảnh về tư duy product, cách overview hệ thống & research tính năng)
Còn lý do vì sao ảnh grow nhanh thì đọc đoạn chat nha 😀
Mình thấy, việc chuyển hướng và thay đổi công việc hiện tại quan trọng nhất và là định hướng, và sự quyết tâm. Mình đã được chia sẻ, tâm sự cũng như tư vấn cho những bạn có xu hướng chuyển việc và làm nghề IT, những người chuyển việc thành công, đạt được mức lương HƠN mong đợi đa số là họ cố gắng từng ngày, rèn luyện và học tập thường xuyên để nâng cao trình độ.
Hiện tại mức lương của bạn có thể thấp, nhưng nếu cố gắng và có định hướng tốt, có thể sau 1 năm, 2 năm bạn sẽ có sự thay đổi nhanh chóng và đạt được mục tiêu của mình.
Bản thân mình cũng từ làm việc kiếm lương đủ sống, mơ việc có thể mua chung cư trả góp thôi đã khó, nhưng sau sự cố gắng đã đạt được một mức lương tốt hơn rất nhiều, vừa có thể lo cho gia đình, vừa có thể có khoảng dư để đạt được mục đích khác nhau, nhất là việc chuyển về Nha Trang sống, làm việc remotely.
Bạn nào cần thông tin của anh “T” và cần ảnh hỗ trợ hay chỉ đơn giản là nói chuyện và chia sẻ, liên hệ mình => Mình sẽ hỏi ý ảnh và chia sẻ thông tin để anh em nói chuyện nha.
Với kinh nghiệm đi học tiếng Anh 3 tháng tại thành phố Bacolod, Philippines. Mình quen rất nhiều giáo viên, kèm theo đó là có nhiều bạn, con của thầy cô giáo mình quen có nhu cầu học tiếng Anh nên mình đã kết hợp với các giáo viên mình quen mở dạy 1 kèm 1 trực tuyến. Tức là giáo viên sẽ là những người đang dạy tại các trung tâm tiếng Anh bên Philippines và dạy kèm cho học viên là người Việt Nam.
Trước đó năm 2019 mình đã mở trung tâm PhiEnglish, nhưng sau đó để lại cho bạn mình tiếp tục vận hành vào giữa năm 2021 để tập trung vào lĩnh vực Công nghệ Thông tin. Nhưng gần đây lại có rất nhiều bạn hỏi về việc học tiếng Anh trực tuyến, và vợ mình với dự định trở thành giáo viên dạy tiếng Anh nên kết hợp đó mình mở lại trung tâm mới với tên EnrichEnglish vợi sự hỗ trợ từ vợ.
Với những kinh nghiệm trước đó đã xây dựng PhiEnglish từ con số 0, sự giúp đỡ từ những giáo viên có trên 10 năm kinh nghiệm giảng dạy 1 kèm 1 tại Philippines cho học viên đến từ nhiều nước, 2 trainers người Philippines nhiều năm kinh nghiệm từ trung tâm 51talk (1 trung tâm tiếng Anh trực tuyến lớn tại Trung Quốc), sự trợ giúp từ vợ mình (đạt TOEIC 960/990) với kinh nghiệm học tiếng Anh cũng như giảng dạy tiếng Anh giao tiếp tại Việt Nam (cả online và offline). Nên mình rất tự tin về việc cùng với họ xây dựng những khoá học chất lượng trong mảng giao tiếp 4 kỹ năng (ESL) tiếng Anh.
Học tiếng Anh tại Enrich English thì học ra sao?
– Hiện tại học tiếng Anh tại Enrich English, bạn sẽ học 1 kèm 1 cùng với giáo viên là người Philippines đang sống tại Philippines.
– Học tiếng Anh qua Skype, có thể trao đổi bài tập trực tiếp với giáo viên, ghi lại buổi học.
– Giáo trình giáo viên sẽ đề xuất cho bạn để phù hợp với trình độ của bạn (dựa theo kinh nghiệm giáo viên và hướng dẫn từ bộ giáo trình của Enrich English) hoặc bạn có thể đề xuất giáo trình nếu bạn đã có kinh nghiệm.
– Một buổi học kéo dài 50 phút, với nội dung học là 4 kỹ năng giao tiếp => Bạn có thể chọn bỏ bớt những kỹ năng bạn không muốn học.
– Có bài tập luyện nói và từ vựng sau các buổi học cho bạn.
– Lịch học của bạn sẽ là do bạn chọn vào thời điểm đăng ký học, dựa vào lịch rãnh của bạn và giáo viên để có một lịch học phù hợp, Ví dụ bạn và giáo viên cùng rãnh và quyết định chọn học Sáng thứ 2: 7:00-8:00 AM và Chiều thứ 5: 8:00-9:00 PM, thì lịch học của bạn sẽ duy trì như vậy đến khi hết khoá học.
– Một tuần bạn có thể học từ 2-3 buổi là phù hợp.
– Bạn được chọn giáo viên và học thử miễn phí trước khi quyết định học, dự kiến thời điểm đầu sẽ có 5 giáo viên, bạn chọn 1 để học.
– Khi bận nếu bạn báo trước 6 tiếng thì sẽ được dời lịch học sang hôm khác mà không mất phí hay không mất buổi học (nhưng tối đa được 25% tổng số giờ học được dời)
– Bạn có thể đăng ký khoá 16 giờ hoặc 32 giờ (tặng 2h).
Với việc mở lại trung tâm tiếng Anh, và nhân dịp tết nên sẽ giảm 10,000đ/1 giờ học cho những bạn đăng ký đầu tiên trước thời điểm mở lại.
Học phí: 159,000đ/buổi(được tính là 50p học) => Giảm còn 140,000đ (đăng ký trước 26/02/2024)
Cập nhật mới nhất: Hiện tại trung tâm đã có hơn 14 giáo viên, và tất cả giáo viên đều có kinh nghiệm nhiều năm giảng dạy, có chứng chỉ giảng dạy quốc tế. Bạn lo lắng sợ giáo viên Phil dạy mà bạn không hiểu, hoặc kiểu chưa biết nói gì, không có gốc… giáo viên Philippines họ có kinh nghiệm dạy nhiều, và mình đã thử nghiệm trước đó vào 2019 khi có nhiều bạn kiểu chỉ nói được vài câu How are you? Where are you from…? cũng học được nha.
Chưa kể họ dạy cả trẻ em từ 4-5 tuổi luôn ấy. Vẫn dạy okla.
Nhân dịp đầu năm 2024, BA Zone (Hoàng làm Admin tại cộng đồng này) ra mắt trang tin BA School. Với mục tiêu kết nối và mang lại giá trị cho cộng đồng. Đội ngũ BA Zone tổ chức một sự kiện miễn phí dành cho cộng đồng Business Analyst Việt Nam.
Sau một thời gian dài lắng nghe tâm sự về những khó khăn khi làm Business Analyst nhưng chưa biết bắt đầu từ đâu. Nhất là trong bối cảnh thị trường tuyển dụng BA ngày càng khó hơn như hiện tại. Ngoài kiến thức nền tảng, các doanh nghiệp lớn giờ đây đã đưa những yêu cầu về ứng viên cần có chứng chỉ BA quốc tế như CCBA, CBAP như một điều kiện bắt buộc cần có.
IIBA cũng đưa ra thống kê những ứng viên có chứng chỉ quốc tế có nhiều cơ hội việc làm tốt hơn và có mức lương cao hơn 12%.
Vậy nên đội ngũ Admin BA Zone đã quyết định tổ chức một buổi Workshop online để giúp các bạn tìm hiểu về nghề BA dễ dàng hơn. Đặc biệt là giúp các bạn đang làm Business Analyst có kế hoạch thi chứng chỉ quốc tế như CCBA, CBAP được thuận lợi hơn.
Trong buổi workshop này, chúng ta sẽ cùng nhau chia sẻ những nội dung:
Phần 1: Giới thiệu cộng đồng BA Zone
Phần 2: Lộ trình phát triển nghề Business Analyst
Phần 3: Giới thiệu tổ chức IIBA và các chứng chỉ BA Quốc Tế
Phần 4: Kinh nghiệm thi chứng chỉ CCBA và CBAP
Cách ôn thi chứng chỉ BA hiệu quả, tiết kiệm chi phí
Cách đọc sách Babok v3 hiệu quả
Hướng dẫn làm đề thi thử
Những kinh nghiệm khi làm bài thi
Những vùng kiến thức trọng tâm cần biết khi thi CCBA/CBAP
Những mẹo làm bài giúp bạn tăng tỷ lệ đỗ chứng chỉ
Phần 5: Giao lưu, trao đổi cùng khán giả.
Buổi Workshop có sự góp mặt của các khách mời là đội ngũ Admin BA Zone:
Host chương trình:
Phúc Nguyễn – Founder BA Zone | Business Analyst Lead VNPAY
Hoàng Phan – Admin BA Zone | Co-Founder Cavies Labs
Ms.Hồng có hơn 5 năm là Kỹ sư Giải pháp nghiệp vụ tại Viettel AI.
Tham gia phát triển nhiều sản phẩm lớn trong lĩnh vực Phân tích dữ liệu và Trí tuệ nhân tạo…Đặc biệt với vai trò Admin, Mentor BA Zone Ms. Hồng sẽ chia sẻ những kinh nghiệm rất hữu ích về kì thi CCBA và CBAP.
Hà Mạnh Trí Toàn | Senior Business Analyst
Bachelor of Business in Information Systems, Minor in Logistics and Supply Chain -RMIT
Trong quá trình làm Business Analyst, Mr.Toàn cũng đã thi 2 chứng chỉ BA chuyên nghiệp dành cho BA đó là chứng chỉ CCBA năm 2020 và chứng chỉ CBAP năm 2023. Đây là chứng chỉ cao nhất do IIBA quốc tế cấp. Đặc biệt Mr. Toàn còn chia sẻ kinh nghiệm thực tế khi du học Master BA dành cho các bạn quan tâm.
Với Workshop lần này, đội ngũ Admin mang đến những kiến thức, kinh nghiệm, trải nghiệm về nghề BA. Những kỹ năng nền tảng cần có để giúp BA phát triển hơn trong sự nghiệp.
Đặc biệt sự kiện online miễn phí vì cộng đồng – Bên cạnh đó các bạn sinh viên năm 4 tham gia sự kiện còn có cơ hội được tham gia chương trình “BA Zone Mentorship Program” miễn phí dành cho các bạn sinh viên muốn làm BA.
Với phương châm “Learning and Sharing Knowledge for BA”, mục tiêu của BA Zone là nơi học hỏi, chia sẻ và giúp cộng đồng BA phát triển.
Hiện tại có rất nhiều ngân hàng ở Việt Nam và trên thế giới đang thực hiện chuyển đổi số, do đó mà nhu cầu mở rộng dịch vụ ngân hàng ngày càng lớn dẫn tới việc tuyển dụng BA làm trong lĩnh vực ngân hàng ngày càng nhiều hơn, đặc biệt là các doanh nghiệp yêu cầu Business Analyst cần có kinh nghiệm làm việc trong lĩnh vực đó.
Do đó mà với kinh nghiệm tham gia làm việc cho 9 ứng dụng ngân hàng tại Việt Nam, 1 ứng dụng ngân hàng tại Cambodia, trong những dự án đó mình tham gia nắm chính 4 dự án mobile banking, và hỗ trợ trong 6 dự án. Mình xin phép chia sẻ những “keyword” nghiệp vụ cơ bản và nâng cao mà một BA có thể là cần biết đến để có thể làm việc tốt trong lĩnh vực Banking.
Danh sách các nghiệp vụ:
Nghiệp vụ về tài khoản/định danh
Mở tài khoản (tại quầy, trực tuyến,…)
Định danh khách hàng (KYC/eKYC) => Mở qua eKYC hạn mức giao dịch thấp (thường từ dưới 5M VNĐ)
Cập nhật thông tin khách hàng (CIF)
Phân loại khách hàng (nhóm KH và bậc KH)
Các loại tài khoản (Credit, Debit, Prepaid, Overdraft, Virtual)
Quản lý tài khoản số đẹp (bản chất là Alias)
Quản lý tài khoản đa ngoại tệ
Thông báo/bảo mật tài khoản (ví dụ như có người đăng nhập vào tk trên thiết bị mới, đăng nhập trên IB/MB cần cấp phép,…)
Đóng tài khoản
Quản lý thẻ ngân hàng
Đăng nhập/Đăng xuất (thông qua các phương thức login khác nhau từ FaceID/Vân tay, Password/OTP/…)
…
Nghiệp vụ về thanh toán và chuyển tiền
Quản lý số dư
Hạn mức giao dịch
Phương thức xác thực, xác thực giao dịch
Chuyển khoản nội bộ (Qua số điện thoại, email, alias, ID,…)
Chuyển khoản liên ngân hàng (NAPAS/CITAD/Alias)
Chuyển tiền quốc tế (thường là qua SWIFT)
Thanh toán hoá đơn
Thanh toán điện tử
Thanh toán qua QRPay
Tự động hoá thanh toán định kỳ
OTT (Over The Top)
Nghiệp vụ về hạn mức giao dịch
Tuân theo quy định ngân hàng nhà nước
Hạn mức ngày cho tài khoản/Thẻ
Hạn mức mỗi giao dịch cho tài khoản/thẻ
Hạn mức cho giao dịch tháng
Hạn mức rút tiền
Hạn mức thanh toán thẻ tín dụng
Hạn mức cho giao dịch đặc biệt (từ thiện, …)
Hạn mức giao dịch trực tuyến
Hạn mức giao dịch quốc tế
Tuỳ chỉnh hạn mức
…
Nghiệp vụ thẻ & Thẻ tín dụng
Các loại thẻ
Credit (tín dụng)
Debit (ghi nợ)
Overdraft (thấu chi)
Prepaid (trả trước)
Virtual (Ảo)
Đa năng
Thẻ đồng hành/động hạng/đồng thương hiệu
Phát hành thẻ
Kích hoạt thẻ
Quản lý hạn mức thẻ
Đổi mã thẻ/mã PIN (quên mã thẻ)
Báo mất/khoá thẻ
Thanh toán tự động
Sao kê giao dịch thẻ
Bảo hiểm cho thẻ
Thanh toán thẻ tín dụng
Quản lý thanh toán trực tuyến và hạn mức trực tuyến
Ưu đãi, khuyến mãi, hoàn tiền,…
Nghiệp vụ vay/cho vay
Đăng ký vay
Các loại vay ngân hàng (Thấu chi, Tín chấp, thế chấp, …)
Xét duyệt và phát hành khoản vay
Quản lý khoản vay
Hạn mức cho vay (theo quy định nhà nước và ngân hàng)
Lãi suất vay và thanh toán nợ
Thanh toán và ghi nợ tự động
Bảo hiểm rủi ro cho khoản vay
Chống rửa tiền (AML)
Quản lý nợ xấu
Cho vay tại đa kênh (IB, MB, Tại quầy, qua App bên thứ 3,…)
Tự động gửi hợp đồng vay.
Nghiệp vụ gửi tiết kiệm
Mở sổ tiết kiệm
Kỳ hạn và lãi suất
Tất toán tiết kiệm
Tự động gia hạn tiết kiệm
Rút và gửi thêm tiết kiệm
Các loại mở tiết kiệm
Online
Tại Quầy
Các nhóm khách hàng
Gửi cộng dồn hằng tháng
…
Quản lý danh sách sổ tiết kiệm
Tự động gửi hồ sơ/hợp đồng tiết kiệm
KYC/eKYC
Mở tài khoản trực tuyến
Xác thực/định danh rút tiền
Xác thực/định danh tại quầy
…
Nghiệp vụ về báo cáo giao dịch/tra soát
Xem trực tuyến và tải báo cáo giao dịch
Tra soát giao dịch tại quầy và trực tuyến
Phục hồi giao dịch
Hoàn giao dịch
Phân tích giao dịch (kiểu chi tiêu % như thế nào, cho mục nào,…)
Tuỳ biến báo cáo giao dịch
Nghiệp vụ core bank
Nghiệp vụ về Core bank (thường ở VN là T24) – gồm các nghiệp vụ về thông tin KH, giao dịch, thẻ, ngoại tệ, vay, tiết kiệm, CRM, sao lưu dữ liệu,…
Nghiệp vụ về phương thức xác thực
Tuân theo quy định nhà nước
Sinh trắc (lowest)
Mật khẩu
Normal OTP/SMS OTP
Smart OTP
Token OTP (highest)
Luồng OTP và sinh trắc liên quan đến check device token, type, định vị,…
Mở tài khoản/kết nối tài khoản với chứng chỉ quỹ/tài khoản đầu tư
Mua bán chứng chỉ quỹ/đầu tư
Quản lý danh mục đầu tư
Chạy webview là chính (thường giờ ở VN bắt buộc đầu tư qua kênh đầu tư chứng chỉ quỹ, còn tài khoản chỉ là link tới thôi, hoặc là bên app kia sẽ trở API ra cho kết nối, này tuỳ bên mà có những tính năng khác nhau)
Topup/Withdraw quỹ (tiền)
Nghiệp vụ AML
Này mình chỉ từng làm là gọi API bên thứ 3 hỗ trợ để lấy kết quả về, nên phần chuyên sâu bạn có thể nghiên cứu thêm khi làm tại công ty/ngân hàng của bạn.
Nghiệp vụ virtual account/card
Mở tài khoản/thẻ trực tuyến
Quản lý số tài khoản/thẻ
Đóng tài khoản/thẻ
Các tính năng chuyển khoản/thanh toán
Hỗ trợ thanh toán quốc tế
Nghiệp vụ về quản lý dashboard và phân quyền
Cho các nghiệp vụ tại quầy
Cho nghiệp vụ quản lý Mobile banking và Internet banking
Nghiệp vụ về thanh toán điện tử
Kết nối với e-wallet
Hỗ trợ thanh toán điện tử qua ứng dụng ngân hàng (IB/MB)
Nghiệp vụ OTT (over the top)
Luồng nghiệp vụ thông báo (trên app, qua SMS, …) – luồng này không phải là push noti là xong mà đi qua nhiều bên service, có thể service do ngân hàng có hoặc dùng bên thứ 3, rồi bên thứ 3 lại đi qua 1 bên khác => cần hiểu và thực hiện đúng luồng + truy vết để tìm lỗi khi cần.
Nghiệp vụ khách hàng doanh nghiệp
Quản lý đa tài khoản
Chuyển khoản, thanh toán hoá đơn (gồm cả chuyển tiền hàng loạt)
Duyệt thanh toán/chuyển khoản
Thanh toán lương
Quản lý tiền mặt/dòng tiền
Quản lý liên quan đến thuế
Hạn mức giao dịch
Quản lý tín dụng
Phân quyền
Và các tính năng khác tuỳ cty/ngân hàng mà sẽ có những tính năng khác nhau
Nghiệp vụ về Omni channel
Quản lý kết hợp Mobile Banking và Internet Banking hoặc 1 ứng dụng khác của ngân hàng về một nơi
Nghiệp vụ về Loyalty
Quản lý danh sách sản phẩm và value của sản phẩm
Quản lý cấp/level khách hàng
Link tài khoản loyalty với tài khoản ngân hàng
Quản lý loyalty point/hết hạn/hạn mức min, max
Quản lý khuyến mãi, giảm giá
Quản lý thanh toán qua loyalty point
…
Nghiệp vụ truy vết giao dịch
Thường luồng này là đặt events vào các bước giao dịch, thanh toán để tracking xem trục trặc nằm chỗ nào khi có vấn đề và từ đó có hướng xử lý, hoặc thậm chí hỗ trợ cho việc khắc phục các vấn đề về UX.
Hiểu về luồng Audit
Khi thực hiện xây dựng ứng dụng ngân hàng thì bước Audit khá quan trọng để đảm bảo không bị hack/hoặc sai phạm quy định ngân hàng nhà nước,… do đó BA cùng với Dev tham gia luồng Audit.
Hi vọng với danh sách các nghiệp vụ thường ở các ngân hàng có mà mình liệt kê ở trên sẽ giúp bạn có một cách tổng quan và định hướng tìm hiểu/nghiên cứu để có một kiến thức nghiệp vụ vững chắc cho con đường BA Banking trong tương lai.
Xin chào mọi người, mình là Hoàng BA – làm công việc phân tích nghiệp vụ trong mảng blockchain.
Mình có hơn 2 năm làm các dự án blockchain với vai trò Product Owner, Product Manager cho các dự án về DEX, User Identity, Token Swap, Bridge, Private Chain, SocialFi,…
Với kinh nghiệm làm việc tại các dự án như vậy, mình muốn chia sẻ đến bạn đọc trên blog niviki về tổng quan xây dựng một dự án blockchain thì sẽ qua các bước như thế nào.
Giới thiệu về các dự án mình từng làm
Thật ra thì mình làm thiên về các dự án dùng công nghệ blockchain xây dựng các ứng dụng liên quan đến crypto, hay nhiều bạn nhắc tới là Coin, tiền ảo. Cũng có thời gian trước khi bắt đầu làm liên quan đến crypto thì có làm dự án liên quan đến ngân hàng và dùng công nghệ blockchain để xử lý giao dịch. Nhưng trong phạm vi bài viết này mình sẽ tập trung nói về các dự án liên quan đến thị trường crypto nhé.
Giải thích về các blockchain khác nhau.
Như nhiều bạn tìm hiểu thì biết blockchain là gì đúng không?
Blockchain là một công nghệ lưu trữ và truyền thông tin kiểu khối dữ liệu, và nó được mã hoá, phân tán. Thường thì những giao dịch xảy ra trên blockchain, sẽ được lưu trữ vào block, và nối với nhau tạo thành chuỗi => vì lý do đó mà nó minh bạch, không thể thay đổi, không giống như database có thể vào sửa cập nhật lại dữ liệu, mà đây chỉ có thể ghi dữ liệu mới vào một block mới khi cập nhật dữ liệu, dữ liệu cũ vẫn còn nằm trên block cũ.
Và dựa vào công nghệ này thì sẽ giải quyết được nhiều bài toán, trong các dự án ngoài crypto thì có thể áp dụng cho các hoạt động như ngân hàng, bảo hiểm, giáo dục,… vì nó khá bảo mật, minh bạch, giảm thiểu rủi ro bị tấn công.
Còn trong crypto, dựa vào ứng dụng của blockchain, người tay xây dựng ra nhiều chain khác nhau với các mục đích khác nhau, điển hình như:
Bitcoin Blockchain: Đây là blockchain đầu tiên và nổi tiếng nhất, phục vụ chủ yếu cho việc giao dịch tiền điện tử Bitcoin. Điểm nổi bật là tính bảo mật cao và sự đơn giản.
Ethereum (và EVM – Ethereum Virtual Machine): Ngoài việc hỗ trợ tiền điện tử (Ether), Ethereum còn cho phép tạo và vận hành các ứng dụng phi tập trung (dApps) thông qua hợp đồng thông minh (smart contracts). EVM là môi trường ảo cho phép thực thi hợp đồng thông minh trên Ethereum.
Binance Smart Chain (BSC/BNB Chain): Tương thích với EVM và hỗ trợ hợp đồng thông minh, BSC nổi bật với tốc độ giao dịch nhanh và chi phí thấp, thu hút nhiều dự án DeFi và NFT.
Solana: Một blockchain hiệu suất cao với thời gian xử lý giao dịch nhanh và chi phí thấp, phù hợp cho các ứng dụng cần tốc độ và quy mô lớn. Và không thuộc hệ EVM, không tương thích với EVM.
Cosmos: Hệ thống này cho phép các blockchain khác nhau hoạt động độc lập nhưng vẫn có thể giao tiếp với nhau thông qua giao thức IBC (Inter-Blockchain Communication).
… và nhiều blockchain khác nhau.
Vì nó là các hệ blockchain khác nhau, nên có thể những ứng dụng trên chain này không thể sử dụng trên chain kia, cũng như các token/coin ở chain này cần phải bridge (bắt cầu) qua chain kia để có thể sử dụng.
Kiểu như ứng dụng native xây trên iOS không thể sử dụng trên Android được vì nó sử dụng thư viện, API khác nhau. Tương tự đó trên các blockchain khác nhau đều có một “hệ điều hành” riêng biệt, với quy tắc riêng, do đó mà ứng dụng chạy trên blockchain cụ thể không thể chạy trực tiếp trên một blockchain khác mà không có sự điều chỉnh, hoặc viết lại để phù hợp với quy tắc của môi trường mới.
Nhưng với hệ EVM (ETH, BSC, Polygon…) thì đỡ hơn, nó có một hệ tiêu chuẩn riêng, và các chain khác nhau khi build trên EVM sẽ dễ tương thích với các ứng dụng viết bằng smart contract trên hệ EVM, nhờ đó có thể tái sử dụng code của ứng dụng này trên chain EVM A để sử dụng và build lại trên EVM B.
Các bước làm một dự án blockchain
Bước 1: Ý tưởng và xác định nhu cầu, thị trường.
Về ý tưởng:
Ở mảng crypto thì có rất nhiều blockchain mới được xây dựng ra, và thường phân ra hệ EVM, Non-EVM (Cosmos, Solana, MoveVM, ..). Và các dự án mình sẽ chia làm 3 nhóm.
1. Nhóm dự án sẽ build lại một sản phẩm đã có trên chain khác, nhưng chưa có trên chain mới hoặc có nhưng chưa đủ xịn xò nên build cho có sản phẩm xịn như trên chain khác và 2 chain đang nói tới cùng một hệ (kiểu như cùng là hệ EVM, cùng là hệ Cosmos,…).
Ví dụ: Bên chain Binance Smart Chain thuộc EVM có ứng dụng PancakeSwap (DEX), và có 1 chain mới xây trên EVM, chain này chưa có DEX nào thì có thể clone code từ bên PancakeSwap và chỉnh sửa lại cho tương thích với chain mới xây.
2. Cũng như nhóm 1, nhưng ứng dụng cần xây dựng lại khác hệ
Ví dụ: Có ứng dụng A trên chain Solana, và có xây 1 chain mới trên hệ Cosmos – tất cả những chain sử dụng hệ Cosmos lại không có ứng dụng A như trên Solana => Phải tự code từ đầu vì cấu trúc lõi/công nghệ của blockchain khác nhau.
3. Nhóm dự án với ý tưởng mới hoàn toàn, không giống những sản phẩm đã hiện diện trên thị trường.
Thì cần phải nghiên cứu thị trường kỹ, phân tích tính năng mới từ đầu.
Thì với 3 nhóm trên:
Nếu có clone code được thì sẽ clone, và cố gắng build được MVP chạy tương ứng và giống với những sản phẩm có sẵn, sau đó mới nghĩ ra tính năng mới gắn thêm
Nếu là khác hệ thì có thể mượn các tính năng đã hoạt động, rồi đánh giá tính năng nào phù hợp trên chain đang build để có thể sao chép và code ra ứng dụng tương tự.
Còn nếu ý tưởng mới thì cần phân tích dài hơi hơn, cũng như cần định nghĩa lại logic từ đầu.
Về xác định nhu cầu và thị trường:
Thường các ứng dụng sao chép là đã hoạt động tốt trên một chain nào đó, lượng user và có thể là doanh thu đạt được một mức tốt nên mình sẽ đánh giá nhu cầu ở chain mình đang build có tương tự như chain mình sao chép không? => Đánh giá và đưa ra những tính năng phù hợp để xây dựng, target audience.
Còn với ứng dụng hoàn toàn mới thì khá giống với build các sản phẩm thông thường, phải thực hiện bước research, đánh giá các đối thủ cạnh tranh, nhóm đối tượng khách hàng hướng tới và nhiều bước khác để đưa ra được nhận định đúng cũng như xây dựng nên bộ tính năng cần thiết và phù hợp.
Bước 2: Lập kế hoạch và thiết kế sản phẩm:
Với nhóm 1 và nhóm 2 thường chỉ sao chép và đánh giá lại tính năng, sau đó sẽ lên kế hoạch để xây dựng sản phẩm như trong bao lâu xong, các bước từ phân tích, thiết kế giao diện, trải nghiệm người dùng, …
Thường thì nếu nhóm 1 là sẽ tập trung thời gian vào giao diện và branding, vì phần cốt lõi đã có thể clone.
Nhóm thứ 2 thì thêm bước code lại Smart Contract, BE nên cần nhiều thời gian hơn, nhưng giảm bớt bước phân tích logic vì đã có ứng dụng chạy sẵn và mình có thể được đọc code để sao chép logic.
Còn với nhóm số 3, phải đi từng bước 1 từ đánh giá, khảo sát, khơi gợi và cuối cùng chốt danh sách tính năng, sau đó sẽ phân tích và xây dựng logic, cấu trúc hệ thống, thiết kế luồng hoạt động, UI/UX,….
Bước 3: Phát triển ứng dụng
Sau khi đã phân tích, tuỳ theo đội ngũ của bạn đang theo mô hình waterfall hay Agile thì có thể tuỳ cách mà có process phù hợp, thường bước này kết hợp code, tích hợp module để build ra sản phẩm.
Trong thời gian đó có thể thay đổi lại luồng, chỉnh sửa tính năng cho phù hợp với ứng dụng thực tế.
Bước 4: Kiểm thử
Khi xây dựng ứng dụng trên blockchain, bước kiểm thử rất quan trọng, vì tránh xảy ra lỗi cho người dùng, kiểm tra các trường hợp chống bị hack,…
Đặc biệt là cần phải Audit code của smart contract để tránh dự án bị hack mất tiền trong các pool (chứa tiền) của người dùng, bước này cần liên hệ với các công ty về bảo mật và audit code cho smart contract (giá khá cao) => Các code mà clone từ những dự án uy tín, chưa bị hack có thể không cần audit vì code đó đã được audit trước đó rồi.
Thường thì ứng dụng sẽ chạy trên môi trường testnet hoặc devnet (kiểu như staging/testing env/sandbox env trên xây dựng ứng dụng thông thường), cho người dùng vào dùng thử trước khi cho sản phẩm chạy thực tế.
Bước 5: Kiểm tra liên quan đến pháp luật, chính sách
Thường các ứng dụng blockchain mà xây không cẩn thận dễ bị vi phạm hay liên quan đến pháp luật, nên các sản phẩm này phải được đánh giá xuyên suốt từ lúc bắt đầu ra ý tưởng đến khi triển khai sản phẩm ra thị trường.
Bước 6: Marketing và triển khai dự án.
Ở blockchain thì các ứng dụng cần marketing rộng rãi để người dùng tham gia sử dụng, đôi lúc cần phải có các chiến dịch như airdrop, tặng reward cho user vào sử dụng ở thời điểm ban đầu. Thường là xây dựng các kênh telegram, twitter để truyền thông hoặc kết hợp với bên thứ 3 hỗ trợ cho việc truyền thông và triển khai.
Thường các dự án mình làm thì bước truyền thông được lên kế hoạch từ khi có ý tưởng, còn triển khai truyền thông khi dự án xây dựng gần xong hoặc lúc ra môi trường testnet cho mọi người sử dụng, và rầm rộ hơn khi thực hiện launch trên môi trường mainnet (giống như golive)
Tại sao nên học làm sản phẩm blockchain?
Với sự phát triển của công nghệ blockchain, đặc biệt với sự phổ biến của crypto tại Việt Nam. Những năm gần đây Việt Nam luôn nằm trong “Top Countries for Cryptocurrency Adoption” – top 1 năm 2022, top 2 năm 2021.
Học cách làm sản phẩm dapp trên blockchain mang lại nhiều lợi ích và cơ hội, đặc biệt trong bối cảnh công nghệ blockchain ngày càng phổ biến.
Tiềm Năng Công Nghệ Mới: Blockchain là một trong những công nghệ mới nhất trong thập kỷ qua.
Nhu cầu thị trường ngày càng tăng, và đang thiếu hụt nhân lực, vì lý do đó mà mức lương tại mảng này đang cao hơn so với những bạn làm công việc liên quan đến IT ngoài Blockchain.
Là cơ hội để tiếp cận công nghệ mới, thị trường mới và có thể có cơ hội phát triển những sản phẩm đột phá, mang lại nhiều lợi nhuận.
Đóng góp vào sự phát triển công nghệ, làm việc với blockchain cho phép bạn góp phần vào sự phát triển của một công nghệ đang thay đổi thế giới.
Có nhiều cơ hội học hỏi và hợp tác với nhiều chuyên gia, đặc biệt khi tham gia sớm bạn thậm chỉ sẽ trở thành một chuyên gia hàng đầu trong lĩnh vực.
Nhưng hiện tại khá nhiều bạn đang khá lo lắng về việc học và hiểu về công nghệ blockchain, không biết có khác gì so với xây dựng sản phẩm phần mềm thông thường, từ đó mà làm chậm quá trình tiếp cận với công nghệ blockchain với nhiều lợi ích, tiềm năng và cơ hội đang chờ đón.
Chính vì lý do đó mà mình có xây dựng khoá học “Nghiệp vụ Blockchain cho Business Analyst” nhằm giúp nhiều bạn đi tắt, tiết kiệm thời gian để hiểu về Blockchain và các sản phẩm trên blockchain và cách xây dựng sản phẩm blockchain.
Kết luận
Vậy là toàn bộ quy trình mà mình hay áp dụng cho việc xây dựng ứng dụng blockchain, về tính tương đồng thì nó khá giống với xây dựng một ứng dụng thông thường khi đều có các bước từ ý tưởng, lập kế hoạch, phát triển, kiểm thử và release.
Nhưng trong các bước lại có đôi chút khác biệt như việc clone code từ ứng dụng có sẵn và cấu hình lại để chạy tương thích với blockchain mới, hay việc tham khảo hoặc bê y nguyên tính năng từ một ứng dụng đã có sẵn về và bỏ bớt qua các bước về nghiên cứu về người dùng. Hoặc là thường phải audit để đảm bảo ứng dụng chạy và tránh né việc bị hack (thường là ứng dụng public).
Về xu hướng tương lai, mình nghĩ blockchain vẫn còn khá mới và khá tiềm năng, hiện tại thì thấy rộng rãi trong việc áp dụng vào thị trường crypto, một vài công ty sử dụng cho các sản phẩm của họ với việc xây dựng private chain nhưng chưa phổ biến. Do đó còn rất nhiều cơ hội tuyệt vời và tiềm năng cho những bạn yêu thích công nghệ tham gia vào thị trường blockchain này.
Hi vọng qua bài blog này sẽ cung cấp cái nhìn toàn diện về quá trình phát triển một sản phẩm blockchain, từ ý tưởng ban đầu đến khi triển khai sản phẩm trên thị trường.