एक अच्छे पोर्टफोलियो में संभावित नियोक्ता क्या देखते हैं?


21

काम से एक दोस्त और खुद खेल विकास के लिए इंडी दृश्य में आना चाहते हैं। मैंने कुछ तकनीकी प्रदर्शन किए हैं जो विभिन्न समस्याओं के लिए विभिन्न विचारों और दृष्टिकोणों का प्रदर्शन कर रहे हैं। अब, मुझे लगा कि बाद में सड़क के लिए एक पोर्टफोलियो विकसित करने के लिए हमें एक परियोजना के लिए प्रतिबद्ध होने का समय है।

मैं एक वास्तविक परियोजना को शुरू करने के लिए बहुत संघर्ष कर रहा हूं, विशेष रूप से एक इंजन बनाने के लिए या एक ओटीएस पैकेज का उपयोग करने के लिए, या एक का उपयोग करें या फिर एक बनाने के लिए, फिर एक का उपयोग करें .. आदि।

जो संभावित नियोक्ताओं के लिए बेहतर है? गेम्स का एक छोटा पोर्टफोलियो जिसमें आपका इंजन शामिल है या (संभवतः) बड़ा है जो कुछ ओटीएस का उपयोग करके बनाया गया था?

मैं एक प्रोग्रामर हूं। मैं कलाकार नहीं हूं। मैं इस परियोजना के लिए अधिकांश प्रोग्रामिंग का प्रदर्शन करूंगा। मेरा दोस्त भी एक डेवलपर है, लेकिन वह चित्रमय टूल के साथ भी कुशल है (इस प्रकार, वह कला पुरुष बन जाता है)।

