คิดใหญ่ เรียนรู้เร็ว และฟัง: บทเรียนของฉันจากการสร้างผลิตภัณฑ์ SaaS ของ WordPress

เผยแพร่แล้ว: 2017-04-19

หนึ่งปีครึ่งที่แล้วเมื่อฉันเริ่มคิดว่าโครงการต่อไปของฉันจะเป็นอย่างไร ฉันไม่สามารถจินตนาการถึงความสำเร็จที่จะเกิดขึ้นได้ แม้ว่ามันอาจจะดูเล็กน้อยสำหรับบางคน แต่การทำให้ใครก็ตามที่เชื่อมั่นในผลิตภัณฑ์ของคุณมากพอเพื่อจ่ายเงินให้กับคุณ ถือเป็นความสำเร็จ อันยิ่งใหญ่ ที่คุณควรภาคภูมิใจ

มันไม่ง่ายเลย ต้องใช้ความทุ่มเท ทำงานหนัก และโชคดีในการได้ลูกค้ารายแรกของคุณ ดังที่เล่าจื๊อกล่าวว่า “ การเดินทางนับพันไมล์ เริ่มต้นด้วยก้าวเดียว

ระบุปัญหา

ก่อนที่คุณจะสร้างธุรกิจได้ คุณต้องมีผลิตภัณฑ์ ก่อนที่คุณจะสร้างผลิตภัณฑ์ คุณต้องมีปัญหา การค้นหาปัญหาที่ต้องแก้ไขอาจเป็นส่วนที่ยากที่สุดในการเดินทางของคุณ ดังนั้นจงใช้เวลากับมัน คุณเคยคิดบ้างไหม:

“ฉันหวังว่าจะมี <สิ่ง> สำหรับ <ปัญหา>”?

หากคุณมี คนอื่นๆ ก็น่าจะมีเช่นกัน นี่เป็นจุดเริ่มต้นที่ดีในการเริ่มต้นสำรวจแนวคิดผลิตภัณฑ์ของคุณ

สำรวจไอเดียผลิตภัณฑ์

สิ่งหนึ่งที่ฉันได้เรียนรู้จากผลิตภัณฑ์ที่ล้มเหลวมากมายของฉันคือ หากคุณต้องการประสบความสำเร็จ มันช่วยได้ มาก ถ้าคุณกำลังแก้ปัญหาที่คุณมี ย้อนกลับไปเมื่อตอนที่ฉันยังเป็นนักพัฒนา WordPress อิสระ ฉันมักจะพบปัญหาในการอัปเดตธีมและปลั๊กอินบนโฮสต์ไคลเอ็นต์ มันเป็นเรื่องใหญ่ที่ต้องทำ ดังนั้นฉันคิดว่าความสามารถในการเชื่อมต่อกับระบบอัปเดต WordPress จะทำให้ชีวิตง่ายขึ้นมาก Kernl เกิดจากปัญหานี้และได้ก่อตัวเป็นแกนกลางของผลิตภัณฑ์

ที่แกนหลักของ Kernl ฉันต้องการให้เป็นผลิตภัณฑ์ WordPress SaaS ที่ใช้งานง่าย ความสงสัยของฉันคือผู้คนไม่ต้องการเรียกใช้โครงสร้างพื้นฐานการอัพเดทของตนเองและยินดีจ่ายสำหรับผู้ให้บริการที่เชื่อถือได้ ลูกค้าจะต้องอัปโหลดไฟล์ ZIP ของปลั๊กอินหรือธีมเท่านั้น ที่เหลือเราจะจัดการให้ การรักษาขอบเขตผลิตภัณฑ์หลักไว้อย่างแน่นหนาช่วยให้ฉันมุ่งเน้นที่การส่งมอบคุณค่าได้อย่างแท้จริง

การมีผู้เล่นที่มีอยู่ในพื้นที่ปัญหาของคุณทำหน้าที่เป็นการตรวจสอบปัญหาทวีต

