Що потенційні роботодавці шукають у гарному портфелі?


21

Друг з роботи, і я хочу, щоб потрапити на інді-сцену для розвитку ігор. Я зробив декілька технологічних демонстрацій, де демонстрував різні ідеї та підходи до різних проблем. Тепер я відчуваю, що настав час, щоб ми взяли на себе зобов'язання над проектом, щоб розробити портфель для подальшого вниз.

Я дуже боровся з тим, як почати власне проект, точніше створити двигун або використовувати пакет OTS, або використовувати один, потім створити його, або створити, потім використати інший .. і т.д.

Що краще виглядає на потенційних роботодавцях? Менший асортимент ігор, що включає ваш двигун, або (можливо) більший, який був побудований з використанням чогось ОТС?

Я програміст. Я не художник. Я буду виконувати більшу частину програмування для цього проекту. Мій приятель також розробник, але він також володіє графічними інструментами (таким чином, він стає художником).

На роботі ми обидва .NET розробники (C #). Я знаю, я знаю "Ну тоді використовуй XNA", деякі будуть кричати на мене. Демоси, які я до цього часу завершив, були в XNA. Але у мене є певні проблеми зі створенням портфоліо XNA. Хоча приємно абстрагувати DirectX, я хвилююся, що я не можу створити необхідну базу знань, щоб легко вийти за рамки XNA. Протилежним до цього аргументу, ймовірно, "ви можете легше перейти на DirectX після XNA", але оскільки я перейду кар'єру від розвитку бізнесу до розвитку ігор, чи варто навіть зосередитися на XNA в даний час? Або потенційні роботодавці хихикають, коли я скажу XNA?

Чи повинен я застосувати досвід XNA, знаючи, що поняття та отримані уроки здебільшого перенесуть? Або витратити мій найцінніший ресурс (час) ще десь?

Шукаєте поради у будь-якого ветеринара.


Запитайте себе, що ви хочете продемонструвати більше: гнучкість або увагу до деталей. Це ваша відповідь. Особисто я йду на гнучкість.
Кріс Берт-Браун

Відповіді:


44

Я був програмістом у галузі консольних ігор майже чотирнадцять років і часто брав участь у прийнятті рішень щодо найму.

Отже, кажучи про одного з таких потенційних роботодавців, при оцінці можливого працівника є три речі, які я шукаю в новому наймі, і я шукаю їх у такому порядку.

  1. Чи впишеться ця людина в мою команду? (соціальні, гігієнічні тощо)
  2. Це людина, яка швидко навчається? (часто неправильно виражається як "чи ця людина розумна?")
  3. Чи є у цієї людини якийсь відповідний досвід, який допоможе мені?

Тепер, вирішуючи ваше питання. Це питання про те, «який тип проекту я повинен робити» - це найменш важливий із тих критеріїв, які мене цікавлять. Мене набагато більше хвилює те, чи ти будеш соціально вписуватися в мою команду, і про те, наскільки добре ти зможеш швидко вчитися новим, ніж мене цікавить, чи використовував ти XNA або свій ігровий движок в якомусь попередньому проекті. За великим рахунком, я припускаю, що мені доведеться навчити вас в нашому власному ігровому двигуні, і тому ваші попередні проекти для мене зовсім не мають значення. Це, звичайно, якщо у вас чарівно не виникає досвіду роботи з певним інструментом чи технологією, про яку мені потрібно когось знати. Але це незвично; Зазвичай я припускаю, що мені доведеться навчити вас використовувати наш API.

Все це не означає, що я не хочу, щоб ви робили домашні проекти. Я абсолютно так роблю. Але мені не дуже важливо, що це за проекти, або які технології вони використовували, тому що вони, ймовірно, не матимуть відношення до того, що мені потрібно для мене зробити, оскільки ми будемо використовувати різні бібліотеки чи API.

Але я хочу, щоб ти розповів мені про свої проекти. Я хочу побачити, наскільки ви захоплені, коли розмовляєте про них, бо це говорить мені про те, яка ви людина (див. Пункт 1, вище). Я хочу почути про проблеми, з якими ви зіткнулися, і про те, як ви їх подолали при розробці вашого проекту (див. Пункт 2 вище). Я абсолютно хочу, щоб ви виконали принаймні один проект - здатність просунути біль і насправді закінчити щось, що багато чого говорить про таку людину, яка ви є, і каже мені, що ви хтось, на який я зможу покластися на if ("коли") речі стають жорсткими.

Так чесно, жоден варіант не є "кращим"; важливо - добудувати щось, що завгодно. Будь-яка технологія, яку ви вивчаєте на шляху, - це глазур на торті, але майже напевно не те, що змусило б вас найняти вас.

(Але з усім , що сказало .. я буду очікувати вас бути досвідченими в C ++. Так чи інакше, вам дійсно потрібно вивчити C ++, щоб отримати роботу в промисловість основних ігор. Ваші домашні проекти не обов'язково повинні бути в C ++, але я сподіваюся, що ви зможете продемонструвати вільне володіння ним.)


3
Це фантастична відповідь. Дуже дякую, що фактично змінив мою точку зору на процес найму.
ultifinitus

Можливість використання програмного забезпечення сторонніх виробників - це завжди великий плюс, який, можливо, підпадає під "швидко вчиться".
Валмонд

Я не думаю, що це, ймовірно, ви коли-небудь зустрінете програміста, який не знає, як працювати разом із стороннім програмним забезпеченням. Усі вже пишуть в документований сторонній API, будь то libc або STL, OpenGL або DirectX або API API чи інше. Це ті ж навички в комерційній галузі, що часто використовуються менш відомі бібліотеки. :)
Тревор Пауелл

2
+1 Портфоліо не потрібно дотримуватися суворих стандартів. Суть їх полягає в тому, щоб вони слугували майже як деталі для бесіди для інтерв'ю, щоб вони були цікавими з точки зору програміста.
ChrisC

1
@ShuvoSarker Для великих компаній це все ще так. EA не очікує, що ви будете експертом у їхньому двигуні Frostbite, коли вони думають про те, щоб ви найняли вас. Ubisoft не сподівається, що ти знатимеш Пролісок. Можливо, це змінилося і для менших компаній, проте за шість років, як я опублікував цю відповідь. Єдність стала достатньо великою силою у просторі малих студій, що дуже реально думати, що пізнання Єдності, безумовно, може допомогти вашим шансам у такий спосіб, коли це було не так, коли абсолютно кожен користувався власними власними двигунами.
Тревор Пауелл

12

Одне, що інші ще не згадували, - це важливо закінчити свої проекти.

Маючи портфоліо з купою незавершених речей не так вже й вражає, як портфоліо з однією закінченою, добре відшліфованою річчю.

Крім того, якщо ви базуєте свою роботу на наявній роботі когось іншого (наприклад, деякому двигуні з відкритим кодом, або вільно доступних арт-активах), не забудьте вказати у своєму портфоліо, яка саме ваша частина.


1
Не на 100% впевнений, я згоден, ми отримуємо багато людей з незавершеними речами, це дуже часто, і це не має великої кореляції з якістю їхніх речей. Завершення чогось демонструє відданість, а не здатність.
Кріс Берт-Браун

Думаю, у кожного свої.
Jari Komppa

4

Мені здається, що відповідь залежить від того, яким ігровим програмуванням ви хочете займатися.

Якщо ваша мета - бути кодером двигуна або графічним кодером , ви отримаєте користь від того, щоб зайти під капот і дізнатися, як працюють двигуни. Це не означає, що ви не можете використовувати XNA або інший позаштатний двигун, каркас тощо. Ознайомлення з внутрішніми якостями якісного двигуна - це чудовий спосіб навчитися будувати якісний двигун! Якщо ви йдете цим шляхом, вам не обов’язково навіть писати будь-які фактичні ігри. Портфоліо автономних графічних демонстрацій та / або нетривіальних розширень до існуючого двигуна (наприклад, впровадження нового шейдера в двигун тощо) допоможе вам добре. Ви можете подивитися на моєму портфоліо графічних демонстрацій тут; Зараз це застаріло кілька років, але це в основному те, що отримало мені роботу з графічного програмування в ігровій студії.

З іншого боку, якщо ви хочете бути геймплейним кодером , одним із людей, які працюють над ігровою механікою, управліннями, AI противника і т. Д., Ваш час не буде витрачений на копання Direct3D. Звичайно, корисно мати загальне розуміння того, як працює графіка, на високому рівні, але в професійному контексті ви, мабуть, не будете контактувати з графічними матеріалами низького рівня дуже часто. У цьому випадку я б абсолютно рекомендував використовувати позаштатний двигун, щоб ви могли витратити свій час на створення справжніх ігор.

Отже, підводячи підсумок, якщо ви хочете займатися геймплеєм, просто використовуйте існуючий двигун; якщо ви хочете робити двигун / графіку, то створіть власні речі та / або розширіть існуючий двигун.


Я ціную вашу відповідь. Це дає мені краще відчуття напрямку. Я більше бачу себе програмістом двигунів. За витрачений час (виходячи з вашого досвіду), чи вважаєте ви, що краще пропустити абстракцію і зануритися в D3D?
Самості Джастін

1
D3D було б чудовим місцем для початку. Пізніше ви також можете перевірити деякі двигуни з відкритим кодом, щоб відчути, як інші зробили масштабну структуру та організацію. Це також хороша практика стрибати у велику і незнайому кодову базу і намагатися зрозуміти її, не читаючи кожен рядок коду.
Натан Рід

Гаразд, ваша відповідь у поєднанні з Тревором справді дала мені те, що мені потрібно. Сором я не можу вибрати дві відповіді; тому +1. Дякую, Натане Я дійсно ціную це.
Самості Джастін

2

коли я тільки закінчував університет, в цій статті було представлено моє портфоліо. здається, непогана ідея, що робити, а що не робити, коли збирати свій портфель

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


1

Не робіть свій портфель на основі того, як ви сприймаєте "стандарт". Ви повинні працювати над проектами, які вас цікавлять . Якщо вам подобається ігрова механіка, продовжуйте і робити купу ігор. Якщо вам подобається створювати цікавий AI, можливо, зробіть демонстрацію для налаштування, подібного до RTS. Як приклад, у мене все більший інтерес до графічного програмування та вкладання більше часу на вивчення концепцій візуалізації та застосування їх у своєму двигуні. (Отже, мій ігровий проект тимчасово поставлений на полицю.)

Коли ви працюєте в основному над речами, які вам подобаються, це дійсно виявляє «ви» в портфоліо. З іншого боку, наявність принаймні однієї завершеної гри показує, що ви можете перетягнути "нецікаві" частини створення гри. Добре мати певну міру гнучкості, щоб пробитися на менш звичну територію, але не змушувати себе сильно на ній. Ви можете розповісти хороші портфоліо з рівня ентузіазму та зацікавленості у роботі, а проекти, що базуються на ваших областях інтересів, звичайно, отримаєте максимальну корисність. Отже, якою б не була сфера ваших інтересів, вам, зрештою, доведеться зосередитися на тій області програмування для роботи.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.