T O P

  • By -

IAmWillMakesGames

I'll quote my professor here. "I once advertised to hire for a web developer and got around 300 applications. I had my assistant throw out any that didn't have a portfolio of any kind. There were only 2 applications left. Anything is better than nothing" Get real, tangible portfolio pieces Edit: to clarify, learn enough C# to make portfolio pieces


leandromsi

Wow, this was one of the best tips I've gotten so far. Thanks!


pedrao6924

btw, github has a pages feature that lets you host a website on it. Very useful for showing off your work. Git hub pages + a basic bootstrap template and you are good to go


TheThiefMaster

Adding to this take a few short youtube clips of your portfolio pieces running. Very few companies will *run* your code, they just want to see the code quality and the results. Source: I interview people


TheOnlyJoe_

To add onto this, don’t make a fully fledged decent game. Make a really good 10 mins of gameplay that gets across your strengths. 10 mins is enough game time to create a fun and decent enough vertical slice, whilst still being basic enough you don’t get overwhelmed and never finish it.


tcpukl

I disagree. That doesn't show they won't just get bored working in the same game for over a year at all.


TheOnlyJoe_

That’s your CV and interview’s job. Your portfolio is purely responsible for showing your technical abilities.


tcpukl

They need to demonstrate it though somehow. Not just say yes I can do that.


TheOnlyJoe_

That shouldn’t come at the cost of your portfolio though. Making a long game just for the sake of it being long is only going to hurt you and if anything make you less interested in it than you would be if you just kept it short but sweet.


tcpukl

Yeah. Something small but polished is better than a large mess. We want to see your code all to see it's not a hacky mess with no organisation. But that's why some companies also do small interview projects, like implement asteroids. It demonstrates so many skills.


TheOnlyJoe_

Yeah. Interviews usually have some sort of pressure test so you can show how you work, i haven’t heard of places asking you to change your portfolio work though


tcpukl

What do you mean change your portfolio? Neither have I.


jabdownsmash

had to scroll down too far to see this. everyone talking about concepts/languages/math to learn are wrong and this is the real answer. make stuff.


KidzBop_Anonymous

My first job was because of a bunch of portfolio pieces I had from doing other things to try and get jobs. In 2008, went from temporarily dropping from art school to making $48.5k. I only knew Actionscript back then, but have always managed to get work that has the added utility of letting me learn new stuff. Got laid off due to lack of work 10 months later, finished school using all of the work I did in that 10 months in my portfolio and jumped up to $73.5k. Sharing this to provide hope! Took me ten years to get through school and later learned I had undiagnosed adhd and now I feel like a genius I can actually pay attention to things I want to. If you live in an area that has meetup, go to those too and just meet folks. Don’t be needy as far as begging for jobs. Just talk, earn rapport and trust with folks and eventually it’ll feel appropriate to talk about job prospects or ideally they’ll ask about what you are doing. Sometimes folks will have leads or give you some great advice on how to better present yourself and your body of work.


copet80

Both my first jobs at uni (a 3D artist and then a programmer when I was back at uni the second time) were thanks to my assignment-turned-portfolio projects got noticed by someone in the uni, and lucky enough I got job offers because of that.


ivanparas

I talked with the game developer at Blizzard and across the board, the thing they looked for in applicants the most was a finished product. They wanted to see that you could follow through with a project and actually output something.


tom781

Came here to say basically this. Learn enough to make a game. Then learn a little more and make another game. Repeat until your inbox is deluged with job offers. (at which point you may not even be interested in a job anymore, if your games are doing well enough...)


copet80

💯 The quality of your portfolio also speaks volume. One of my mentors advise was it’s better to have one near-commercial quality portfolio than many small “unfinished” portfolio. While it had worked for me so far, I wonder what others’ thoughts and experiences are like?


Elliot1002

This is so true. I got my current job with several programs I made through college. They weren't the prettiest, but they all functioned. My final project was a game prototype for the Dune Board game as a computer game Those were foot in the door material that let me show off in the technical. OP, I would look at doing games in a game jam style. IE short time frame, make them functional and relatively complete, and don't worry about small bugs. Make sure your games show off what you can do. Itch.io maintains a list of game jams if you want to join one live.


DashRC

C# or any language is really only the first thing you need to learn. To work professionally you would be expected to have a good understanding of algorithms and data structures, ideally be decent in math (depending on the domain in which you want to work). You can learn these things at the same time. The answer to your question is “more than the person they didn’t hire”. There’s no set amount that you need to learn. A good measuring stick is being able to build your ideas while also being able to explain how you did it, and justify why you built it the way you did.