ในหัวข้อการระบุปัญหา ฉันต้องการใช้เวลาสักครู่เพื่อพูดคุยเกี่ยวกับขนาดของตลาด เพียงเพราะมีคนสร้างผลิตภัณฑ์ที่แก้ปัญหาของคุณได้แล้ว ไม่ได้หมายความว่าไม่มีที่ว่างสำหรับวิธีแก้ปัญหาของคุณเช่นกัน หากคุณสามารถทำในสิ่งที่พวกเขาทำได้ดีกว่าและสร้างความแตกต่างให้กับตัวเอง คุณจะได้ลูกค้า เป็นที่น่าสังเกตว่าการมีผู้เล่นที่มีอยู่ในพื้นที่ปัญหาของคุณทำหน้าที่เป็นการตรวจสอบปัญหา

เริ่มเล็ก คิดใหญ่ แต่จบเสมอ

คุณมักจะได้ยินคนพูดถึง “วิธีการเริ่มต้นแบบลีน” ในชุมชนของเรา ผู้คนมักจะเลือกและเลือกว่าพวกเขาจะติดตามส่วนใดบ้างของการเริ่มต้นแบบลีน และฉันก็ไม่มีข้อยกเว้น ฉันไม่ได้ทำตามอย่างแน่นอน แต่สิ่งหนึ่งที่ฉันแน่ใจว่าจะทำคือกลั่น Kernl ให้เป็นชิ้นที่เล็กที่สุดที่สามารถจัดส่งได้ก่อนที่ฉันจะเริ่มทำงาน

การก้าวข้ามเส้นชัยเพื่อเพิ่มระดับใด ๆ อาจเป็นเรื่องยุ่งยาก โดยเฉพาะอย่างยิ่งหากคุณกำลังทำสิ่งนี้ในเวลาว่าง สิ่งหนึ่งที่ต้องจำไว้คือ ทำซ้ำได้ เมื่อฉันส่ง Kernl ที่เพิ่มครั้งแรก มันไม่สมบูรณ์แบบ แต่มันทำในสิ่งที่ฉันบอกว่าจะทำ: ให้ปลั๊กอินส่วนตัวและการอัปเดตธีม ตลอดการเพิ่มครั้งแรก ฉันได้เก็บสิ่งที่ค้างอยู่ซึ่งยังคงต้องทำเพื่อให้เสร็จ มันให้ความรู้สึกราวกับว่ามันเติบโตขึ้นเรื่อยๆ และนั่นก็ไม่ใช่สิ่งเลวร้าย มีหลายสิ่งที่ต้องทำมากกว่าเสมอ แต่การมุ่งเน้นคือสิ่งที่ขับเคลื่อนผลิตภัณฑ์ไปข้างหน้า

ครั้งหนึ่งที่ฉันพยายามเปิดตัว "บิ๊กแบง" สำหรับ Kernl คือความล้มเหลว ฉันพยายามสร้างผลิตภัณฑ์การวิเคราะห์ แต่ทุกอย่างก็ไม่ได้ผล ฉันไม่เชื่อในคุณลักษณะที่ฉันกำลังสร้าง และมันแสดงให้เห็นในความทุ่มเทและแรงจูงใจที่ลดลงของฉัน หลังจากทำงานมาหนึ่งเดือน ฉันลดความสูญเสียและจัดการทุกอย่าง เป็นบทเรียนสำคัญและย้ำเตือนว่าฉันไม่ควรเริ่มทำสิ่งใดหากฉันไม่เต็มใจที่จะเรียนให้จบ น่าเสียดายที่เวลาของฉันไม่ว่าง และยังมีอย่างอื่นที่ร้องขออยู่เสมอ

“โรงจักรยานสีอะไร”

