โครงสร้างพื้นฐานที่รวดเร็ว: 5 บทเรียนจากการสร้างอินเตอร์คอมในยุโรป

เผยแพร่แล้ว: 2022-05-06

ในเดือนธันวาคม เราได้ประกาศการโฮสต์ข้อมูลของยุโรป ซึ่งเป็นผลมาจากโครงการโครงสร้างพื้นฐานที่ใหญ่ที่สุดแห่งหนึ่งของ Intercom บทเรียนที่เราได้เรียนรู้ขณะสร้างโครงสร้างพื้นฐานนั้นมีค่ามากในขณะที่เรายังคงขยายระบบอินเตอร์คอมไปทั่วโลก – ในเดือนเมษายน 2022 เรายังโฮสต์อินเตอร์คอมในออสเตรเลียอีกด้วย

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

สิ่งที่เรารู้ – และสิ่งที่เราไม่รู้

เราเริ่มต้นด้วย "สิ่ง ที่รู้จัก" มากมาย ปัญหาที่เรารู้ว่าเราต้องแก้ไข เช่น การปรับใช้ซอฟต์แวร์หลายภูมิภาค เราได้ระบุ " สิ่งที่ไม่รู้จัก" ด้วยเช่นกัน ปัญหาที่เราจำเป็นต้องแก้ไข แต่ยังไม่ทราบว่าเป็นอย่างไร เช่น การรวมภูมิภาคใหม่เข้ากับระบบการเรียกเก็บเงินของเรา นอกจากนี้เรายังแน่ใจว่ามี "สิ่งที่ไม่รู้จัก" มากมายรอการค้นพบ สิ่งที่ไม่ทราบที่ไม่รู้จักเหล่านี้ทำให้ยากต่อการประเมินว่าโครงการจะใช้เวลานานเท่าใด หรือเราจะต้องใช้คนกี่คนเพื่ออุทิศให้กับโครงการ ขอบเขตกว้างเกินไปที่จะเปรียบเทียบกับโครงการหรืองานอื่น ๆ ที่เราเคยทำในอดีต และเส้นทางสู่ความสำเร็จไม่ชัดเจน

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

“เราไม่เต็มใจที่จะชะลอทีม R&D ของเราท่ามกลางการระบาดใหญ่ ดังนั้นเราจึงสร้างแผนโครงการเพื่อสะท้อนวิธีที่เราชอบทำงานที่อินเตอร์คอม”

บางบริษัทไปไกลถึงขั้นจินตนาการถึงสถาปัตยกรรมของพวกเขาในกระบวนการนี้ เราไม่เต็มใจที่จะทำการเปลี่ยนแปลงในระดับนั้นและทำให้ทีมวิจัยและพัฒนาของเราช้าลง (ท่ามกลางการระบาดใหญ่!) ดังนั้นเราจึงสร้างแผนโครงการเพื่อสะท้อนถึงวิธีที่เราชอบทำงานที่อินเตอร์คอม

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

บทเรียน #1: แค่เริ่มสร้าง – เร็ว

การอุทิศตนในการเคลื่อนไหวอย่างรวดเร็วนำเราไปสู่บทเรียนแรก และการ ตัดสินใจ ที่ไขจุดเริ่มต้นของโครงการนี้ได้อย่างแท้จริง ใน พอดคาสต์ Intercom เกี่ยวกับ Product เมื่อเร็ว ๆ นี้ Des ผู้ร่วมก่อตั้งของเราได้พูดคุยเกี่ยวกับ Meme โค้งระฆังแบบเก่าของ Jedi และความถี่ที่สิ่งนี้นำไปใช้กับความเร็วของสตาร์ทอัพ สตาร์ทอัพส่วนใหญ่เดินทางผ่านขั้นตอน "ติดตั้งกระบวนการเพิ่มเติม" จนกระทั่งในที่สุดพวกเขาก็ตระหนักว่าพวกเขาต้องการย้ายให้เร็วที่สุด การใช้ ความเร็วและความเร่งรีบ จะช่วยให้เราค้นหา "สิ่งที่ไม่รู้จัก" เหล่านั้นและค้นหาวิธีแก้ไขเมื่อเราพบ

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

“การได้รับอนุญาตให้ล้มเหลวเปลี่ยนแนวทางของเราไปสู่โครงการ”

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

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

บทที่ #2: ยึดมั่นในหลักการของคุณ

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

“เราไม่ได้แค่คัดลอกและวาง แต่เราย่อขนาดและทำให้ง่ายขึ้น”

เราแทบไม่แนะนำซอฟต์แวร์ บริการ หรือแนวทางใหม่ๆ ในการสร้างยุโรปของเรา ในขณะเดียวกัน เราได้ลดความซับซ้อนของสถาปัตยกรรมของเราอย่างมาก โดยใช้องค์ประกอบของโครงสร้างพื้นฐานของสหรัฐอเมริกาและนำกลับมาใช้ใหม่ในสภาพแวดล้อมใหม่ของเราในลักษณะที่ง่ายต่อการทำงานด้วย เราไม่ได้แค่คัดลอกและวาง แต่เราย่อขนาดและทำให้ง่ายขึ้นโดยสอดคล้องกับ หลักการ " ทำให้มันเรียบง่าย " ของเรา

บทเรียน #3: โค้งกฎเมื่อคุณต้องการ

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

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

บทเรียน #4: ทำงานในพื้นที่ให้มากที่สุด

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

“เราถือว่าความเป็นเจ้าของปัญหาและมอบอำนาจให้ตนเองก้าวหน้าในเรื่องนี้”

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

บทเรียน #5: ทำให้ไทม์ไลน์มีความยืดหยุ่น

หลังจากที่เราสร้างโครงสร้างพื้นฐานและทำให้แน่ใจว่า Intercom Europe ใช้งานได้แล้ว เราก็ย้ายไปยังเฟสอื่นของโปรเจ็กต์และทำงานร่วมกับทีมต่างๆ ทั่วทั้ง Intercom เพื่อประสานงานการเปิดตัวเพื่อพบปะลูกค้า

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

“เมื่อดูจากไทม์ไลน์และประเมินสิ่งที่ต้องทำ เราคิดว่าเราน่าจะเริ่มเปิดตัวในเดือนธันวาคม”

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

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

การเรียนรู้ของเราจะช่วยให้เราก้าวต่อไปได้เร็วขึ้น

นี่เป็นโครงการที่น่าตื่นเต้นมากที่ได้ทำงาน ฉันภูมิใจในงานที่เราทำ และเราลดผลกระทบของโครงการต่อทีมทั่วทั้งอินเตอร์คอม ยังมีงานรออยู่อีกมาก แต่สิ่งที่เราได้เรียนรู้จากประสบการณ์นั้นมีค่ามาก เมื่อเราสร้างโฮสติ้งในออสเตรเลียของเรา และพัฒนาโครงสร้างพื้นฐานในเขตอำนาจศาลอื่นๆ

เรียนรู้เพิ่มเติมเกี่ยวกับการโฮสต์ข้อมูลในยุโรปด้วย Intercom