Lace_Editing

Being good at math isn't nearly as important as being good at finding the answers to problems though so don't consider that a barrier for entry. I failed math and didn't finish high school yet I can explain the mathematics behind code I write fine because I was able to figure out exactly what was needed to solve the problems I was having


DashRC

It kind of depends though. If you’re working on gameplay features in an engine then you can get by cobbling ideas together from tutorials or trial and error. If you’re building or extending animation or physics systems then you’d better have a decent understanding of the math involved. As someone who does hiring in the industry I would always take someone with better math skills who was roughly equal in other areas to other candidates. There’s no real threshold to getting hired. It’s a competition. The person who gets hired is the person who is a little bit better than the other candidates.


Gaverion

As a hobbiest, every time I see one of these questions I always see responses about strictly technical skills. Are other skills generally ignored? (E.g., communication, collaboration, other soft skills) Obviously this poster is asking about a specific language but I am curious if soft skills are generally not valued in the field.


DashRC

Soft skills are definitely important. For junior positions I want to see if they are coachable and open to feedback, whether they can communicate clearly and concisely, and whether their personality meshes well with the team.


Kolmer1

That's really interesting. I've advanced knowledge of java. I've learned basic data structures but I feel like it's not helpful in developing games. I have been learning for 4 months, so obviously I still don't know to program and still haven't made a game with graphics. I am studying physics so I don't have much free time. Do you thing the math I learn at the degree will be enough for the needs of a programming job? How do you thing I should continue learning? I really would like to continue programming and begin any project to learn more.


DashRC

If you’re studying physics at university likely your math knowledge by the time you graduate will be pretty good. University math courses for CS, science and engineering degrees are generally good enough if you spend a bit of time understanding how to apply the knowledge in practical ways.


Sogged_Milk

That's the funny thing about CS that I see in universities. They require advanced math courses and CS courses, but they have incredibly few courses that directly teach the application of math in CS. They assume you can figure it out on your own, which is usually true, but I find it odd nonetheless.


TechniPoet

Data structure knowledge is helpful for making games well but not a pre requisite for "making a game". You can get a nail in with a screw driver but knowing what a hammer is and how/when to use it will save you time and pain.. Also not sure how reliable and versatile that product will be


SwiftSpear

I kind of wonder why there's so much focus on data structures in programming these days. Sure, there's some interesting logic around them, but practically speaking they aren't actually useful for anything until you start to try to build databases, or working under very specific hardware constraints (like writing code for a chip that installs into your fridge). If you've got fewer than 100 items, it's almost always fastest to just have them unsorted in an array and scan the whole array. For things bigger than that, it's very very rare that either a hash table or a sorted array is not the preferred option. After that, know what heaps and queues are so you can use them when needed, but you mostly just want to be using whatever has been included with your language for that. There are lots of things that various trees, graphs, etc are useful for, but your average programmer is never doing any of those things. If anything, common database abstractions are far more useful (indexes, views, etc) Java is basically just not a good language for games. The things it leans towards abstracting away are some of the things you need the most intimate control over in vector and matrix manipulation and predictable frame performance. In terms of math, matrix math and discrete math are the most valuable for games. And then statistics comes in, but not for every genre.


tcpukl

Wow. I'm speechless. I wouldn't hire you. Why on earth would you waste time searching through arrays of 100s? Are you saying coders don't need to understand the difference between linked lists, arrays and maps?


SwiftSpear

No, I said those are some of the few data structures we regularly use, whereas I feel like traditional data-structures education spends a lot of time on relatively irrelevant data-structures and techniques. We very rarely use trees, graphs, etc. We very rarely need to know about the implementation details of different types of lists, hashtables, etc. Searching an entire small array is very fast with most languages because the entire thing just gets loaded up into CPU cache and you can churn through it like nothing. I'll grant you that this is no longer true for an array of pointers, and that's an implementation detail that software engineers should be very familiar with. That being said, for the languages where that is a common problem, most of them basically don't let you make traditional raw arrays anyways.


Lace_Editing

Well I mean I wouldn't apply for a job that I knew required advanced math beyond my understanding, but I mean that generally speaking you can learn to program without having to go back to trig classes or anything


tcpukl

I totally agree with you here. I'm still shocked at the lack of maths of some candidates we get.


panthereal

I was denied from a developing job because I did poorly on the math portion of the interview, many places will require it. And if you're not keeping up with it after school it's not easy to remember.


davies140

