จาก Node.js ไปจนถึงการจ่ายภาษีฟรีแลนซ์ของคุณ: บทสัมภาษณ์นักพัฒนาที่ประสบความสำเร็จ
เผยแพร่แล้ว: 2022-03-11ที่ Toptal เรามองหา freelancer ที่ดีที่สุดอยู่เสมอ แต่อะไรที่ทำให้นักแปลอิสระนั้นยอดเยี่ยมอย่างแท้จริง? Luis Martinho หนึ่งในนักพัฒนาระดับแนวหน้าของเรา เป็นที่รักของลูกค้าของเขา เราจึงนั่งคุยกับเขาเกี่ยวกับงานฟรีแลนซ์ เทคโนโลยีอย่าง Node.js และ HTML5 ฟรีแลนซ์ และการจ่ายภาษีของคุณ
อย่างแรกเลย คุณเข้ามาทำงานอิสระได้อย่างไร? คุณเคยทำงานประจำหรือไม่?
“ฉันเคยทำงานเต็มเวลามาสองสามงาน: บางงานค่อนข้างเป็นองค์กร แต่งานล่าสุดอยู่ในสภาพแวดล้อมการเริ่มต้นระบบ โดยเฉพาะในพื้นที่ SaaS ระดับองค์กร การสร้างซอฟต์แวร์การจัดการที่เซ็กซี่ในคลาวด์ เรามีทีมที่มีความสามารถและมีวิสัยทัศน์ที่ทะเยอทะยานมาก หลังจากสี่ปีของการเติบโต เรามีผลิตภัณฑ์ที่น่าตื่นเต้นในพื้นที่ที่น่าตื่นเต้น ซึ่งเยี่ยมมาก แต่ฉันไม่มีความสุขมาก ฉันต้องการการเปลี่ยนแปลงวิถีชีวิต เมื่อเราเริ่มต้น โดยส่วนตัวแล้ว ฉันไม่เข้าใจว่า "การเริ่มต้น" นั้นยากเพียงใด ไม่ใช่แค่ชั่วโมง เพราะคุณทำงานเป็นเวลานานในสภาพแวดล้อมและโครงการทุกประเภท มันคือความเครียด ความรับผิดชอบ และความเจ็บปวดที่เกี่ยวข้องกับการสร้างสิ่งใหม่ ไม่ใช่ดอกไม้และสายรุ้งทั้งหมด ในท้ายที่สุด ฉันตัดสินใจว่าฉันไม่ใช่ผู้ร่วมก่อตั้ง (อย่างน้อยก็ไม่ใช่ในขณะนั้น) แต่ประสบการณ์ดังกล่าวทำให้ฉันเข้าใจลึกซึ้งยิ่งขึ้นถึงแรงกดดันที่ผู้ก่อตั้งสตาร์ทอัพต้องเผชิญ และฉันรู้ว่าฉันกลายเป็นนักพัฒนาซอฟต์แวร์อิสระที่ดีขึ้นด้วยเหตุนั้น
งานฟรีแลนซ์ดูเหมือนชีวิตที่ฉันต้องการมากขึ้นเรื่อยๆ: เป็นโอกาสในการค้นหาลูกค้าและโครงการที่น่าสนใจในขณะที่ได้รับรางวัลสำหรับงานที่มีคุณภาพ
ฉันเริ่มหางานประจำ: ครั้งแรกในบ้านเกิดของฉัน จากนั้นในส่วนที่เหลือของประเทศ จากนั้นในส่วนที่เหลือของยุโรป ฉันจัดการเพื่อค้นหาโครงการที่น่าสนใจ แพ็คเกจค่าตอบแทนที่น่าสนใจ และสถานที่ที่น่าสนใจบางแห่ง แต่ฉันเชื่อว่าฉันสามารถมีได้ทั้งหมด ดังนั้นฉันจึงเริ่มมองหางานอิสระ และเมื่อฉันมองดูไปเรื่อยๆ งานฟรีแลนซ์ก็ดูเหมือนชีวิตที่ฉันต้องการมากขึ้นเรื่อยๆ มันเป็นโอกาสในการหาลูกค้าและโครงการที่น่าสนใจในขณะที่ได้รับรางวัลสำหรับงานที่มีคุณภาพ”
อะไรคือความท้าทายที่ยากที่สุดที่เกิดขึ้นระหว่างการเปลี่ยนผ่านสู่งานพัฒนาอิสระของคุณ?
“เดิมที ฉันคิดว่าการเปลี่ยนแปลงครั้งใหญ่จะเป็นความมั่นคงของรายได้ที่คุณคาดหวังจากงานประจำ ซึ่งคุณมีเงินจำนวนหนึ่งที่คุณจะได้รับเสมอเมื่อถึงสิ้นเดือน—และคุณจะได้รับ ไม่ว่าจะเกิดอะไรขึ้น ฉันคาดหวังว่ามันจะเป็นปัญหาใหญ่ เพราะฉันรู้ว่าการเป็นฟรีแลนซ์หมายความว่าฉันจะไม่มีลูกค้าตลอดเวลา แต่นั่นไม่ใช่สิ่งที่เกิดขึ้นจริงๆ น่าแปลกใจที่ Toptal ฉันสามารถมีลูกค้าเข้ามาอย่างต่อเนื่องโดยไม่ต้องตามล่าหาพวกเขา พูดตามตรง ความท้าทายหลักคือการจัดระเบียบตารางเวลาของฉัน ฉันไม่มีเวลาทำงานจริงๆ โดยพื้นฐานแล้วฉันจัดตารางเวลาของฉันเอง ดังนั้นฉันต้องมีวินัยมากกว่าเมื่อก่อน ฉันพยายามทำงานในเวลามาตรฐานไม่มากก็น้อย: ฉันตื่นนอนตอนเช้า เริ่มทำงาน รับประทานอาหารกลางวันในเวลาที่ทุกคนรับประทานอาหารกลางวัน ทำงานในตอนบ่าย และรับประทานอาหารเย็น ฉันพยายามทำงานตามตารางเวลาปกติ ไม่ดึงคนทั้งคืน เผาน้ำมันตอนเที่ยงคืนทุกวัน วินัยนี้เป็นความท้าทายครั้งใหญ่ในตอนเริ่มต้น”
แต่คนส่วนใหญ่มองว่าเวลาว่างเป็นข้อดีของวิศวกรรมซอฟต์แวร์อิสระ คุณคิดอย่างไรกับสิ่งนั้น
ฉันพบว่าการถูกลงโทษนั้นคุ้มค่า เพราะในที่สุดฉันก็จะมีประสิทธิผลมากขึ้นถ้าฉันมีกิจวัตรประจำวัน
“แน่นอนว่ามันเป็นผลประโยชน์ เป็นเรื่องดีในแง่ที่ว่าถ้าคุณประสบปัญหาใดๆ ถ้าคุณต้องช่วยเหลือคนในครอบครัวของคุณ หรือคุณมีโอกาสที่ดีสำหรับกิจกรรมยามว่างบางประเภท คุณก็ทำได้และสนุกกับโอกาสนั้น แต่ในทางกลับกัน ฉันพบว่าการถูกลงโทษนั้นคุ้มค่า เพราะฉันลงเอยด้วยการมีประสิทธิผลมากขึ้นถ้าฉันมีชุดของกิจวัตร เพราะกิจวัตรเหล่านั้นโดยพื้นฐานแล้วจะนำทางฉัน: ฉันสามารถตัดการไล่ล่าและทำสิ่งต่างๆ ได้มากขึ้น ระหว่างเวลานั้น. การมีอิสระนั้นเป็นเรื่องที่ดี แต่ฉันคิดว่ามันต้องใช้อย่างมีความรับผิดชอบ”
ลูกค้าของคุณรักคุณ ความลับของคุณคืออะไร?
“ในฐานะนักพัฒนาซอฟต์แวร์อิสระ อาจเป็นนิสัยที่ดีที่จะขี้เกียจเล็กน้อยในแง่ของการมองหาวิธีที่ง่ายที่สุดและถูกที่สุดในการทำบางสิ่งให้เสร็จ ที่จะรำคาญอย่างยิ่งโดยการทำงานซ้ำ ๆ และเพื่อพัฒนาห่วงโซ่เครื่องมือของคุณอย่างต่อเนื่อง ตัวอย่างเช่น คุณใช้เวลามากในเทอร์มินัล: คุณควรพิจารณาสร้างทางลัด นามแฝง อะไรก็ตามที่ช่วยประหยัดเวลาและช่วยคุณพิมพ์ ในท้ายที่สุด งานมากมายที่คุณทำไม่ใช่วิทยาศาสตร์จรวดจริงๆ พวกเขาแค่วนซ้ำสองรอบเพื่อทำอะไรให้เสร็จ หากคุณเพิ่มประสิทธิภาพของสิ่งนั้นและทำงานซ้ำๆ ให้พ้นทาง คุณจะมีเวลามากขึ้นในการทำวิทยาศาสตร์จรวดจริง
หากคุณทำงานซ้ำๆ ให้พ้นทาง คุณจะมีเวลามากขึ้นในการทำวิทยาศาสตร์จรวดจริง
คุณยังต้องให้คนอื่นจัดการเรื่องการจ่ายและการเรียกเก็บเงินรายชั่วโมง รับเงินจากลูกค้า และแม้แต่การหาลูกค้าใหม่เพื่อให้คุณสามารถมีสมาธิกับการทำงานที่ยอดเยี่ยมได้ และนั่นเป็นสิ่งสำคัญอย่างยิ่ง เมื่อคุณเป็นนักพัฒนาซอฟต์แวร์อิสระ คุณกำลังทำงานเกี่ยวกับการจัดส่ง แต่ยังทำงานด้านการตลาดและการขายด้วย และสิ่งที่คุณต้องการทำ และสิ่งที่ลูกค้าต้องการให้คุณทำคือใช้เวลากับการส่งมอบให้มากที่สุด และใช้เวลาเพียงเล็กน้อยกับการตลาด การขาย และแม้แต่การเงิน คุณจะต้องใช้เวลาในการมองหาลูกค้าพัฒนาอิสระรายใหม่เสมอเมื่อคุณทำงานกับลูกค้าเก่า และนั่นไม่ใช่สิ่งที่คนรุ่นเก่าต้องการ—และไม่ใช่สิ่งที่คุณต้องการ คุณเพียงแค่ต้องการมุ่งเน้นการทำงานของคุณให้ดี ดังนั้นการมีคนอื่นคอยดูแลเรื่องการเรียกเก็บเงินและการหาลูกค้าใหม่จึงเป็นสิ่งที่คุณควรยินดีเป็นอย่างยิ่ง และคุณโชคดีมากหากพบ
อย่าลืม: จ่ายภาษีอิสระของคุณ”
คุณสร้างแรงจูงใจให้ตัวเองในแต่ละวันได้อย่างไร?
พวกเขารู้สึกว่าคุณเชื่อมต่อกับพวกเขาในแบบที่คุณไม่เพียงแค่ส่งในชั่วโมงที่เรียกเก็บเงินได้
“สิ่งที่มีส่วนสำคัญในแรงจูงใจของฉันคือคุณภาพของลูกค้า ถ้าเป็นไปได้ ฉันพยายามเป็นคนจู้จี้จุกจิก นั่นคือ ฉันพยายามยอมรับการแสดงที่กระตุ้นฉันในแง่ของความท้าทายทางเทคโนโลยีที่เกี่ยวข้อง ไม่ว่าจะเป็นการแก้ปัญหาที่ยากหรือการทำงานในพื้นที่ที่น่าสนใจ และมันก็เป็นไปตามนั้น ฉันมักจะทำงานกับลูกค้าโดยคิดว่าฉันกำลังทำงานเพื่อบรรลุเป้าหมายร่วมกัน: ฉันพยายามมองภาพรวมและมองตัวเองเป็นส่วนหนึ่งของทีม คุณไม่เคยเป็นส่วนหนึ่งของทีมพัฒนาซอฟต์แวร์ภายในหรือนอกสถานที่อย่างเต็มอารมณ์ โดยเฉพาะอย่างยิ่งเมื่อคุณไม่อยู่ที่สำนักงาน แต่คุณยังคงรู้สึกเหมือนเป็นส่วนหนึ่งของทีมในแง่ของโครงการโดยรวมและคุณภาพของ งาน และฉันคิดว่าผู้คนในอีกด้านหนึ่ง (ลูกค้าและทีมลูกค้า) รู้สึกว่า—พวกเขารู้สึกว่าคุณเชื่อมต่อกับพวกเขาในแบบที่คุณไม่เพียงส่งผ่านชั่วโมงการพัฒนาที่เรียกเก็บเงินได้ คุณกังวลมากว่า พวกเขาจะประสบความสำเร็จหรือถ้าคุณภาพของงานดีเพียงพอ”
คุณมองหาอะไรในซอฟต์แวร์ฟรีแลนซ์ที่มีศักยภาพหรือไคลเอนต์พัฒนาเว็บ?
“โดยทั่วไป ฉันชอบเทคโนโลยีที่ใหม่กว่าเทคโนโลยีที่เก่ากว่า และสิ่งที่เกิดขึ้นใหม่—ฉันไม่จำเป็นต้องพูดว่ากำลังเกิดขึ้นใหม่เพราะสิ่งเหล่านี้เป็นปัจจุบัน แต่ฉันอยากจะทำงานกับใครบางคนที่สร้างแอปพลิเคชันหน้าเดียวและใช้ Backbone.js และ Node.js ที่มี Express หรือเฟรมเวิร์ก MVC บางตัวมากกว่าคนที่จะใช้สไตล์ Java Enterprise Edition
ฉันเป็นฟรีแลนซ์ ฉันอยากจะมีลูกค้าที่มีโซลูชันการสื่อสารแบบอะซิงโครนัสอยู่แล้ว หากคุณกำลังใช้การสื่อสารทางไกล ง่ายกว่ามากที่จะเข้าไปอยู่ในทีมที่ใช้อะไรง่ายๆ เช่น รายชื่ออีเมล หรือมีห้องสนทนาใน Campfire หรือใช้ GitHub เป็นเครื่องมือในการทำงานร่วมกัน (อันสุดท้ายทำงานได้ดีมาก) โดยรวมแล้ว หากลูกค้าไม่ได้พูดคุยถึงเครื่องทำน้ำเย็น คุณอาจเสี่ยงที่จะสูญเสียข้อมูลและการพูดคุยมากมายที่อาจส่งผลกระทบต่องานของคุณ”
นั่นเป็นจุดที่น่าสนใจ เคล็ดลับอื่น ๆ สำหรับการสื่อสารโทรคมนาคม?
เป็นการยากที่จะจำผู้ชายที่ไม่เคยอยู่ในอาคาร
“คุณต้องหาวิธีชดเชยการไม่อยู่ที่สำนักงาน วิธีแก้ปัญหาที่ฉันพบคือต้องดำเนินการในเชิงรุก ตัวอย่างเช่น: วิเคราะห์บันทึกการคอมมิต เมื่อคุณใช้การสื่อสารทางไกล คุณควรจัดสรรเวลาเพียงเพื่อดูผ่านๆ และมีแนวคิดเกี่ยวกับสิ่งที่คนอื่นกำลังทำอยู่ หากคุณทราบถึงสิ่งที่เกิดขึ้นในแต่ละวัน โดยได้รับแจ้งผ่านโซลูชันการจัดการโครงการ คุณควรพยายามค้นหาคำแนะนำเกี่ยวกับสิ่งที่ทีมกำลังดำเนินการอยู่ จากนั้นคุณจะถูกรวมเข้าด้วยกันได้ง่ายขึ้น เห็นได้ชัดว่าเป็นความพยายามเพิ่มเติมจากคุณ คุณอาจสามารถเลิกทำมันได้หากพวกเขามีกระบวนการสื่อสารที่ดีอยู่แล้ว แต่อาจเป็นเคล็ดลับที่ดีและสามารถช่วยแก้ปัญหาบางอย่างได้ มันยากกว่าที่จะจำนักพัฒนาอิสระที่ไม่เคยอยู่ในอาคารนี้”

