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