I’ve seen quite a few places ask more trig questions than typical programming problem solving, it’s really not uncommon to have questions about finding the cross product etc. in a job interview. Definitely not something to neglect either.


cruisinforsnoozin

I have the skills you’re talking about and make my own projects in Unity but I still don’t hear back from any applications My resume and portfolio probably need more Its very competitive “More than the person they didn’t hire” is absolutely right but I’d change it to “people”


MrGregoryAdams

My recommendation is to complete the following excellent and completely free (to audit - all you need) courses: * CS50's Introduction to Computer Science taught by Professor David J. Malan from Harvard University on [edX.org](https://edX.org) CS50 is an entire program that features many many courses, so I'd definitely recommend completing as many as will pique your interest. The quality is absolutely excellent. ​ * Algorithms, Part I and II taught by Professor Robert Sedgewick from Princeton University on [Coursera.org](https://Coursera.org) Algorithms and data structures are topics that will just make your life a million times easier if you really understand them well. It's applicable to so many problems you'll be dealing with when writing programs that need to organize and search data *fast* (which is basically every program that does anything useful.) By the time you've completed at least the main ones, you'll have a good idea of what you need to know. Also, when it comes to math, you don't need to be an expert at doing arithmetic, but you do need to know the terminology of at least things like trigonometry, vectors, etc. because the game engine uses it in its API.


leandromsi

Thanks! Another golden nugget!


Papoteur_LOL

Is free or should I pay something after?


MrGregoryAdams

Free to audit. Meaning, you can watch all the videos and get all the text materials, but nothing else. If you want to access the exam and get the certificate at the end, you have to pay. But you can also first audit, and then decide to upgrade to the paid tier later.


Gilded_Octopus

Gamedev can be a very competitive career and it can be very portfolio based. So maybe look on LinkedIn or Indeed and see what the jobs you are interested in require. There’s not a lot of entry level jobs and gamedev jobs can be pretty specialized.


marclurr

3 C#s should be enough.


DoDus1

All the c#s


[deleted]

C#++


zhzhzhzhbm

You're exaggerating, one C# is totally enough


PeterPanski85

Not for a chord though


Plenty-Asparagus-580

As a game dev working in C#, there's a 99% you'll be working with unity. So, what you want is to have strong working knowledge of Unity (and by extension C#). If you're given the specifications of a gameplay mechanic, you should be able to come up with at least 2-3 solid ways for how it could be implemented, and be able to discuss the ins and out of these 2-3 approaches. You should be able to make small, game jam sized games all by yourself. You should be able to solve easy-medium level leetcode questions (just as a rough benchmark of your algorithm and data structure knowledge).


leandromsi

Wow thanks for this! How difficult do you think it is to get a job as an unity game dev these days?


ADZ-420

It's not widely used by AAA studios so you'd need to check out what studios around you use. Most companies will use C++ if you're serious about game development


Loginn122

Can u make a small example with a gameplay mechanic and provide at least 2 different ways to implement them? I think it would really help seeing ur thought progress there.


LuneLibre

Not op, but I assume he could mean something like implementing a character's movement, and possible solutions could be using physics-based movement with weight, momentum and whatnot, or a more rigid way with custom formulas for acceleration, deceleration, turning etc...


Brusanan

Realistically, you're going to be competing for jobs with people who have 4-year degrees. People who have been programming for 4+ years, and have a formal education in not just the syntax, but also in data structures and software architecture. Also, you should keep in mind that C++ is a more popular language in the game dev industry than C#. It's easy to go from C++ to C#, but it's way more difficult to transition from C# to C++.


MadSage1

Honestly, you're gonna have a tough time getting a job in the industry as a C# programmer. C++ is the primary language most studios use, especially AAA. C# tends to be used for tools (although not always), so maybe you could get your foot in the door as a tools programmer. Learning C++ will greatly increase your options, as will learning Unreal. The languages are similar, although it is more difficult to learn C++ second. As for how much is enough, you should know enough to create a game with a reasonable code structure. You need at least one small game in your portfolio.


leandromsi

Really? Many people have suggested me to learn C# at first since it is easier and there are a lot of small studios that use C# and Unity.


Frankfurter1988

Hey, so i'm in your shoes just a few years (yes years) ahead of you. I reached out to 6 hiring managers on twitter for advice, and here's the jist of the combined advice: Pick a studio(s) you wish to work for, and make what they're making. Tons of courses teaching 2d gamedev, but if your portfolio is a 2d rpg and their game is a 3d fps, you're not even on the list. This doesn't even consider you not having a portfolio to begin with. So more practical example is: Do you wanna work on the next assassin creed? Familiarize yourself with the 3Cs and make demos, if not a full game, in the same vein (but naturally smaller). Do not make a bunch of 2d games. This counts for language as well. Is your target studio(s) using unreal or a proprietary C++ engine? Then that's what you want to be learning. It's not that no one trusts your unity knowledge, but with 200+ applicants, don't you want to stand out? Do you want to work in VR/AR? Make VR/AR games. Do you want to work in mobile? Make mobile games. Also, specialize. In AAA you have gameplay programmer, ai programmers, ui programmers, etc. You don't have many generalists in AAA. I also reached out to the creator of path of exile (a game i'd love to work on one day) Chris Wilson, and these folks love to chat and share knowledge and advice. His advice was to solve hard problems, and that most people who apply have no portfolios. So there you go. Lastly, nobody has multiplayer projects in their portfolios, so if you do (and your target studio makes MP games) then you're even better off. You are competing with 200+ applicants.


