Phỏng vấn tác giả Proxyman: Cách để side project trở thành full-time business

Share on facebook
Share on google
Share on twitter
Share on linkedin

Để giải quyết vấn đề các nhân gặp phải trong lúc làm việc. Với đam mê và theo đuổi của mình; Nghĩa Trần đã bắt đầu từ một pet product sau đó xây dựng thành một sản phẩm chuyên nghiệp Proxyman; thu hút được hàng nghìn người dùng trên khắp thế giới; và đem lại nguồn doanh thu khổng lồ.

Dưới đây, là chia sẻ từ vô cùng thú vị với những kiến thức của nghĩa trong quá trình khi xây dựng và phát triển Proxyman của Nghĩa

Mục Lục show

Người phỏng vấn: Xin chào Nghĩa, cảm ơn Nghĩa đã nhận lời mời phỏng vấn hôm nay. Nghĩa có thể giới thiệu qua một chút về bản thân; cũng như về Proxyman với các độc giả được không?

Xin chào! Mình là Nghĩa Trần. Hiện tại đang là macOS Developer ở Toggl.com

Cơ bản ý tưởng về Proxyman, đơn giản là giúp mình giải quyết những ức chế khi xài Charles Proxy mà mình “phải”, “bị” xài hằng ngày trong lúc mình còn ở Zalora Vietnam.

  • Nếu như đã từng xài Charles Proxy, Wiewshark hay Fiddler để bắt được HTTPS/HTTP traffic từ MacBook hay IPhone để debug dễ dàng thì chắc chắn bạn sẽ biết Proxyman là gì.
  • Còn chưa thì Proxyman chính là một HTTP Debugging Proxy app, dùng để  dùng dễ capture / intercept / manipulate HTTP / HTTPS requests / response từ macOS; iPhone, Android và cả Simulator.

Về selling-point của Proxyman là:

  • Native macOS app
  • Đầy đủ features như Charles Proxy (Hopefully)
  • Dễ xài, không cần Google để setup certificates.
  • Và phải nhanh; vì ai cũng muốn nhanh nên app phải nhanh
Proxyman là gì? – Phỏng vấn tác giả Proxyman

Người phỏng vấn: Bạn build Proxyman lâu không? Trước Proxyman thì bạn đã có product nào nữa không? Bạn làm một mình hay cùng team?

Proxyman là duy nhất pet product mà mình theo đuổi lâu nhất; với hơn 1 năm và mình vẫn chưa có ý định chán.

Version Prototype đầu tiền của Proxyman ra mắt vào ngày 3 tháng 8 năm 2018; và bản Stable gần nhất là Proxyman 1.7.2 được ra mắt ngày 25 tháng 10 năm 2019. Với tổng cộng có 46 releases.

Và ngày launch app bất ngờ trên Product Hunt chính la hôm 32 tháng 3, 2019. Do một bàn nào đó tự post và tag mình vào; thế nên phải cuốn theo chiều gió và coi như đó là hôm lauch chính thức; mặc dù vẫn định delay thêm vài tháng để có thời gian fix thêm một mớ bugs.

Còn Launch trên Setapp là ngày 1 tháng 1, 2019. CÙng là ngày lauch cái licensing system.

Trước Proxyman thì mình có build vài producy chơi thôi; chủ yếu là học code macOS. Như là:

Nhưng cả 2 project cũng đã stop. Vì Uber không còn làm hoạt động ở Việt Nam. Và Artify cũng đã gần xong.

Proxyman thì mình là người build từ những ngày đầu. Và hiện tại có thêm bạn gái mình tham gia viết blog; và đảm nhiệm phần users acquisition. Huy – TablePlus là co-founder có giúp mình thêm về business insight phần users và SaaS product.

Người phỏng vấn: Về pricing model thì bạn dựa vào đâu để định mức giá? Và về distribute nó trên Setapp có khiến bạn thay đổi gì về pricing không?