หนึ่งปีที่แล้วเพื่อนร่วมงานแนะนำให้ฉันรู้จักกับคำว่า "bikeshedding" Bikeshedding เป็นคำที่ประกาศเกียรติคุณให้เป็นคำอุปมาสำหรับกฎเรื่องเล็กน้อยของพาร์กินสัน เรื่องมีอยู่ว่า มีกลุ่มวิศวกรที่ทำงานสร้างโรงไฟฟ้านิวเคลียร์ แต่แทนที่จะใช้เวลาอย่างชาญฉลาดและถกเถียงกันถึงการออกแบบเครื่องปฏิกรณ์ พวกเขากลับเสียเวลาไปกับสีที่รถจักรยานออกไปด้านหน้าโรงไฟฟ้าควรเป็น เป็น.

ในงานประจำวันของฉัน เราจะโยนคำว่า "bikeshedding" เมื่อใดก็ตามที่เราตระหนักว่าเรากำลังถกเถียงกันในหัวข้อที่ไม่สำคัญ หากคำตอบของคำถามไม่สำคัญจริงๆ หรือวิธีแก้ปัญหาที่เสนอมานั้นก็ใช้ได้ ให้เลือกเพียงข้อเดียวแล้วไปต่อ การมีความแน่วแน่เป็นสิ่งสำคัญอย่างยิ่งเมื่อคุณสร้างผลิตภัณฑ์ SaaS ในเวลาว่าง ลูกค้าไม่สนใจจริง ๆ ว่าคุณจะใช้ Node.js หรือ PHP หรือไม่ เพียงแค่เลือกอันใดอันหนึ่งแล้วลงมือทำ

การมีความแน่วแน่เป็นสิ่งสำคัญอย่างยิ่งเมื่อคุณสร้างผลิตภัณฑ์ SaaS ในเวลาว่างทวีต

สำหรับลูกค้า ผลลัพธ์จะเหมือนกัน และคุณได้ประหยัดเวลาเพื่อให้คุณสามารถทำงานกับคุณลักษณะที่ส่งผลโดยตรงต่อลูกค้าของคุณ ไม่ว่ากรณีใด จงตัดสินใจให้แน่วแน่และ อย่าปั่นจักรยาน

เลือกเทคโนโลยีที่ทำให้คุณไปได้เร็ว

ในฐานะนักพัฒนาซอฟต์แวร์ ฉันยินดีที่จะหารือเป็นเวลาหลายชั่วโมงกับทุกคนที่จะรับฟังว่าทำไมฉันจึงเลือกเทคโนโลยี A หรือเทคโนโลยี B แต่เมื่อคุณสร้างผลิตภัณฑ์ มันอาจจะไม่สำคัญ เลือกเทคโนโลยีที่คุณรู้จักดีและลงมือทำ หากคุณสร้างได้เร็ว ก็มักจะเป็นตัวเลือกที่เหมาะสม

ตัวเลือกเทคโนโลยีของฉันกับ Kernl สะท้อนถึงเป้าหมายของฉันสำหรับโครงการ ฉันต้องการสร้างผลิตภัณฑ์ WordPress SaaS ที่ประสบความสำเร็จ และอาจเรียนรู้บางอย่างเกี่ยวกับเทคนิคในกระบวนการ ดังนั้นฉันจึงเลือกสร้าง Kernl ส่วนใหญ่ในเทคโนโลยีที่ฉันเข้าใจ (Node.js สำหรับแบ็กเอนด์ที่มี Angular 1 ที่ส่วนหน้า) ไม่มีเทคโนโลยีเหล่านี้มาขวางทางฉัน และฉันก็ทำงานได้อย่างมีประสิทธิภาพสูงสุด

ภาพหน้าจอของหน้าแรกของ Kernl