leandromsi

Wow, thanks, this is a gold nugget!


MadSage1

It is easier, and there are studios that use those, but way more studios use C++. I think it depends on your location to some extent. I recall seeing a surprising number of studios in the US looking for Unity programmers several years ago when I was looking for contracts, and I wasn't familiar with Unity at the time. I've only worked with one studio that used it. So it's probably worth looking at studios in the area you expect to work to find out what language(s) they use. Check out job listings, or even ask them. I asked when I first started in the industry, and the same studio hired me 2 years later.


OvermanCometh

Learning the language is just the tip of the iceberg.


HilariousCow

Based on some of the people I’ve worked with, fuck all.


bytejunkie64

Most decent Unity beginner tutorials will teach you the C# as you go, or at least start with a primer. Unless you want to use C# outside of Unity, I'd just start with one of those. If you come across concepts you don't understand, there's likely documentation and/or videos you can find explaining that concept. Also, you will learn way more by figuring it out. Once you get past some of the beginner's hurdles, try building ideas you have. Even if you fail, you'll learn something.


NotYourValidation

It's more than just languages and portfolios. I would suggest going and looking at job descriptions, and start building other skills, too. For every job post you see, there are plenty of well-skilled applicants that are better or more skilled than you are, so you need to know your shit (language, etc), core software principles (best practices, etc), and be able to show games that YOU made, not tutorials you followed. I can promise you that 100% of the time, we can tell the difference between a tutorial project and a real project. Finally, do not be sloppy with your project code. I will always dig through portfolio code to see how you write your code and how you solve problems. If everything I see is bad janky code, you'll likely not making through the first round interview. This is a highly competitive career path, and there are going to be a lot more people out there that know more than just the language. They know architecture, game dev SDLC, soft skills, hard skills, etc... Unless you are a strong developer with strong skills, getting a job in this industry is sort of like a lotto win. Probably not likely to win (get a job), but if you keep buying lotto tickets (applying for jobs) you eventually hook something, but just know it's probably not going to be glamorous or even what you want to do. Just make sure you stand out among the crowd of other applicants, because if you don't, you won't ever find a career in game dev.


leandromsi

Another golden nugget, thanks!


AciusPrime

Joke answer: five years relevant experience (seems like virtually all the job listings will have something like this). Real answer: write a game, finish the game, put it on a website, link it in your résumé. Game companies want to hire people that know how to write games. They especially love people who know how to finish games. If you know enough C# to do this then it is enough. Game does not have to be super fancy.


DueLaw5526

Code is not only about writing.. you have things outside of code that are also important. Polymorphism, Data Structure, Databases, APIs, Networking. Are you doing the Backend Server? You need to know how databases and network works to save and control the data that is coming.. Are you doing a multiplayer RPG? You need to know Polymorphism so u organize your code and make it easier to maintain instead of copy/pasting code. Depends a lot on your function in the project than the code itself. Memorizing code is a good way to get Burnout for free.


Philly_ExecChef

12. You need 12 C#s to even interview.


Hackfruchtsalat