อะไรคือคุณสมบัติที่สำคัญที่สุดของฟรีแลนซ์?
“คุณต้องเป็นคนที่สามารถรักษาสมดุลระหว่างชีวิตส่วนตัวกับงานของคุณได้ ในฐานะนักแปลอิสระ การตอบสนองเป็นสิ่งสำคัญ แต่การตอบสนองกลับกลายเป็นเรื่องใหญ่ในชีวิตส่วนตัวของคุณ คุณไม่จำเป็นต้องเช็คอีเมลตลอดเวลา คุณสามารถรับการแจ้งเตือน กรองว่าอีเมลสำคัญหรือไม่ จากนั้นคุณสามารถกลับไปใช้เวลาร่วมกับครอบครัวหรืออะไรก็ตาม คุณต้องเป็นผู้สลับบริบทที่ดี การเปลี่ยนบริบทมักจะมีราคาแพง แต่คุณต้องทำให้ราคาถูกและรวดเร็ว เพื่อให้คุณมีมาตรฐานการบริการที่สูงมาก โดยตอบสนองต่อเหตุฉุกเฉินได้ดีมาก แต่ในขณะเดียวกันก็เพลิดเพลินไปกับการอยู่กับเพื่อนและครอบครัว
คุณต้องเป็นผู้สลับบริบทที่ดี การเปลี่ยนบริบทมักจะมีราคาแพง แต่คุณต้องทำให้ถูกและรวดเร็ว
สำหรับการจัดการพัฒนาฟรีแลนซ์ตามปกติ คุณต้องรู้วิธีจัดการการเงินของคุณอย่างระมัดระวัง สิ่งนี้ไม่ได้เกิดขึ้นจริงกับ Toptal อย่างน่าประหลาดใจ แต่โดยปกติแล้ว เป็นเรื่องง่ายมากที่จะเปลี่ยนจากงานเลี้ยงไปสู่ความอดอยาก เมื่อพูดถึงการจ่ายซอฟต์แวร์หรือนักพัฒนาเว็บ แม้แต่รายชั่วโมง หนึ่งเดือน คุณทำเงินได้มากมาย แต่จู่ๆ คุณไม่มีลูกค้าและคุณไม่มีงานทำอีกต่อไป ดังนั้น คุณต้องมีวินัย คุณต้องมีแนวคิดเกี่ยวกับค่าจ้างเฉลี่ย และคุณต้องใช้เงินจำนวนนั้น ส่วนเกินทั้งหมดจะต้องเป็นเบาะบางประเภทเพื่อช่วยให้คุณแล่นผ่านความไม่แน่นอนของการทำงานประเภทนี้ สิ่งนี้ไม่เป็นความจริงสำหรับ Toptal เพราะกระแสของลูกค้ามีเสถียรภาพมาก แต่ก็ยังเป็นแนวปฏิบัติที่ดี”
ในฐานะนักแปลอิสระ คุณต้องทำโครงการพัฒนาซอฟต์แวร์ต่างๆ มากมายตลอดอาชีพการงานของคุณ คุณทำอะไรในครั้งแรกที่ได้รับสิทธิ์เข้าถึง codebase ใหม่ สมมติว่าเป็นรหัสพันล้านบรรทัด
“ฉันจะพยายามมีวินัยในการใช้วิธีการจากบนลงล่าง นี่หมายถึงการทำความเข้าใจโครงสร้างโดยรวมของ codebase ดูเหมือนจะชัดเจน แต่เมื่อคุณเริ่มพยายามทำความเข้าใจโค้ด คุณจะเข้าสู่สิ่งที่คุณกำลังทำงานอยู่ในขณะนั้นและงานเฉพาะที่คุณมี สิ่งนั้นจะเปลี่ยนโฟกัสของคุณจากวิธีการจากบนลงล่าง และจะทำให้คุณพยายามขึ้นไปที่ด้านล่างสุด ประกอบชิ้นส่วนจากส่วนเฉพาะของโค้ดที่คุณกำลังดูอยู่ มันอาจจะดีกว่าในระยะสั้นสำหรับคุณที่จะแก้ไขข้อผิดพลาดนั้นหรือเพิ่มฟังก์ชันเฉพาะนั้น แต่ในระยะกลาง คุณจะหวังว่าคุณจะใช้วิธีจากบนลงล่างต่อไป จากนั้น คุณจะมีมุมมองที่ดีขึ้นมากเกี่ยวกับระบบและวิธีที่ชิ้นส่วนโต้ตอบกัน”
คุณทำงานส่วนหน้าและส่วนหลังมามากแล้ว คุณคิดว่าสิ่งสำคัญสำหรับนักพัฒนาอิสระในปัจจุบันที่จะมีทักษะทั้งสองแบบนี้หรือไม่?
"ไม่. พูดตามตรง ฉันคิดว่าคุณสามารถได้อะไรมากมายจากความเชี่ยวชาญเฉพาะทาง เช่น ถ้าคุณเก่งเรื่องเทคโนโลยีเล็กๆ น้อยๆ อย่างน่าขัน แต่มันเป็นเพียงทางเลือกส่วนบุคคล ฉันอยากรู้ ดังนั้นฉันจึงทำงานกับเทคโนโลยีต่างๆ มากมาย และนั่นเป็นเหตุผลที่ว่าทำไมฉันถึงต้องทำงานอิสระทั้ง front-end และ back-end
เทคโนโลยีจะเปลี่ยนไป สิ่งที่ร้อนแรงในวันนี้อาจจะน่าเบื่อในวันพรุ่งนี้หรืออย่างน้อยก็ใน 6-12 เดือน
ที่กล่าวว่า ฉันคิดว่าสิ่งสำคัญสำหรับนักพัฒนาตลอดช่วงชีวิตการทำงานของเขาหรือเธอ คือการพยายามเรียนรู้เทคโนโลยีและกระบวนทัศน์ให้มากที่สุดเท่าที่จะเป็นไปได้ เทคโนโลยีจะเปลี่ยนไป—สิ่งที่ร้อนแรงในวันนี้จะน่าเบื่อในวันพรุ่งนี้หรืออย่างน้อยก็ใน 6-12 เดือน—และหนึ่งในทักษะที่สำคัญสำหรับนักพัฒนาซอฟต์แวร์อิสระคือการรับเทคโนโลยีใหม่หรือโครงการใหม่อย่างรวดเร็ว ด้วยเหตุนี้ มันจึงช่วยได้มากถ้าคุณมีแนวทางที่เป็นระบบในการเรียนรู้สิ่งใหม่ๆ และฝึกฝนโดยการเรียนรู้ภาษาหรือกรอบงานหรือกระบวนทัศน์ใหม่อย่างน้อยหนึ่งภาษาทุกปี”
คุณทำงานอิสระมากมายกับ Rails, Django และ Node.js ล่าสุด ประสบการณ์ของคุณแตกต่างกันอย่างไรระหว่างทั้งสาม?
“เอ่อ เราจะเข้าสู่สงครามศาสนาที่นี่ ฉันจะบอกว่าโหนดค่อนข้างแตกต่างจากอีกสองคน เมื่อคุณเห็นตัวอย่าง Node.js เป็นครั้งแรก คุณอาจประสบปัญหาในการเข้าสู่กระบวนทัศน์ที่ขับเคลื่อนด้วยเหตุการณ์ เป็นสิ่งที่อาจไม่เป็นธรรมชาติ 100% สำหรับผู้ที่ทำงาน Rails ตลอดเวลา ในทางกลับกัน หากคุณกำลังทำงานกับ JavaScript คุณอาจกำลังพัฒนาสำหรับเบราว์เซอร์ ดังนั้น คุณจึงคุ้นเคยกับกระบวนทัศน์ที่ขับเคลื่อนด้วยเหตุการณ์อยู่แล้ว โดยส่วนตัวแล้ว จากประสบการณ์ทำงานอิสระกับ Node ฉันเคยใช้เฟรมเวิร์ก MVC ดังนั้นฉันจึงไม่ได้พัฒนาเทคโนโลยีหลักสำหรับ Node ฉันเพิ่งเป็นผู้ใช้มาตรฐานของเฟรมเวิร์กที่เป็นกรรมสิทธิ์เฉพาะไคลเอ็นต์ (เทียบกับ Express)”
เครื่องมือใดที่คุณโปรดปรานที่นักพัฒนาใช้น้อยเกินไป?
“ เหนือสิ่งอื่นใด WebStorm จาก JetBrains เป็น JavaScript IDE ที่ควรค่าแก่การค้นหา สตูดิโอ Android ใหม่ที่เปิดตัวใน Google I/O นั้นขับเคลื่อนโดยซอฟต์แวร์ JetBrains ไม่ใช่ Eclipse หรืออะไรก็ตาม ฉันชอบ Eclipse แต่ฉันสนุกกับ WebStorm มาก ฉันยังคงเรียนรู้ทางลัดมากมาย และนั่นคือแนวทางปฏิบัติที่นักพัฒนาซอฟต์แวร์อิสระที่ดีควรมีเช่นกัน: เรียนรู้เพิ่มเติมเกี่ยวกับเครื่องมือของพวกเขา ฉันยังคงเรียนรู้เพิ่มเติมเกี่ยวกับ IDE ของฉัน WebStorm มีปุ่มลัดอัจฉริยะมากมาย เลย์เอาต์มาตรฐานที่ดีและยังมีคุณสมบัติ ZenCoding ที่ดีบางอย่างที่ช่วยให้คุณเขียน HTML ได้อย่างรวดเร็วเช่นเคย ทั้งหมดนี้เป็นเครื่องมือที่ดี”
หากลูกค้าอิสระต้องการให้คุณทำโปรเจ็กต์กับ Rust or Go หรือภาษาใหม่ที่คุณไม่เคยใช้มาก่อน คุณจะพูดอะไร?
ไม่ว่าคุณจะเก่งแค่ไหน ก็มีเวลาตั้งค่าเสมอ และอาจมีค่าใช้จ่ายสูงสำหรับลูกค้า
“ฉันมักจะพยายามติดต่อกับภาษาภายนอกงานของลูกค้าเป็นครั้งแรก ไม่ใช่ตามเวลาของลูกค้า ไม่ว่าคุณจะเก่งแค่ไหน ก็มีเวลาในการตั้งค่าเสมอ และอาจมีค่าใช้จ่ายสูงสำหรับลูกค้า ดังที่กล่าวไปแล้ว หากลูกค้าบอกฉันว่า “โอเค เราสบายใจแม้ว่าคุณจะไม่รู้อะไรเลย” ฉันจะเห็นว่านั่นเป็นโอกาสที่ดีในการเรียนรู้สิ่งใหม่ ในทางกลับกัน หากลูกค้ามีตารางงานที่รัดกุม ฉันจะแนะนำให้พวกเขาจ้างคนอื่นหรือใช้ภาษาที่ฉันรู้สึกสบายใจเพื่อที่ฉันจะได้รู้ว่าฉันสามารถทำงานได้อย่างมีประสิทธิภาพตั้งแต่เริ่มต้น”
อะไรคือความท้าทายทางเทคนิคที่ใหญ่ที่สุดที่คุณต้องแก้ไขในขณะที่ทำงานอิสระ?
“โครงการ HTML5 ฟรีแลนซ์อยู่ในใจ เจาะลึกเข้าไปใน HTML5 Canvas API เพื่อใช้ฟังก์ชันแก้ไขกราฟิกขั้นสูง เช่น การเลือกเชือกและการเลือกรูปแบบอิสระ โดยที่คุณครอบตัดบางส่วนของรูปภาพแต่ละเว้นส่วนที่เหลือ การคำนวณด้วยชุดพิกเซล สิ่งต่างๆ เช่นนั้น นี่เป็นเหมือน MS Paint ที่ใช้ HTML5 Canvas และใช้สิ่งต่างๆ เช่น แปรง: คุณคิดว่าแปรงจะเป็นสิ่งที่เรียบง่าย—ถ้าคุณแค่ลากเส้น แต่ในกรณีนี้ คุณต้องการเลียนแบบการขีดเส้นด้วยแปรง ดังนั้น ฉันต้องใช้สูตรทางคณิตศาสตร์เพื่อจำลองว่าพู่กันจะสัมผัสกับผืนผ้าใบอย่างไรและปล่อยให้หมึกเบลอ”
เทคโนโลยีใหม่ที่คุณโปรดปรานล่าสุดที่คุณเคยทำงานด้วย?
“สิ่งที่ฉันได้ยินเกี่ยวกับ Meteor นั้นน่าสนใจในแง่ของวิธีที่พวกเขานำเสนอกรอบงานแบบหัวและไหล่ที่สมบูรณ์สำหรับการพัฒนาแอปพลิเคชันหน้าเดียว มันจัดการกับส่วนหลังเช่นเดียวกับส่วนหน้า ฉันไม่ได้ทำงานกับมัน แต่ฉันอยากรู้และอยากลอง”