काम पर, हम दोनों .NET डेवलपर (C #) हैं। मुझे पता है, मुझे पता है "अच्छी तरह से तो XNA का उपयोग करें" कुछ मुझ पर चिल्लाएंगे। मैंने अब तक जो डेमो पूरा किया है, वह एक्सएनए में है। लेकिन XNA पोर्टफोलियो बनाने में मुझे कुछ चिंताएँ हैं। जबकि DirectX को अमूर्त करना अच्छा है, मुझे चिंता है कि मैं XNA से परे आसानी से विस्तार करने के लिए आवश्यक ज्ञान आधार का निर्माण नहीं कर सकता। उस तर्क के लिए काउंटर शायद "आप XNA के बाद डायरेक्टएक्स पर आसानी से आगे बढ़ सकते हैं", लेकिन चूंकि मैं बिजनेस डेवलपमेंट से गेम डेवलपमेंट के लिए करियर को आगे बढ़ाऊंगा, क्या यह अभी भी एक्सएनए पर ध्यान देने योग्य है? या संभावित नियोक्ता जब मुझे XNA कहते हैं, तो वह बड़ा होगा?

क्या मुझे एक्सएनए के अनुभव को जानना चाहिए और जिन अवधारणाओं और पाठों को सीखा है, वे ज्यादातर स्थानांतरित हो जाएंगे? या मेरा सबसे मूल्यवान संसाधन (समय) कहाँ और कैसे खर्च करें?

किसी भी उद्योग से कुछ सलाह के लिए देख रहे हैं वहाँ।


अपने आप से पूछें कि आप क्या अधिक प्रदर्शित करना चाहते हैं: लचीलापन या विस्तार पर ध्यान। वही तुम्हारा उत्तर है। निजी तौर पर मैं लचीलेपन के लिए जाता हूं।
क्रिस बर्ट-ब्राउन

जवाबों:


44

मैं लगभग चौदह वर्षों के लिए कंसोल गेम उद्योग में एक प्रोग्रामर रहा हूं, और अक्सर निर्णय लेने में शामिल रहा हूं।

इसलिए उन संभावित नियोक्ताओं में से एक के रूप में बोलते हुए, एक संभावित कर्मचारी का मूल्यांकन करते समय तीन चीजें हैं जो मैं एक नए भाड़े में देखता हूं, और मैं इस क्रम में उनकी तलाश करता हूं।

  1. क्या यह व्यक्ति मेरी टीम में फिट होगा? (सामाजिक, स्वच्छता, आदि)
  2. क्या यह व्यक्ति एक त्वरित शिक्षार्थी है? (अक्सर गलत तरीके से वाक्यांश के रूप में "क्या यह व्यक्ति स्मार्ट है?")
  3. क्या इस व्यक्ति के पास कोई प्रासंगिक अनुभव है जो मेरी मदद करेगा?

अब, आपके प्रश्न का समाधान। यह संपूर्ण "किस प्रकार का प्रोजेक्ट मुझे करना चाहिए" इस मुद्दे को अब तक कम से कम महत्वपूर्ण मानदंडों से संबोधित किया जा रहा है, जिनकी मुझे परवाह है। मुझे इस बात की अधिक परवाह है कि क्या आप सामाजिक रूप से मेरी टीम में फिट होंगे, और इस बारे में कि आप पिछली किसी परियोजना में XNA या अपने खुद के गेम इंजन का उपयोग करते हैं या नहीं, मैं कितनी जल्दी नई चीजों को सीख पाऊंगा। द्वारा और बड़े, मैं मान रहा हूँ कि मैं आपको अपने घर के खेल इंजन में प्रशिक्षित करने जा रहा हूँ, और इसलिए आपकी पहले की परियोजनाएँ वास्तव में मेरे लिए कोई मायने नहीं रखतीं। बेशक, जब तक आप जादुई रूप से एक विशेष उपकरण या तकनीक के साथ अनुभव नहीं करते हैं, जिसके बारे में मुझे किसी को जानने की आवश्यकता है। लेकिन यह असामान्य है; आमतौर पर, मैं मान रहा हूं कि मुझे हमारे एपीआई का उपयोग करने के लिए आपको प्रशिक्षित करना है।

यह सब यह कहने के लिए नहीं है कि मैं नहीं चाहता कि आप घर की परियोजनाएं करें। मैं बिल्कुल करता हूं। लेकिन मुझे वास्तव में इस बात की परवाह नहीं है कि वे कौन सी परियोजनाएं हैं, या उन्होंने कौन सी तकनीकों का उपयोग किया है, क्योंकि वे संभवतः मेरे लिए मेरे लिए क्या करने के लिए प्रासंगिक नहीं हैं, क्योंकि हम विभिन्न पुस्तकालयों या एपीआई का उपयोग कर रहे हैं।

लेकिन मैं चाहता हूं कि आप मुझे अपनी परियोजनाओं के बारे में बताएं। मैं यह देखना चाहता हूं कि जब आप उनके बारे में बात करते हैं तो आप कितने उत्साही होते हैं, क्योंकि यह मुझे बताता है कि आप किस तरह के व्यक्ति हैं (देखें बिंदु 1, ऊपर)। मैं उन समस्याओं के बारे में सुनना चाहता हूं जो आप भाग गए थे, और आपने अपनी परियोजना को विकसित करने में उन्हें कैसे पछाड़ दिया (देखें बिंदु 2, ऊपर)। मैं पूरी तरह से चाहता हूं कि आप कम से कम एक परियोजना पूरी कर लें - दर्द के माध्यम से धक्का देने में सक्षम होने और वास्तव में कुछ पूरा करने से आप जिस तरह के व्यक्ति हैं उसके बारे में बहुत कुछ कहता है, और मुझे बताता है कि आप किसी ऐसे व्यक्ति पर भरोसा करने में सक्षम होंगे। अगर ("जब") चीजें कठिन हो जाती हैं।

तो ईमानदारी से, न तो विकल्प "बेहतर" है; महत्वपूर्ण बात यह है कि कुछ, कुछ भी पूरा करें। जिस भी तकनीक से आप सीखते हैं, वह केक पर आधारित है, लेकिन लगभग निश्चित रूप से ऐसा नहीं है जो मुझे आपको किराए पर दे।

(लेकिन उस सब के साथ कहा .. मैं आपसे C ++ में कुशल होने की उम्मीद करूंगा । एक तरह से या किसी अन्य, आपको मुख्यधारा के खेल उद्योग में काम पर रखने के लिए वास्तव में C ++ सीखने की आवश्यकता है। आपके घर की परियोजनाओं को जरूरी नहीं है। C ++ में, लेकिन मुझे उम्मीद है कि आप इसमें धाराप्रवाह प्रदर्शित कर पाएंगे।)


3
यह एक शानदार जवाब है। वास्तव में भर्ती प्रक्रिया पर मेरे दृष्टिकोण को बदलने के लिए बहुत-बहुत धन्यवाद।
अल्टिफिनिटस

थर्ड पार्टी सॉफ्टवेयर का उपयोग करने में सक्षम होना हमेशा एक बड़ा प्लस होता है, जो कि 'जल्दी सीखता है' के तहत जा सकता है।
वालमंड

मुझे नहीं लगता कि यह संभव है कि आप कभी ऐसे प्रोग्रामर से मिलेंगे जो यह नहीं जानता कि तीसरे पक्ष के सॉफ्टवेयर के साथ मिलकर कैसे काम किया जाए। हर कोई पहले से ही एक दस्तावेज तीसरे पक्ष के एपीआई के लिए लिख रहा है, चाहे libc या STL या OpenGL या DirectX या Windows API या जो भी हो। यह वाणिज्यिक उद्योग में समान कौशल है, बस अक्सर कम प्रसिद्ध पुस्तकालयों का उपयोग किया जा रहा है। :)
ट्रेवर पॉवेल