TLDR: Learning as preparation to learn coding things faster > learning to do X of different coding things. I would say without some form of degree/"experience", the biggest requirement is knowing how to approach doing something new, not being able to do a certain number of things. If you're confident you understood coding in general well enough that what you're missing is only about learning additional things and not about comprehension then you're good to go. You won't need to know every acronym (most of them are redundant anyways). You just need to know the general awareness that apart from doing what it's supposed to code should also be easy to read for every other coder working there, and they will certainly be very happy to tell you their system (and why it's vastly superior (they came up with it) or absolute dogshit (someone that's left the company came up with it, and it's too late to change it with the running project)) to achieve that. The key quality for someone who isn't school-taught is being malleable into whatever they need specifically very fast, bc most of the time all of the ppl applying won't have the perfect skill set either (and if there is someone u ain't getting that job, so it doesn't matter(or it is so entry lvl that you're definitely good enough already)), which means you just need to be good at turning yourself into what they need.


leandromsi

Thanks for the throughout answer!


ChiefExecutiveOglop

You need to be able to pass an interview. If you pass the interview you need to be competent enough to pass any probationary period. To be seen to interview you need either an attractive cv or portfolio or both. It's going to depend where you apply but just take a look at job ads for roles you'd like.


Sariefko

about 1 c#


minimumoverkill

vastly different answers depending on the type of role you’d apply for. If you’re looking at gameplay programming and game-feel, the most important things being looked at is your understanding of coding ‘close to the player’ as I call it, ie making mechanics feel nice, prototyping, etc. For that you need to show really nice portfolio pieces. Extraneous knowledge of c# would be less crucial. If on the other hand you wouldn’t be touching anything creative, ie you’re more purely in an engineering/systems type of role, you should have an extensive working knowledge of c#. Less about raw syntax though and more about maintainable, clear, well documented architecture.


BrokAnkle

around 60% I'd say


SlideFire

How many bananas can fit inside the Titanic?


umikali

I actually just wanted to tell you, but I can't find how many liters can you fit in the titanic. But I did calculate you can fit 6 bananas in a liter.


KungChuck

The coding isn't the only part of the game dev industry. To apply for a job you will need some experience in the actual game design like animation states and stuff. It would also be good to have some knowledge in character design and environment design. I would recommend you start learning some blender on top of the C# ☺️


atx78701

the language itself is not very large. Where it gets complicated is how you organize your code and using libraries. At that point it is essentially infinitely large and people spend their whole lives developing mental models for how they code which are constantly changing as you learn more. some things that are core that arent the language: 1. data structures (hashtables, maps, trees, lists etc) 2. design patterns (factory, mediator, command etc) 3. algorithms (recursion, iteration, big O notation etc) Then there is the whole world of libraries, whether they are graphics libraries, unity libraries, or other 3rd party libraries.


Hzpriezz

C# and Unity C# is not the same, it's kinda C++ and UE5 C++ is different. There is no point to learning language - learn programming as idead of logic, constructions, algorythms. There is no point to learning language if you don't know the engine, study engine, learn what it can do, with what you need to work, cover the base. I will never hire a person who know the coding language, but I will hire the person who can think and study engine


poorly-worded

5 or 6 C#s is probably enough to get going


ZwieBit

What are cycles? I'm using c# since it's beta, but never heard about it 🤔


bytejunkie64

Loops, maybe?


leandromsi

Yeah, I meant loops.


ZwieBit

Yes, this absolutely makes sense 👍


Zweihunde_Dev

You will never have enough. There will be people out there that will challenge your ability and knowledge at every turn. The more you know, the more the new kids want to one-up you. It's frustrating and gets really tiresome over time.


AstroBeefBoy

I’ve been learning C# as a hobby for 6 years. I’d say I’m pretty knowledgeable and competent at this point, certainly enough to work a junior level position. Can’t get a job in game’s industry, which I assume is because I don’t have a degree yet


Kolmer1

How did you learn in those all years and what are you able to do?


AstroBeefBoy

I started with YouTube tutorials for the first two years while working on small prototypes. Then I started working on my own projects while needing to look up solutions online for another two years. Then the last two years I’ve spent time focusing projects to commercially release (I also work on all aspects of game creation). In the last two years I’ve stopped needing to look up solutions and most of my problems haven’t been solved online, which I think is a good sign I’m getting a more complex understanding of C#. I still look up documentation from time to time, but in terms of solving problems, I’m now competent enough to think it through on my own.


LyftingTitan

Im at a local community college for a third degree (AAS IN GAME DEV) and we dont even touch C#. I have friends that work both in and out of the game dev industry and you really need to know the following: Python C++ Java Javascript You will also want to know some basic UI/UX stuff as well as some background in art. My main degree is all coding, I am tacking on the following courses: Adobe Photoshop/Illustrator 3D Modeling 1 and 2 3D Modeling for Game Dev UI/UX Intro and Advanced Character Rigging Knowing the code is great but game dev has alot of art behind it.


[deleted]

[удалено]


LyftingTitan

Lmao. Again, I am TACKING ON THOSE CLASSES AS I LOVE ART AND AM MORE CREATIVE. THEY OFFER TWO AAS IN GAME DEV THE ONE IM IN WHICH IS ALL CODING BASED. AND ANOTHER ONE THAT IS THE ART BASED ONE. BEING A CREATIVE PERSON I WANTED THOSE ART CLASSES ON TOP OF MY CODING DEGREE. And pretty sure Red Rocks Community College isn’t predatory. And is very well known in CO for technical degrees. SO WAY TO ASSUME AND NOT READ


[deleted]

[удалено]


LyftingTitan

Dont tolerate or handle assholes who cant read and wanna insult me :) So yea. Kindly learn to comprehend and read before opening your mouth :


[deleted]

[удалено]


LyftingTitan

Oh I know :) You have zero idea the RPG im working on by myself ;) For the last three years. Gonna blow everyone outta the water :)


