ฉันจะประสบความสำเร็จในฐานะนักพัฒนาลูกค้าเป้าหมายได้อย่างไร


47

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

ฉันควรคำนึงถึงอะไรเมื่อจัดการโครงการนี้ ฉันจะแน่ใจได้อย่างไรว่าทุกอย่างได้รับการจัดการอย่างที่ควร?


3
กรุณาอธิบาย "มันเป็นเรื่องยากสำหรับฉันที่จะเก็บภาพรวมและภาพรวมของโครงการ" อะไรที่ยาก? อะไรที่ทำให้คุณเสียสมาธิ คุณมีปัญหาอะไร คุณต้องการทำอะไร
S.Lott

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

1
ไม่นานพอที่จะเป็นคำตอบที่แท้จริง แต่บางคนก็ไม่เหมาะกับบทบาทเหล่านี้ ฉันเห็นสิ่งนี้บ่อยครั้ง
Bill

คำตอบ:


53

ฉันได้เห็นทริปนี้นักพัฒนาคนอื่น ๆ เพราะพวกเขาเปลี่ยนไปเป็นรุ่นพี่ นี่เป็นคำแนะนำเล็กน้อยที่ฉันได้ทำกับคนอื่น ๆ

  • ทำความเข้าใจว่าเป้าหมายของโครงการคืออะไร

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

  • รายละเอียดสิ่งที่ต้องทำให้เป็นงาน ทำความเข้าใจการพึ่งพาระหว่างกัน

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

  • ทำความเข้าใจกับคำถามที่เปิดกว้างหรือความคลุมเครือของโครงการ

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

  • ธุรกิจเกลียดความประหลาดใจ

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

  • ทุกวันไปดูภาพใหญ่

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


5
+1 ส่วนใหญ่สำหรับสองจุดสุดท้าย ทั้งสองนี้มีความสำคัญอย่างยิ่ง
กำหนดค่า

42

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

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

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

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


1
ความคิดที่ดี
Roy Tinker

8
ยังเป็นบทสรุปที่ดีว่าทำไมคนทั่วไปถึงไม่ต้องการงาน
เควิน

2
@Kevin เพียงเล็กน้อยคือการเพิ่มค่าจ้างที่คุ้มค่ากับความรับผิดชอบพิเศษของผู้นำทางเทคโนโลยีและโดยทั่วไปแล้วเฉพาะในกรณีที่คุณต้องการได้รับการเลื่อนตำแหน่งให้เป็นงานที่มีการจัดการเท่านั้น หากคุณต้องการอยู่เชิงเทคนิคฉันได้เห็นผู้คนมากมายกลายเป็นผู้นำทางเทคโนโลยีแล้วขอให้เป็นนักพัฒนาอาวุโสอีกครั้ง
HLGEM

31

นี่คือรายการตรวจสอบที่ไม่เป็นทางการของฉัน มันไม่เป็นทางการมาก ... ฉันไม่ทำทุกวันทุกวัน แต่ถ้าฉันไม่ได้ตีทุกสัปดาห์ฉันจะกังวลเล็กน้อยและถ้าฉันไม่ได้ตีทุกเดือนฉันควรตื่นตระหนก และระยะทางนั้นขึ้นอยู่กับวัฒนธรรมของ บริษัท / ทีมสไตล์ส่วนตัวและประเภทของโครงการ

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

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

  • ตัวอย่างผลงานของทีม - พยายามทำแบบสำรวจการทำงานของทุกคน อ่านรหัสเรียกใช้ฟังก์ชันของพวกเขาลองใช้กรณีทดสอบ อย่าตั้งเป้าหมายที่งาน 100% ของทุกคนพยายามตัวอย่างจากทุกคนเล็กน้อย ให้ข้อเสนอแนะกับพวกเขา แต่ยังยื่นจุดแข็งและจุดอ่อนออกไปทั่วทั้งทีม

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

  • ตรวจสอบทรัพยากรของทีมเป็นระยะ ๆ - ผู้คนจะร้องเสียงกรี๊ดเมื่อทรัพยากรที่มีอยู่ก่อนหน้านี้ไม่พร้อมใช้งาน แต่ให้ตรวจสอบจุดปวดที่ไม่ทราบสาเหตุ chokepoints ของคุณอยู่ที่ไหน มีเครื่องมือใหม่ ๆ ที่จะมีประโยชน์หรือไม่? ทีมส่วนใหญ่มีผู้ชายที่ฉันคิดว่าเป็น Tool Hunter ที่สามารถเร่งความเร็วในอุปกรณ์ล่าสุดและยิ่งใหญ่ที่สุดได้เสมอ สร้างความสมดุลให้กับการสนทนาระหว่าง Tool Hunter และ GuyWhoHates ทุกอย่างใหม่เพื่อค้นหาจุดต่อไปสำหรับวิวัฒนาการ เครื่องมือรวมทุกอย่าง - SW, HW, พื้นที่ทางกายภาพ, แหล่งเรียนรู้

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

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

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

นั่นคือของฉันออกด้านบนของรายการหัวของฉัน ฉันมักจะเพิ่มเข้าไปในขณะที่ฉันโดนหัวกลับหัวด้วย "เซอร์ไพรส์" (ภาพฉันบอกว่ามีความอ่อนไหวต่อบริเวณที่ฉันพลาดไปจากนั้นฉันจัดการพับมันลงในรายการตรวจสอบ "เซอร์ไพรส์" ด้วยรอยยิ้มบังคับและฟันเขี้ยว )

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

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


5
"สร้างความสมดุลให้กับการสนทนาระหว่าง Tool Hunter และ GuyWhoHates ทุกอย่างใหม่เพื่อค้นหาจุดต่อไปสำหรับวิวัฒนาการ" รักมัน
ฮิวจ์

12

อ่านหนังสือเล่มนี้: Herding Cats: Primer สำหรับโปรแกรมเมอร์ผู้ซึ่งเป็นผู้นำโปรแกรมเมอร์

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


2
คุณจะแบ่งปันสิ่งที่คุณเห็นว่ามีประโยชน์เกี่ยวกับหนังสือหรือไม่ ขอบคุณ!
louisgab

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

6

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

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


4
ฉันเคยมีงานที่ฉันได้รับมรดกร่างตารางไม่มีใครต้องการ ฉันออกแบบฐานข้อมูลด้วยปากกาและกระดาษทั้งหมดเนื่องจาก Visio ช้าเกินไปสำหรับการออกแบบ ฉันสามารถคร่าวๆการออกแบบฐานข้อมูลบนกระดาษในประมาณ 1/10 เวลาที่ใช้ในการทำเอกสารการออกแบบใน Visio
HLGEM

4
ฉันไม่สามารถบอกคุณได้ว่าทำไม แต่ฉันดูเหมือนจะคิดเร็วขึ้นเมื่อฉันต้องชะลอการเขียน ฉันเขียนโค้ดลงบนกระดาษเมื่อฉันติดปัญหา ฆ่าต้นไม้บนแท่นเพื่อเพิ่มผลผลิต ... :)
karmajunkie
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.