2
+1 पोर्टफोलियो टुकड़ों को कठोर मानकों का पालन करने की आवश्यकता नहीं है। उनमें से एक साक्षात्कार के लिए लगभग बातचीत के टुकड़ों के रूप में सेवा करना है, ताकि वे एक प्रोग्रामर के दृष्टिकोण से दिलचस्प हों।
क्रिस सिप

1
@ShuvoSarker बड़ी कंपनियों के लिए, यह अभी भी सच है। ईए आपको उनके फ्रॉस्टबाइट इंजन में एक विशेषज्ञ होने की उम्मीद नहीं करेगा जब वे आपको काम पर रखने के बारे में सोच रहे हों। उबिसॉफ्ट से आपको स्नोड्रॉप जानने की उम्मीद नहीं होगी। यह शायद छोटी कंपनियों के लिए बदल गया है, हालांकि, जब से मैंने यह उत्तर पोस्ट किया, छह साल में। छोटे-स्टूडियो अंतरिक्ष में एकता एक बड़ी पर्याप्त ताकत बन गई है, यह सोचना बहुत यथार्थवादी है कि एकता को जानने से निश्चित रूप से आपके अवसरों में मदद मिल सकती है जब मामला बिल्कुल नहीं था जब हर कोई अपने स्वयं के मालिकाना इंजन का उपयोग करता था।
ट्रेवर पॉवेल

12

एक बात जिसका दूसरों ने उल्लेख नहीं किया है, वह यह है कि अपनी परियोजनाओं को समाप्त करना महत्वपूर्ण है।

अधूरी चीजों के एक समूह के साथ एक पोर्टफोलियो होना एक पोर्टफोलियो के रूप में लगभग उतना ही प्रभावशाली नहीं है, एक अच्छी तरह से पॉलिश की गई चीज़ है।

इसके अलावा, यदि आप किसी के मौजूदा काम (जैसे कुछ ओपन सोर्स इंजन, या स्वतंत्र रूप से उपलब्ध कला संपत्ति) के आधार पर अपने काम को आधार बनाते हैं, तो सुनिश्चित करें कि आप अपने पोर्टफोलियो का उल्लेख करते हैं कि कौन सा हिस्सा आपका है।


1
100% यकीन नहीं है कि मैं सहमत हूं, हम अधूरे सामान के साथ बहुत से लोग हैं, यह बहुत आम है, और यह उनके सामान की गुणवत्ता के साथ बहुत अधिक संबंध नहीं है। कुछ खत्म करना समर्पण को दर्शाता है, क्षमता को नहीं।
क्रिस बर्ट-ब्राउन

मुझे लगता है कि उनके अपनों में प्रत्येक के लिए।
जरी कोमप्पा

4

यह मुझे लगता है कि उत्तर इस बात पर निर्भर करता है कि आप किस तरह की गेम प्रोग्रामिंग करना चाहते हैं।

यदि आपका लक्ष्य एक इंजन कोडर या ग्राफिक्स कोडर होना है , तो आपको हुड के नीचे जाने और इंजन कैसे काम करते हैं, यह जानने से लाभ होगा। इसका मतलब यह नहीं है कि आप XNA या किसी अन्य ऑफ-द-शेल्फ इंजन, फ्रेमवर्क आदि का उपयोग नहीं कर सकते हैं। उच्च गुणवत्ता वाले इंजन के इंसिडेंस के साथ परिचित होना उच्च गुणवत्ता वाला इंजन बनाने का तरीका सीखने का एक शानदार तरीका है! यदि आप इस रास्ते पर जाते हैं, तो आपको कोई वास्तविक गेम लिखने की भी आवश्यकता नहीं है । एक मौजूदा इंजन के लिए स्टैंडअलोन ग्राफिक्स डेमो और / या nontrivial एक्सटेंशन का एक पोर्टफोलियो (जैसे एक इंजन या इस तरह के एक नए shader को लागू करना) आपको अच्छा करेगा। आप यहां ग्राफिक्स डेमो के मेरे पोर्टफोलियो पर एक नज़र डाल सकते हैं; अब यह कुछ साल पुराना है, लेकिन यह मूल रूप से मुझे गेम स्टूडियो में ग्राफिक्स प्रोग्रामिंग की नौकरी मिली।