อีกสิ่งหนึ่งที่ควรพิจารณาเมื่อคุณกำลังพัฒนาคือหนี้ทางเทคนิค หากคุณกำลังพยายามที่จะเคลื่อนไหวอย่างรวดเร็วและส่งมอบการเพิ่มขึ้นครั้งแรก คุณสามารถรับภาระหนี้ทางเทคนิคได้ เพียงจำไว้ว่าหนี้ทางเทคนิคมีวิธีเลี้ยงดูหัวที่น่าเกลียดเมื่อคุณคาดหวังน้อยที่สุด คาดว่าในอนาคตคุณจะต้องจ่ายเงินคืน ระหว่างช่วงพรีอัลฟาและอัลฟาของ Kernl ฉันได้รับภาระหนี้ด้านเทคนิคจำนวนมากในรูปแบบของกระบวนการปรับใช้ด้วยตนเอง การเรียกกลับนรก โครงสร้างพื้นฐานที่ไม่ดี และไม่มีการทดสอบหน่วยหรือการรวมระบบ ในขณะที่ฉันกำลังหาลูกค้ารายแรกๆ อยู่ ฉันก็โอเคกับมัน แต่เมื่อพวกเขาเริ่มพึ่งพา Kernl แล้ว ฉันต้องจ่ายคืนเพื่อจะได้ให้บริการที่ดีที่สุดแก่พวกเขา

การตลาด WordPress SaaS

การพยายามเป็นนักการตลาดเมื่อคุณเป็นนักพัฒนาซอฟต์แวร์อาจเป็นเรื่องยาก ส่วนตัวแล้วเป็นคนมีความเป็นส่วนตัวสูง ฉันสื่อสารกับผู้อื่นได้ดี แต่ฉันชอบใช้เวลากับตัวเองหรือเพื่อนสนิท/ครอบครัว เมื่อคุณทำการตลาดผลิตภัณฑ์ของคุณ คุณเรียนรู้ที่จะเอาชนะความรู้สึกอึดอัดที่ถูกปฏิเสธ ไม่ใช่ทุกคนที่จะชอบสิ่งที่คุณทำ และคุณต้องจัดการกับมัน

Kernl เริ่มทำการตลาดผ่านโพสต์ “Show Hacker News” และโพสต์บางส่วนใน Reddit หลังจากนั้น ฉันเริ่มค้นหา Twitter เพื่อหาคำหลักที่เกี่ยวข้องและโต้ตอบกับผู้คนโดยตรง กระบวนการนี้ใช้แรงงานคนมากและใช้แรงงานมาก แต่ก็ได้ผลดีพอที่จะได้ลูกค้าที่จ่ายเงินเพียงไม่กี่ราย

บางครั้งการเริ่มต้นผลิตภัณฑ์ก็ต้องใช้โชคเล็กน้อยเช่นกัน ในขณะนั้น ฉันกำลังเปิดตัว Kernl คู่แข่งหลักของฉัน (การอัปเดต WP) ถูกขายไปในข้อตกลงที่คลุมเครือกับบุคคลที่สาม ชุมชนผู้ใช้ของพวกเขาไม่พอใจกับสิ่งนี้ และยิ่งกว่านั้นเมื่อบริการของพวกเขาหยุดทำงานและไม่กลับมาอีกเป็นเวลาหลายวัน เมื่อรู้ว่ามีโอกาสมาเคาะประตูบ้านฉัน ฉันจึงเริ่มทวีตถึงทุกคนที่บ่น นี่คือการไหลเข้าของลูกค้าที่ดีที่สุดที่ฉันเคยได้รับ คนเหล่านี้ต้องการผลิตภัณฑ์ที่พวกเขาสามารถพึ่งพาได้ และฉันตั้งใจแน่วแน่ที่จะสร้างผลิตภัณฑ์ดังกล่าวให้ Kernl

ฉันทำผิดพลาดไปบ้างระหว่างทาง ฉันทำการทดสอบกับ Google Adwords บ้าง แต่ดูเหมือนว่าจะไม่มี Conversion ที่ดีเลย หลังจากสองเดือน ฉันหยุดแสดงโฆษณาและตัดสินใจเลือกตัวเลือกอื่น ฉันคิดว่าวิธีที่ดีที่สุดในการทำการตลาด Kernl คือการทำการตลาดผ่านเนื้อหา นี่อาจเป็นได้หลายอย่าง แต่ฉันคิดว่าการมีบล็อกที่ดีพร้อมบทความเฉพาะสำหรับนักพัฒนาของ WordPress จำนวนมากจะช่วยดึงดูดปริมาณการใช้งานและผู้มีโอกาสเป็นลูกค้าให้เข้ามาที่ Kernl