Về Pricing thì mình đã tham khảo đối thủ chính của Proxyman là:

  • Charles Proxy (https://www.charlesproxy.com)
  • Và một số apps (Sketch, NSSurge, TablePlus, Postico) có customer chủ yếu là individual / SMEs.

Giá License thường sẽ tầm $49/ năm. Nên mình đã chọn mức này. Fun fact thì với giá $49, thì mình cũng bị một vài users complain là quá mắc, mà feature lại chưa dược đầy đủ. Nhưng kệ, cứ ra feature và giữ standard cao.

Ngoài ra, cũng có nhiều đối thủ cộm cán như là Wiresharke, Fiddler, Debookee … tuy nhiên khách hàng chủ yếu là enterprise.

Về việc distribute lên Setapp sẽ không ảnh hưởng tới mức licende hiện tại. Vì 80% users của mình không xài Setapp. Và User vẫn thích mua license được support trước tiếp từ mình khi bug; hay feature request. Mục đích của việc distribute lên Setapp là giúp cho tăng tốc độ trust của Proxyman.

Người phỏng vấn: Bạn có chạy Ads hay marketing gì cho `Proxyman không? Hay để Proxyman hữu xạ tự nhiên hương?

Hiện tịa thì mình không run Ads. Tất cả chi phí cho ads hay dành cho marketing là 0. Tất cả điều nhờ vào “word of mouth”.

Approach này sẽ có thể chậm lúc ban đầu; nhưng khá hiệu quả để build trust của users. Vì thường, người dùng thích xài app khi bạn bè giới thiệu hơn là thấy app trên Ads. Với cách này cũng dẽ convert một user thành loyaty user (purchased license, cuồng app, tweet Proxyman và khoe với mọi người). Họ đã thành những local influencers; và Proxyman cũng từ từ được biết đến.

Ngoài ra thì mình cũng chú trọng đến blogs; và trả lời nhiều câu hỏi có liên quan đến SSL Proxyling, debugging trên StackOverflow,… và có link lại Proxyman.

Ngoài ra, mình có 1 chiến thuật khác để acquire users; đó là quick responsiveness. Mình sẽ support trong vòng 1-2 tiếng. Nếu user report 1 bug trên Github, Gitter, Twitter; thì mình sẽ fix và gửi bản hotfix ngay lập tức cho user. Cách này đem lại hiệu quả ở giai đoạn đầu của product; vì chứng tỏ product của mình rất active; có hotfix build thì user nó có thể tiếp tục job của nó mà mình không cần phải đợi qua tuần sau bản Stable release.

Kết quả là có rất nhiều users appreciated; và họ rất thích được chat cùng với founder của products. Chắc do học cũng painful khi Charles Proxy (product họ đang xài) không có kênh chính thức nào để support họ. Và cũng có kha khá user mua liccense để cảm ơn khi mình support họ.

Tất cả những việc trên giúp mình acquire nhiều users hơn; và cũng là go-to-market strategies của Proxyman hiện tại.

Người phỏng vấn: Về revenue hiện tại thì như nào? Nếu tiện thì Nghĩa có thể chia sẻ một tí được không?

Revenue hiện tại thì tầm “chưa đến $5K MRR” từ License và Setapp. Cũng không quá nhiều so với những app SaaS khác; những cũng đủ cho thời điểm hiện tại.

Plan của Proxyman sẽ là long term; nên mình sẽ tin là Proxyman sẽ bump lên được trong vài năm tới. Thực tế là, Charkes Proxy cũng mất đến 15 năm mới có thể lên được vị trí như bây giờ; và Charles Proxy team chỉ có 1 người duy nhất.

Người phỏng vấn: Khi build sản phẩm này thì bạn có từng cân nhắc chuyện có nên open source nó for free và kiếm tiền từ nó hay không?

Kha khá user email cho mình về việc Open Source; tuy nhiên mình không cân nhắc approach này; trong thời điểm hiện tại. ( Cả founder của Insomnia cũng khuyên mình OSS)

Thực ra thì mục đích đầu tiên của Proxyman là thử sức với những technical challenges mới. Mình có vài năm code iOS, cơ bản công việc vẫn chỉ là social apps; app listing, mọi thứ đã có sẵn; và điều này khiến mình cảm thấy rất boring.

Charles Proxy thì không có alternative nào và có rất nhiều người đang tìm alternative; nhưng bất lực, nên mình nghĩ có thể đây là cơ hội để mình disrupt; kiểu Trello vs Jira 

Mình cũng cân nhắc chuyện bán license. Vì đó là cách để thuyết phục users là Author của Proxyman là nghiêm túc trong việc làm product.

OSS sợ mọi người thấy code dỏm, user bỏ đi 

Người phỏng vấn: Nói về technical challenges. Nghĩa có thể chia sẻ thêm về những challenge mà bạn đã gặp phải trong quá trình làm Proxyman được không?

Một vài challenges trong Proxyman là:

  • Build 1 app macOS native, developer tool.
  • Sao để buit được Intuitive UI? Không cần train vẫn mà naive users vẫn có thể xem được HTTPS Response? – In fact, những ngày đầu mình xài Charles Proxy và Wireshark, thì gần như user phải biết mình phải làm gì, 90% (cả mình) cũng phải google cách sử dụng. Xài app mà cũng phải google cách xài LOL.
  • Làm sao build được 1 cái Proxy server? Hay làm sao parse được Raw HTTP Message?
  • Làm sao biết được request đó đi ra từ client nào?
  • Sao để xem được HTTP Response? Cả HTTPS?
  • Làm sao trở thành MitM app, và không bị client reject the certificates?
  • Làm sao generate chain certificate on the fly?
  • SSL Handshake?
  • Làm sao xem được requests từ iPhone, iOS Simulator và Android?
  • Làm sao implement được “Privileged Helper Tool” để override system HTTP/HTTPS Proxy trên macOS?
  • WebSocket debugging, Advanced features (Local Map, Breakpoint, External Proxy, Network Throttling, …)?
  • Và rất rất nhiều thứ mình không có cơ hội làm nếu là iOS dev 

Tóm lại, code developer tool nó phải có nhiều challenges và hẳn là fun hơn.

Người phỏng vấn: Khi quyết định hướng kiếm tiền từ nó, Nghĩa có từng phải cân nhắc giữa chuyện “bao nhiêu là đủ” cho việc xài free và bản trả phí không? Bạn có nghĩ tới chuyện sẽ bị user nó abuse cái free trial không?

Mình cũng cân nhắc rất nhiều về Business Model cho Proxyman: Premium, Freemium hay Trial.

Cuối cùng thì mình chọn Freemium. Cơ bản tất cả features (basic và advanced features) điều free; và có thể xài thoải mái để hoàn thành công việc hơn là phải mua license trước.

Bản Paid Proxyman chỉ unlock một vài cái cơ bản như Multiple-Tabs; số pin item, số rule trong Local Map, Breakpoint, …

Mục đích là để users dù xài bản free, vẫn có thể hoàn thành công việc của họ mà không có bất kỳ cản trở nào. Khi họ enjoy, làm được việc; thì họ sẽ thích app và mua license. Hạn chế việc làm user cảm thấy ức chế khi xài.

Một vài ví dụ, Charles Proxy bản free sẽ tự kill cái session trong 30p; nghĩa là sau 30p, sẽ mất hết rất ức chế.

Kha khá users mua app ngày từ đầu, vì họ vui mừng tìm được 1 app thay thế Charles Proxy mà họ đã xài một cách “chịu đựng” vài năm.

Người phỏng vấn: Với kinh nghiệm từ Proxyman, thì Nghĩa đánh giá tỉ lệ giữa free user và paid user là như nào? Và conversion rate ở đây như nào? Thị trường nào có tỉ lệ paid user cao nhất? Và so với thị trường VN thì sao?

Convert rate của Proxyman hiện tại là 1-2%. US và EU là 2 thị trường có user mua nhiều nhất. VN và ASIA nói chung chỉ có free users, không có paid users hiện tại.

Proxyman có khoảng 4k monthly users và khoảng 250-350 daily user. Returned user sẽ là ~80% users. US + EU chiếm khoảng 95%, còn lại China và một chút từ Southern-ASIA.

Kinh nghiệm xây dựng Proxyman

Người phỏng vấn: Có vài điểm mình để ý là Nghĩa có đề cập đến trong quá trình build và marketing cho Proxyman, nghe có vẻ khá thú vị và mình muốn đào sâu vào khía cạnh này một tí như việc: Làm thế nào để build được intuitive UI, hay như việc tập trung quảng bá bằng cách educate người dùng thông qua blog, hay trả lời câu hỏi trên StackOverflow. Nghĩa có thể chia sẻ về con đường mà bạn đã trải qua để có được những kinh nghiệm này được không?

Để trả lời được câu hỏi làm sao build được intuitive UI thì rất khó để trả lời, vì nó không có câu trả lời cuối cùng nào cả:

  • Mình chỉ xài nhiều modern native app như: TablePlus, Dropbox, Paw, Sublime, … và hiểu được cái Common-sense của những app native đó. Nó cũng giống như việc để design một app iOS thì cách đơn giản nhất là download nhiều features iOS app trên AppStore và xài hằng ngày. Về lâu dài gì mình sẽ hiệu được kha khá common-sense và biết được trend hiện tại.
  • Đọc Human Interface Guidelines của platform mà mình đang build. Ở macOS là https://developer.apple.com/design/human-interface-guidelines/macos/overview/themes/
  • Có 1 người high standard ở cạnh và debate về UI.
  • Những feature nào users xài nhiều nhất thì mình để ra toolbar, còn lại sẽ được hide trong Context Menu. Để users không bị choáng nếu app mình có quá nhiều buttons. Lấy ví dụ một số app theo style Windows như Pycharm, Wireshare,… sẽ có rất nhiều feature và buttons trên toolbars.
  • UI Đơn giản là quan trọng nhất.
  • Và may mắn?

Bởi vì plan của Proxyman là không dùng Ads nên cách duy nhất để reachout tới users là thông qua nhưng channels như Blog; StackOverFlow, Reddit, … Trả lời giúp mấy bạn đang bí trên StackOverflow và offer họ 1 solution tốt hơn là cách mà mình đang áp dụng.

Người phỏng vấn: Có một vấn đề mà mình và nhiều người khác cũng hay gặp phải, đó là việc giữ cho bản thân mình tập trung và có thêm động lực trong quá trình build ý tưởng của mình thành một sản phẩm hoàn chỉnh, nhất là khi gặp phải những trở ngại trong quá trình build, nó khiến chúng ta rất dễ nản chí và thậm chí là bỏ cuộc. Nghĩa nghĩ sao về điều này? Chắc bạn cũng đã từng gặp vấn đề này trong quá trình làm Proxyman?

Việc này là điều hiển nhiên nếu bạn build SaaS product và việc duy nhất có thể làm được là chấp nhận và tiếp tục làm.

Ko có silver-bullet cho việc này. Tất cả chỉ là từ phía bạn và chỉ là bạn có muốn tiếp tục hay ko?

Mình nhớ có tới 3 giai đoạn mình cũng rơi vào thế bí toàn cục khi làm Proxyman. Ví dụ:

  • Làm sao build được native Proxyman Core (MitM); và có thể xem được HTTPS Request/Response?
  • Làm sao làm được Local Map hay Breakpoint feature? Mà có thể can thiệp và chỉnh được Message on-the-fly?
  • Làm sao design được UI vừa đẹp mà cũng vừa dễ xài?

Để trả lời được mấy câu hỏi trên thì mình cũng phải làm 3-4 prototype versions cho từng vấn đề. Google đủ kiểu, đọc OSS, và code prototype. Bí quá thì tìm cách khác hoặc đi hỏi bạn bè.

Ngoài ra mình còn 1 lời khuyên là nên build MVP version cho từng feature. Đừng bao giờ expect là mình có thể làm 100% feature rồi mới release vì sẽ rất lâu, và cũng không có cái gọi là 100% hoàn hảo.

MVP version, log lại hành trình của mình lên Twitter; và làm hài lòng một nhóm nhỏ user trước khi tiếp tục code tiếp v2 là cách dễ dàng nhất để có thêm động lực làm tiếp. Vì user họ khoái, và họ support mình.

  • UI hiện tại mình là version 4. Tạm coi là được nhưng mình đang improve v5 cho phần Filter bar.
  • Proxyman core của mình cũng là 3 version, hiện tại khá stable.

Người phỏng vấn: Có rất nhiều bạn độc giả cũng gửi mail và message cho mình rằng họ rất quan tâm đến việc tự phát triển và phát hành sản phẩm, như những gì mà Nghĩa đã làm với Proxyman. Là một người đi trước và cũng nếm trải đủ nhiều, Nghĩa có lời khuyên gì cho các bạn không?

Mình cũng không chắc là lời khuyên của mình có phù hợp với mọi người hay ko. Nhưng đây là những gì mình đã và đang làm:

  • Nếu mục tiêu của product là học hỏi, thử nghiệm framework, language mới thì bạn có thề start từ ngay bây giờ. Open Source, và nếu được bạn có thể viết blog kể về journey của bạn. Hướng đi này rất hay vì bạn có thể build được reputation cho chính bạn, vừa có cả quality product để apply job sau này.
  • Nếu muốn build một product nghiêm túc thì theo mình tìm cái pain point và validate cái idea này ở global market ngày từ những ngày đầu tiên.

Có rất nhiều cách reach tới global market là bạn publish app lên Product Hunt, Reddit, Hackernews, Markerlog hoặc một kênh distributions nào đó như Setapp.

Twitter + Github làm channel chính mà make connection với những authors khác. Ví dụ Insomnia, NativeConnect, Chime, …

Rất cảm ơn Nghĩa đã dành thời gian tham gia cuộc phỏng vấn này. Chúc Nghĩa sẽ ngày càng thành công hơn nữa với Proxyman cũng như với các sản phẩm của Nghĩa trong tương lai nhé

MC Chung

Booking.com
Klook.com
Booking.com