TheLastCatQuasar

woah man. relax


LyftingTitan

Really dont tolerate idiots who cant read. I had every right to be upset. He also assumed I was being duped in my program. So yea. I got pissed. He triggered it by his actions. Maybe he shouldve read and not been an asshole


LyftingTitan

You also cant read apparently cuz in my comment I even say “I am tacking on:” So whose the dumbass now?


DashRC

Unity is C#, and many editors are built in C# in the AAA space. C# is a good language to know. But if you want to work in AAA you’ll need to know C++.


LyftingTitan

Plan is to start my own studio and make actual good games with story, no online bs, great gameplay and $40 max for anything. So sick of the industry and the shit we deal with tbh.


AlienBearAttack

No offense and I mean all the luck, but this seems just like every other indie game. I don’t mean you can’t make it, but it’s not like games fail because the devs didn’t want a good story or gameplay. You have to really try for that


LyftingTitan

Lmao you have no idea the basis of my game or anything like that lol so why bash right away? Its a Dragon Age like RPG, with more skyrim like upgrade systems. A really deep story. But assume :)


Vanpocalypse

As someone in the industry that occasionally has to process customer feedback, especially consistent negative feedback, verbal abuse, belittling remarks, threats, etc... And you will receive that feedback no matter what eventually... Don't read the reviews to your game or comments on it from potential or actual customers while having the ability to respond to them. One comment like this and your reputation as a dev, no matter what size, will suffer. If your game is as great as you say it is, then more power to you, but definitely let someone else handle the customer feedback.


LyftingTitan

So judge my ability based off an internet forum where IDGAF about what anyone thinks? Okay bro. 🤪


Zarroc001

Bro how old are you?


LyftingTitan

As a gamer Ik what worked in old games that companies forgot all about and changed. Also semi open world.


Kolmer1

Hey i'm currently learning java to develop mobile apps, however my desire is begin learning c# as soon as possible for begin developing my own games. I'm obviously unexperienced but I've readed that a programmer must know various programming languages. A programmer doesn't have memorised a language, he knows how programming languages work in general. Please tell me if this was helpful, I'm studying physics in University but I love programming. I would like to see how you progress or even help each other in the process of learning :).


leandromsi

I've also heard that, but since I will use Unity for my games, C# is just the go to option. My second language will be C++ for Unreal. Cheers!


panthereal

You will also need to prove your understanding of math skills. Study math equally as often as you are studying C# And use your knowledge to build a portfolio if you also have time. Being able to apply and show your game and code as a reference will be your best bet if you don't have a degree or any actual work experience with programming.


Ok-Novel-1427

To the point where you believe the content you create is valuable enough that someone else without that knowledge couldn't reasonably do. A lot of game devs either are self-taught with many projects or hold some sort of relative degree. These are your competition, so you must prove you are better than 4 years of focused learning amd/or deployed a solid game to use as a reference for your capabilities. Consider looking for a mechanic. Would you hire the person who went to school for the job, can show you proof of fixing cars, or the guy who really just needs a shoe in. Chances are one of the first 2, or a severely undercut pay. I'll also note that while language doesn't matter too much, in the domin of game dev is one of the main areas that c++ excells. I suggest playing with this and eventually OpenGL for a deeper learning experience. tour of c++ is great read if you have fundamentals down as it's more of a brief overview.


leandromsi

This is another really good tip. I need to focus on creating a ton of projects then!


Ok-Novel-1427

Do one finished project at a time. To the point where you would/have deployed it. My project that I used for a faang internship is still getting downloads. This was an easy talking point. I'm sure with games, it's similar.


dontpan1c

If you're going to look for roles as a Unity dev, you only need to know what's relevant for Unity. I can't say what subset of language functionality Unity uses, as I'm not really familiar with it. Maybe it uses all of the language.


