นายจ้างที่มีศักยภาพมองหาอะไรในพอร์ตโฟลิโอที่ดี?


21

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

ฉันพยายามอย่างมากในการเริ่มต้นโครงการจริง ๆ โดยเฉพาะอย่างยิ่งในการสร้างเครื่องยนต์หรือใช้แพ็คเกจ OTS หรือใช้อย่างใดอย่างหนึ่งจากนั้นสร้างอย่างใดอย่างหนึ่งหรือสร้างหนึ่งอย่าง

นายจ้างคนใดที่ดูเหมือนจะดีกว่า ผลงานเกมที่มีขนาดเล็กลงซึ่งรวมถึงเอ็นจิ้นของคุณหรือเกมที่มีขนาดใหญ่กว่าที่สร้างขึ้นโดยใช้ OTS

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

ที่ทำงานเราเป็นทั้งนักพัฒนา. NET (C #) ฉันรู้ฉันรู้ "แล้วใช้ XNA" บางคนจะตะโกนใส่ฉัน การสาธิตที่ฉันทำเสร็จแล้วจนถึงตอนนี้อยู่ใน XNA แต่ฉันมีความกังวลเกี่ยวกับการสร้างผลงาน XNA ในขณะที่มันดีกับ DirectX ที่เป็นนามธรรมฉันกังวลว่าฉันอาจไม่สร้างฐานความรู้ที่จำเป็นเพื่อขยายเกิน XNA ได้อย่างง่ายดาย "คุณสามารถย้ายไปยัง DirectX หลัง XNA ได้ง่ายขึ้น" แต่เนื่องจากฉันจะย้ายอาชีพจากการพัฒนาธุรกิจไปยังการพัฒนาเกมมันคุ้มค่าหรือไม่ที่จะมุ่งเน้นไปที่ XNA ในปัจจุบัน? หรือนายจ้างที่มีศักยภาพจะหัวเราะคิกคักเมื่อฉันพูด XNA?

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

กำลังมองหาคำแนะนำจากอุตสาหกรรมใด ๆ สัตวแพทย์มี


ถามตัวเองว่าคุณต้องการแสดงอะไรเพิ่มเติม: ความยืดหยุ่นหรือใส่ใจในรายละเอียด นั่นคือคำตอบของคุณ ส่วนตัวฉันไปเพื่อความยืดหยุ่น
Chris Burt-Brown

คำตอบ:


44

ฉันเป็นโปรแกรมเมอร์ในอุตสาหกรรมเกมคอนโซลมาเกือบสิบสี่ปีและมักจะมีส่วนร่วมในการตัดสินใจจ้าง

ดังนั้นการพูดว่าเป็นหนึ่งในนายจ้างที่มีศักยภาพเมื่อประเมินพนักงานที่เป็นไปได้มีสามสิ่งที่ฉันมองหาในการจ้างงานใหม่และฉันมองหาพวกเขาตามลำดับนี้

  1. บุคคลนี้เหมาะสมกับทีมของฉันหรือไม่ (สังคมสุขอนามัย ฯลฯ )
  2. บุคคลนี้เป็นผู้เรียนรู้เร็วหรือไม่ (มักใช้ถ้อยคำที่ไม่ถูกต้องเนื่องจาก "บุคคลนี้ฉลาดหรือไม่")
  3. บุคคลนี้มีประสบการณ์ที่เกี่ยวข้องซึ่งจะช่วยฉันได้ไหม

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

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

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

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

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


3
นี่คือคำตอบที่ยอดเยี่ยม ขอบคุณมากที่เปลี่ยนมุมมองของฉันเกี่ยวกับกระบวนการจ้างงาน
ultifinitus

ความสามารถในการใช้ซอฟต์แวร์บุคคลที่สามเป็นข้อดีอย่างมากซึ่งอาจอยู่ภายใต้ 'เรียนรู้อย่างรวดเร็ว'
Valmond

ฉันไม่คิดว่าเป็นไปได้ที่คุณจะได้พบกับโปรแกรมเมอร์ที่ไม่ทราบวิธีการทำงานร่วมกับซอฟต์แวร์บุคคลที่สาม ทุกคนเขียนไปยัง API ของบุคคลที่สามที่มีเอกสารแล้วไม่ว่าจะเป็น libc หรือ STL หรือ OpenGL หรือ DirectX หรือ Windows API หรืออะไรก็ตาม มันเป็นทักษะเดียวกันในอุตสาหกรรมการค้ามักใช้ห้องสมุดที่มีชื่อเสียงน้อยกว่า :)
Trevor Powell