รับฟังลูกค้าของคุณ

สิ่งหนึ่งที่ฉันได้เรียนรู้ตลอดหลายปีที่ผ่านมาคือการตอบสนองต่อลูกค้าเป็นสิ่งสำคัญมาก เมื่อพูดถึง Kernl ฉันตอบสนองได้ดีที่สุดเท่าที่จะทำได้ และดูเหมือนว่าลูกค้าโดยทั่วไปจะชอบมัน ฉันมักจะตอบคำถามทันทีแม้ว่าฉันจะไม่มีคำตอบ เพื่อให้ลูกค้ารู้ว่าปัญหาของพวกเขาได้รับการยอมรับแล้ว

นอกจากการสื่อสารอย่างรวดเร็วแล้ว ฉันยังพยายามให้คำตอบและคำอธิบายโดยละเอียดแก่ลูกค้าของ Kernl ให้บ่อยที่สุดเท่าที่จะทำได้ 95% ของเวลาที่ฉันสื่อสารกับนักพัฒนาซอฟต์แวร์รายหนึ่ง และฉันรู้ว่าถ้าสถานการณ์กลับด้าน ฉันต้องการทราบเพิ่มเติมว่าเหตุใดจึงเกิดขึ้นและสิ่งที่กำลังทำเพื่อแก้ไข บางคนอาจมองว่าเป็นการสื่อสารมากเกินไป แต่ฉันรู้สึกว่าการสื่อสารมากเกินไปดีกว่าการสื่อสารน้อยเกินไป

สิ่งสำคัญที่สุดอย่างหนึ่งที่ฉันได้เรียนรู้จากการพูดคุยกับลูกค้าคือความต้องการความมั่นคง

ฉันตัดสินใจที่จะอุทิศช่วงเบต้าของการเปิดตัว Kernl ทั้งหมดเพื่อความเสถียรและการทำงานอัตโนมัติทวีต

ฐานลูกค้าเริ่มต้นจำนวนมากของ Kernl ได้ย้ายออกจาก WP-Updates เนื่องจากปัญหาการหยุดทำงานที่พวกเขามี และฉันไม่ต้องการให้พวกเขาเริ่มเห็น Kernl ในแง่นั้นหากฉันไม่สามารถให้บริการได้ ด้วยเหตุนี้ ฉันจึงตัดสินใจอุทิศช่วงเบต้าทั้งหมดของการเปิดตัว Kernl ให้มีเสถียรภาพและระบบอัตโนมัติ ไม่มีการเขียนคุณสมบัติใหม่ในช่วง 2-3 เดือนนั้น แต่การปรับโครงสร้างใหม่อย่างหนัก การทดสอบอัตโนมัติ และการปรับปรุงโครงสร้างพื้นฐานทำให้ Kernl เป็นผลิตภัณฑ์ที่ดีกว่าที่เคยเป็นในอัลฟ่าอย่างมาก

ตั้งเป้าหมายที่สมจริง

มีหลายวิธีที่ฉันติดต่อ Kernl ซึ่งแตกต่างจากความพยายามครั้งก่อนในผลิตภัณฑ์ SaaS สิ่งหนึ่งที่ได้ผลที่สุดสำหรับฉันคือการตั้งเป้าหมายที่เป็นจริง ฉันไม่ได้พูดว่า "ฉันต้องการลูกค้า 1,000 รายและรายได้ $50,000 เมื่อสิ้นสุด 3 เดือน" ฉันกำหนดเป้าหมายระยะสั้นว่า "ฉันต้องการพาภรรยาไปทานอาหารเย็นที่ดีเดือนละครั้งโดยใช้เงินจาก Kernl ล้วนๆ" เมื่อบรรลุเป้าหมายนั้นแล้ว ฉันตั้งเป้าหมายที่ใหญ่กว่าเล็กน้อย: "ชำระค่ารถยนต์" + เป้าหมายแรกของฉัน

เป้าหมายระยะสั้น - ชำระค่ารถยนต์