दूसरी ओर, यदि आप गेमप्ले कोडर होंगे , तो उन लोगों में से एक होंगे जो गेम मैकेनिक्स, कंट्रोल, दुश्मन एआई इत्यादि पर काम करते हैं, फिर आपका समय Direct3D में अच्छी तरह से खर्च नहीं होगा। बेशक यह एक सामान्य, उच्च-स्तरीय समझ के लिए उपयोगी है कि ग्राफिक्स कैसे काम करता है, लेकिन एक पेशेवर संदर्भ में आप शायद निम्न-स्तरीय ग्राफिक्स सामान के साथ सीधे संपर्क में नहीं आएंगे। इस मामले में मैं बिल्कुल ऑफ-द-शेल्फ इंजन का उपयोग करने की सलाह दूंगा ताकि आप वास्तविक गेम बनाने में अपना समय व्यतीत कर सकें।

तो, योग करने के लिए, यदि आप गेमप्ले करना चाहते हैं तो बस एक मौजूदा इंजन का उपयोग करें; यदि आप इंजन / ग्राफिक्स करना चाहते हैं तो अपना सामान बनाएँ और / या किसी मौजूदा इंजन का विस्तार करें।


मैं आपके उत्तर की सराहना करता हूं। यह मुझे बेहतर दिशा देता है। मैं खुद को इंजन प्रोग्रामर के रूप में अधिक देखता हूं। बिताए समय (आपके अनुभव के आधार पर), क्या आपको लगता है कि अमूर्त को छोड़ना और डी 3 डी में गोता लगाना बेहतर है?
जस्टिन सेल्फ

1
डी 3 डी शुरू करने के लिए एक शानदार जगह होगी। बाद में, आप यह भी महसूस कर सकते हैं कि कुछ लोगों ने बड़े पैमाने के ढांचे और संगठन को कैसे किया है, इसके लिए कुछ ओपन-सोर्स इंजन की जांच करें। एक बड़े और अपरिचित कोडबेस में कूदना और कोड की हर पंक्ति को पढ़े बिना इसे समझने की कोशिश करना भी अच्छा अभ्यास है।
नाथन रीड

ठीक है, आपके जवाब ने ट्रेवर के साथ मिलकर वास्तव में मुझे वही दिया, जिसकी मुझे आवश्यकता है। शर्म की बात है कि मैं दो जवाब नहीं चुन सकता; तो +1। धन्यवाद, नाथन। मैं वास्तव में इसकी प्रशंसा करता हूँ।
जस्टिन सेल्फ

2

जब मैं यूनी फाइनल कर रहा था तब मेरा पोर्टफोलियो इस लेख में दिखाया गया था। यह एक अच्छा विचार है कि आपके पोर्टफोलियो को एक साथ लाने पर क्या करना है और क्या नहीं करना है

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


1

अपने पोर्टफोलियो को इस आधार पर न करें कि आप "मानक" को कैसे मानते हैं। आपको उन परियोजनाओं पर काम करना चाहिए जो आपकी रुचि रखते हैं । यदि आप खेल यांत्रिकी पसंद करते हैं, तो आगे बढ़ो और खेलों का एक गुच्छा बनाएं। यदि आप दिलचस्प एआई बनाना पसंद करते हैं, तो शायद आरटीएस जैसे सेटअप के लिए एक डेमो बनाएं। एक उदाहरण के रूप में, मुझे ग्राफिक्स प्रोग्रामिंग में एक बढ़ती रुचि है, और प्रतिपादन अवधारणाओं को सीखने और उन्हें अपने इंजन में लागू करने में अधिक समय देना है। (नतीजतन, मेरे गेम प्रोजेक्ट को अस्थायी रूप से शेल्फ पर रखा गया है।)

जब आप ज्यादातर अपनी पसंद की चीजों पर काम करते हैं, तो यह वास्तव में पोर्टफोलियो में "आप" को बाहर लाता है। दूसरी ओर, कम से कम एक पूरा खेल होने से पता चलता है कि आप खेल बनाने के "निर्बाध" भागों के माध्यम से खींच सकते हैं। कम परिचित क्षेत्र में तोड़ने के लिए कुछ हद तक लचीलापन होना अच्छा है, लेकिन अपने आप को बड़े पैमाने पर मजबूर न करें। आप काम में लगाए गए उत्साह और रुचि के स्तर से अच्छे पोर्टफोलियो बता सकते हैं, और ब्याज के अपने क्षेत्रों के आधार पर परियोजनाएं स्वाभाविक रूप से सबसे अधिक पॉलिश प्राप्त करने वाली हैं। तो जो भी आपकी रुचि का क्षेत्र है, आपको अंततः नौकरी के लिए प्रोग्रामिंग के उस क्षेत्र की ओर ध्यान केंद्रित करना होगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.