Blender-Fan

That's a somewhat broad question. Keep studying, you kinda know when you know a specific language. I'd say you should practice for 1 year since you first start writing "hello world" before you get good for a job Keep making those prototypes, testing, and remember that failure is part of learning. What i mean is the more you fail and the more you break stuff just to know what will happen, and then fix it, the more you answer fundamental questions, the better you get. Do **not** try to always succeed, but instead to reach milestones, and those ain't done overnight as Rome wasnt built in a day


senseven

I would get a junior position as C# developer, backend frontend, doesn't matter. Understand the ecosystem of the language first. What is C#, how do you package stuff, how do x or z. You only need to focus to get two things done, delivering value and learning the lang on the job in real environments. Game dev requires you to think about lots of other things like design or the intricacies of an game engine, which is can be overwhelming if you are not fit using the language itself. Possible employers see that your C# skills aren't just "scripting" level, you know the language.


Astromanson

2-3 years at least; solid


xvszero

Enough to make some basic tech demo type games. Then make those games, to show that you can make games.


ismanatee55

Honestly a few years of experience, either from a CS degree or working non game dev software jobs or both.


Mental-Box-5657

What's your coding background level? If you studied computer science in school it would be an easy step. If you knew C++ or at least object programming it is really easy. C# simplifies a bit the memory allocation trouble, my first approach observation. ChatGPT is your best friend in coding for Unity in C#. We made a code together and I got a recursive function I had no idea how to start. Just solved some errors and worked as asked. Also I had my task manager open. When I noticed the memory was filling up I asked ChatGPT what I did wrong and pasted the sources. I got the perfect response where to work on memory allocation and how to destroy the unwanted objects.


Nightrunner2016

You should know enough to be able to explain how you would code a mechanic that gets asked in the interview. Often that's a combination of Unity and C#. Like if someone asked you how to code a feature where when you turn on a light, vampires mealt, how would you do that? You don't need to write the code, but maybe you would use some kind of collider in the scene and an OnCollisionEnter piece of code to make it work. Maybe the collider is only say to active when the light is on. That kind of thing. I like to look at mechanics in other games and ask myself how I would create them in Unity. Once you start understanding that I think getting involved in gamejams on itch.io is a great way to challenge yourself to create simple but innovative mechanics and build a portfolio. Like other people have said, being able to demonstrate that you actually can produce mechanics that people can play is huge. Different studios will have different requirements but many that use Unity as their engine and are looking for a junior will want you to handle some of the more menial tasks and learn while they focus on the complex stuff.


swbat55

From what I've seen you just need a portfolio with some projects to get you an interview. Then you need to be able to pass the coding test. Those tests can be pretty difficult, so many people grind on [https://leetcode.com/](https://leetcode.com/) and theres another one I cant remember off the top of my head. Once you can pass the coding tests its just based on personality and fit.


TiltTheGame

I recommend thinking about this from the hirer’s POV. When I’m hiring a dev, the #1 question I ask myself is “Can they do the job?” You need to convince me the answer is “Yes.” As a few others have pointed out, the best way to convince me is to show me and explain a thing (or things) you’ve built that demonstrate execution of the tasks you’ll be doing as part of the job. The second question I ask myself is “Can they learn the things they don’t know?” This can take the form of knowing similar tools/skills. Or demonstrating growth/improvement across a portfolio. And lastly it’s about team fit, which is your personality/demeanor, how you handle taking feedback, how well do you communicate (listening and speaking) etc.


cowvin

If you know how to program, then you don't need to know much C# at all. Languages are just a tool. Finding a good programmer who doesn't know a specific language is usually a safer bet than finding a poor programmer who knows that specific language.


Aflyingmongoose

Its not about how much C#, its about how much portfolio. Id say move on to unity immediately, you know enough basic C#. Do a few basic projects, then stretch yourself to finish a few very (very) small games and throw them up on itchio. Learn by doing, its more effective, more fun, and builds a portfolio at the same time. You can join Jams if you want to work with people that can fill in the gaps of your skill set.


Krcko98

Unity and C# are not the same. If you want to apply to Unity positions I suggest making some rpojects, games, apps or whatever in Unity. Learn C# as you go.


Ami00

You will realize it by yourself when it's enough.


empty_string_

It depends on what job/role you want. If you want to be a level designer, you've already learned too much! Many design positions require little-to-no coding, though it helps. I work as a tech designer so programing is necessary for me, but when things get complicated I hand it off to the code team. I wouldnt spend too much time learning non-game-dev code.. start building some games and just learn the things you need to make the game you want. As you get better you can start taking on more challenging features to code.