2
+1 ผลงานไม่จำเป็นต้องเป็นไปตามมาตรฐานที่เข้มงวด ประเด็นของพวกเขาคือเพื่อใช้เป็นบทสนทนาในการสัมภาษณ์เพื่อให้พวกเขาน่าสนใจจากมุมมองของโปรแกรมเมอร์
ChrisC

1
@ShuvoSarker สำหรับ บริษัท ใหญ่ ๆ นี่ก็ยังเป็นจริง EA จะไม่คาดหวังให้คุณเป็นผู้เชี่ยวชาญในเครื่องมือ Frostbite ของพวกเขาเมื่อพวกเขากำลังคิดที่จะจ้างคุณ Ubisoft จะไม่คาดหวังว่าคุณจะได้รู้จัก Snowdrop อาจมีการเปลี่ยนแปลงสำหรับ บริษัท ขนาดเล็กในช่วงหกปีที่ผ่านมาตั้งแต่ฉันโพสต์คำตอบนี้ ความสามัคคีได้กลายเป็นแรงผลักดันที่ยิ่งใหญ่ในพื้นที่สตูดิโอขนาดเล็กซึ่งมันสมจริงมากที่จะคิดว่าการได้รู้ว่า Unity สามารถช่วยโอกาสของคุณในแบบที่ไม่เป็นจริงเมื่อทุกคนใช้เครื่องมือที่เป็นกรรมสิทธิ์ของตัวเอง
เทรเวอร์พาวเวล

12

สิ่งหนึ่งที่คนอื่นยังไม่ได้กล่าวถึงคือการทำโครงการให้เสร็จ

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

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


1
ไม่แน่ใจ 100% ว่าฉันเห็นด้วยเรามีคนจำนวนมากที่มีสิ่งที่ยังไม่เสร็จมันเป็นเรื่องธรรมดามากและมันไม่มีความสัมพันธ์กับคุณภาพของสิ่งต่าง ๆ มากมาย การตกแต่งสิ่งที่แสดงให้เห็นถึงความทุ่มเทไม่ใช่ความสามารถ
Chris Burt-Brown

ฉันคิดว่าสำหรับแต่ละคน
Jari Komppa

4

สำหรับฉันแล้วคำตอบนั้นขึ้นอยู่กับประเภทของการเขียนโปรแกรมเกมที่คุณต้องการจะทำ

หากเป้าหมายของคุณคือการเป็นเอ็นโค้ดเดอร์ของเครื่องยนต์หรือกราฟิกโค้ดคุณจะได้รับประโยชน์จากการทำงานภายใต้ประทุนและเรียนรู้วิธีการทำงานของเอ็นจิ้น นี่ไม่ได้หมายความว่าคุณไม่สามารถใช้ XNA หรือเอนจิ้นนอกกรอบอื่น ๆ ได้การทำความคุ้นเคยกับอวัยวะภายในของเครื่องยนต์คุณภาพสูงเป็นวิธีที่ยอดเยี่ยมในการเรียนรู้วิธีสร้างเครื่องมือคุณภาพสูง! หากคุณไปเส้นทางนี้คุณไม่จำเป็นต้องเขียนเกมจริง พอร์ตโฟลิโอของเดโมกราฟิกแบบสแตนด์อโลนและ / หรือส่วนขยายที่ไม่น่าสนใจสำหรับเอ็นจิ้นที่มีอยู่ (เช่นการนำ shader ใหม่มาใช้กับเอ็นจิ้นหรือสิ่งที่คล้ายกัน) จะช่วยคุณได้ดี คุณสามารถดูผลงานกราฟิกของฉันได้ที่นี่; มันไม่กี่ปีที่ผ่านมา แต่นี่เป็นสิ่งที่ทำให้ฉันได้งานเขียนโปรแกรมกราฟิกที่สตูดิโอเกม

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

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


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

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

ตกลงคำตอบของคุณรวมกับของ Trevor ให้สิ่งที่ฉันต้องการจริงๆ ความอัปยศฉันเลือกคำตอบไม่ได้สองข้อ ดังนั้น +1 ขอบคุณนาธาน ฉันซาบซึ้งจริงๆ
Justin Self Self

2

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

http://leewinder.co.uk/blog/?p=23


1

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

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.