สำหรับฉัน เป้าหมายการตั้งค่าที่อยู่ไกลเกินเอื้อมมีความสำคัญ มันทำให้ฉันมีบางอย่างที่ฉันเชื่อว่าจะทำสำเร็จได้ แน่นอน มีเป้าหมายที่ยิ่งใหญ่กว่าอื่นๆ ที่ฉันมีสำหรับ Kernl (ทำให้ Kernl เป็นงานเต็มเวลาของฉัน) แต่เป้าหมายเหล่านั้นก็ยังอีกยาวไกล คุณต้องมีบางอย่างที่จะพยายามให้ได้ในระยะสั้นหากคุณต้องการมีแรงจูงใจอยู่เสมอ

คิดไปข้างหน้า

เมื่อถึงจุดหนึ่งในการเดินทางของฉันกับ Kernl ในฐานะผลิตภัณฑ์ WordPress SaaS ฉันรู้สึกเหมือนว่าฉันเริ่มชนกับกำแพง บางทีการหาลูกค้าอาจจะยากขึ้น หรือบางทีอาจเป็นเพราะฉันไม่ได้พยายามมากพอ แต่รู้สึกว่า Kernl ต้องการสิ่งใหม่เพื่อรักษาความเกี่ยวข้อง เมื่อฉันเริ่มรู้สึกแบบนั้น ฉันก็เริ่มคิดต่อไปข้างหน้า ฉันถามว่า “มีอะไรที่ฉันสามารถช่วยแนะนำระบบนิเวศของ WordPress ที่มีมูลค่ามากมายได้” และ “แนวคิดนี้สามารถขยาย Kernl ไปไกลกว่าระบบนิเวศของ WordPress ได้หรือไม่”

เป้าหมายเริ่มต้นของ Kernl คือการจัดหาการอัปเดตสำหรับปลั๊กอินและธีม WordPress ส่วนตัว แต่เมื่อ Kernl เติบโตขึ้น ฉันคิดว่าฉันสามารถช่วยนักพัฒนาปรับปรุงเวิร์กโฟลว์การปรับใช้ให้ทันสมัยได้ ตั้งแต่ Kernl เปิดตัว ฉันได้เพิ่มการกดเพื่อปรับใช้ (GitHub, BitBucket, GitLab), การแจ้งเตือน Slack, การแจ้งเตือนเว็บฮุค และอื่นๆ อีกมากมาย แต่ฉันรู้สึกว่าฟีเจอร์ถัดไปต้องใหญ่ขึ้น มากกว่าการโบลต์ออน สิ่งที่แตกต่างอย่างสิ้นเชิง

เป้าหมายใหญ่ต่อไปที่ฉันมีสำหรับ Kernl คือเป้าหมายสูงสุดที่ฉันเคยตั้งไว้: ใช้ Kernl เป็นแพลตฟอร์มสำหรับการตั้งค่าสถานะคุณลักษณะ คุณสามารถค่อยๆ เปิดตัวการทำให้ใช้งานได้ตามเปอร์เซ็นต์ของคน บุคคล หรือทุกคนโดยไม่ต้องทำการปรับใช้ งานเซิร์ฟเวอร์และส่วนหน้าทั้งหมดเสร็จสมบูรณ์ ณ จุดนี้ ดังนั้นฉันจึงลองใช้ผลิตภัณฑ์อย่างช้าๆ เพื่อให้แน่ใจว่าจะปรับขนาดได้ดีและใช้งานง่ายมาก ฉันยังกำหนดเป้าหมายนักพัฒนาทั้งในและนอกระบบนิเวศของ WordPress ซึ่งจะเป็นความท้าทายที่สนุกสนาน

การมีธุรกิจผลิตภัณฑ์หมายความว่าคุณจำเป็นต้องเคลื่อนไหวอยู่เสมอ นาทีที่คุณหยุดสร้างนวัตกรรมคือนาทีที่ผู้เล่นใหม่เข้ามาในพื้นที่และนำลูกค้าของคุณไป