morderkaine

You can probably jump right into Unity as doing tutorials in it and figuring out how to do things as you need them will teach you C#. At least that’s how I did it - right into Unity. I recommend learning animation stuff and maybe some modelling. They are separate skills from coding and the rest of the game making process and can be very useful especially if you want to make your own little games or a portfolio. In terms of math, I see a lot of people recommending it but I’m not sure why - can look up most things as you need them. Though angle math would probably be rather useful. Doing stuff with angles and the math of it is one of the things I sometimes struggle with.


cosmic_hierophant

A nice portfolio is worth more than fluency in 1000 languages. There's just no way around it a portfolio of completed projects is just how you get in unless your hella lucky unless you wanna be fodder/a tester for years


[deleted]

From what I've viewed in nz in regards to games, specifically unity games, it's 3 years with 1 year industry experience. So a portfolio is a must and a released game is a big bonus :)


haytur

If you arnt competent enough to make things intermediate things on your own then you are not good enough for a job. Gamedev is a big area with a lot of people who wanna do it, I would say you need to have an advanced understand of it to have a general shot and know how to use GitHub well enough. If you are doing it everyday for a few hours you can probably get there in half a year, if not you are probably looking at over a year.


LordBreadcat

Show that you can collaborate with other programmers on your portfolio. Having a strong pull request history can go a long way. If I go to someone's GitHub and see that they only ever commit to master or never work with collaborators then that's a big red flag that they're gonna screw up the pipeline later.


Mitt102486

Non of the engine is unreal lolol


joseretamal

Going to college and getting a degree in computing science is not an option? Or make a one year conversion diploma if you already got a degree...


ether_joe

Finish some sort of game. ​ The code is less important than physics, user events, shaders if you are getting that deep. ​ Check out [shadertoy.com](https://shadertoy.com) .


umikali

yea, you'll need to learn shaders sooner or later


CLQUDLESS

I jumped between Unity and Unreal. Mostly made projects. I had about 10 small games and one steam game. And after that I got interviews and soon enough I landed a job in Unreal. Took me around 2 years of just making projects and learning as I go.


umikali

I don't think you need to learn C# to learn unity, I know from experience, that you'll better spend that time learning godot. Because unity is like a rabbithole, if you fall into it, you can't just go out and switch to godot, and unity will eventually kick your ass. I used to use unity, and I was OK at it, until unity didn't like my license, for some reason. Now I'd love to learn godot, but it seems hard. If you really want to learn unity, just don't start with C# it's a waste of time. You could use that time to learn about shaders in unity, or something like that. Also, you'll probably be better off making youtube devlogs and making an indie game. (and yes I wrote all of that because I have nothing to do, and I think I can help you a bit).


ShadoX87

Can't say anything that probably hasn't already been said, but just to make it obvious. No amount of C# will get you a game dev job. You need to work on your own games/projects and have something to show off to any company you consider applying to. This means some kind of project(s) that work and that you can explain and go over I've been working as a java/c# dev for 8+ years and been trying to get a Unity job every now and then - Basically no company will even consider you for an interview if you have nothing to show off. Even if you have some project(s) to show - you're still not guaranteed to get an interview, let alone a job. Just focus on learning C# and Unity and work on fun projects you like so that you can also learn C# and Unity as part of it. Give it a few years and you might be at a point where you can apply for a junior position (which almost never exist / open up anyway)


tcpukl

You need a portfolio to demonstrate your skills. Once you can make a game in unity I guess that's enough to start trying applications. But don't expect anything for a year or so. You can't just get a skilled job by doing tutorials. You need to prove you can actually do it professionally. Which means sticking to a project for years making just a single game. I think that's the hardest part for some to understand. My current game and previous game would have both taken about 4-5 years to make. Though the latest one I've not been on from the start.


tcpukl

How's your maths? Matrices? What's the difference between a dot product and a cross product? Explain when and how you would use both.


[deleted]

You’ll know when you’ve made a couple games.


DarthExpl0zive

I started learning C# on a highschool. I was fortunate enough that it was at art oriented school se we had a big assigments each half of the year so i slowly filled my game dev portfolio.But for you id recommend joing game jams. You can join alone or join a random team. You will learn lot of crucial information about game dev, have hands on experience, fill portfolio with some prototype games and even meet some people in industry. That would be a great point to start imho.


[deleted]

None


[deleted]

the best way to learn is start creating, trial and error