¿Qué tan fácil es pasar a la programación de juegos como en Bethesda o Treyarch, de ser ingeniero de software en una empresa como Google?

Puedo decir que trabajo en una de las compañías mencionadas en su pregunta. Inicialmente estaba solicitando YouTube porque tengo algo de experiencia con el aprendizaje automático, pero estaba un poco oxidado y el entrevistador telefónico se dio cuenta de esto.

Hay MUCHOS niveles en los que alguien puede ser útil en la industria de los juegos. Cada vez más juegos también están evolucionando hacia experiencias en línea, lo que proporciona una mezcla de crossover en habilidades con algún lugar como Google, en las áreas de servicios de descanso, etc.

Los juegos son una fuente constante de errores (potencialmente malos), por lo que puedo decir con seguridad que si ha trabajado en Google en una posición altamente técnica, podría ser útil para cazarlos, lo que se reduce aproximadamente a horas hombre sin importar cómo rebanarlo. Cuantos más, mejor.

Como comentario adicional, agregaría que sería muy beneficioso para el solicitante tener un área de enfoque dentro del contexto de los juegos, ya sea: productor, programador de IA, programador de juegos, programador de renderizado, programador de servicios de back-end. Cuanto más se especialice, mejor lo hará y más rápido avanzará.

El hecho de que no sea Google no significa que los juegos no sean mucho trabajo; son. Yo y algunos de mis compañeros de programador trabajamos regularmente más de 70 horas a la semana durante el tiempo de crisis. Pero también son divertidos, y el espíritu de tonterías impregna reuniones y correos electrónicos.

Nunca he trabajado en un lugar tan grande o tan alto como Treyarch o Bethesda, así que no comenzaría a saber cómo te juzgarían.

He solicitado y me han entrevistado para trabajos en otros lugares más grandes, muchos de ellos con los dedos en el desarrollo del motor.

En estos casos, un ingeniero con fundamentos extremadamente fuertes en C ++, sin importar si su experiencia es en ingeniería de software o juegos tradicionales, siempre sería preferible a alguien con muchos títulos enviados que solo pudieran demostrar conocimiento informal. Estrictamente hablando, las pruebas de programación son muy similares a lo que los desarrolladores de software de nivel empresarial les dan a sus solicitantes y son juzgadas por el mismo estándar.

Fui en la otra dirección, pero creo que se aplican principios similares: los buenos programadores son buenos programadores, sin importar lo que estén haciendo. La parte difícil será hacer que tu currículum destaque sobre todos los otros buenos programadores. Como dijo Greg, asegúrate de tener algún nivel de especialidad: estudiar motores de física, renderización o incluso programación de juegos. Esperarán que sepa cómo utilizar un álgebra lineal simple para resolver problemas centrados en el juego, en particular, debe saber cómo usar productos de punto y cruz para resolver problemas matemáticos en 3D. Configure una cartera o GitHub con algunos ejemplos de cosas que ha realizado en el proceso de aprendizaje. Puede comenzar a funcionar bastante rápido para mostrar el renderizado y el juego en motores existentes como Unity y Unreal. Escribe un sombreador personalizado o un juego simple (divertido). La física puede requerir algo más personalizado para presumir.

También te sugiero que analices los desafíos de la vida laboral en la industria de los videojuegos antes de dar ese salto.

Contribuir a proyectos de desarrollo de juegos (4); Quería resaltar que todo se trata de la producción del juego, la idea y su visión. La ingeniería de software o la resolución de problemas juegan un papel importante en la creación de soluciones inteligentes, rápidas y eficientes, pero cuando se trata de desarrollo o programación de juegos, confía en mí; no es como el desarrollo o programación de algoritmos regulares; se trata principalmente de producción de juegos y gamificación. Solo hay una porción más pequeña de creatividad o desafío de diseño de software (1-5%) en la mayoría de los casos.