What does a C++ Programmer need to get the job?

Started by
14 comments, last by coope 7 years, 11 months ago

I can offer some thoughts of my own on small vs large companies.

In a very small company you only have one chance for personal development and promotion and that is the growth of the company.

I spent years working in a company which was just myself and the director, and even though it was just the two of us I was still only employee and nothing special. For years he promised growth, said I'd be managing a team within a year and had all these big plans and nothing ever came of them. I bought him business opportunities myself and he frittered them away. In the end I left for a medium sized company with promotion prospects.

On the other side of the coin, very large corporations are the opposite and you may find yourself just a cog in the machine for your entire career finding it hard to ever progress through the ranks.

I've had the best luck in medium sized (SME) of 20-50 people and it also matters what salary and position (if it's on the table) you can negotiate when you start.

Also, don't just be a C++ programmer. You're limiting yourself. Learn unity, learn C#, learn everything you can and apply it. The more languages you know the more employable and useful you are. I am not a C++ programmer on my resume, but a programmer, plain and simple, and wear many hats. Over the years i've picked up many programming languages, some have been more useful than others. Oddly enough the ones that have been the most successful for me career wise are the ones i originally hated the most at university (SQL being one of them!).

Here in the UK it's also possible to get into many jobs without a degree if you're older and can show relevent experience. For the young, this is a catch-22 situation. Can't get a job without experience and can't get experience without a job. As you're 28, if you can show this experience you're now in a position, degree or not, to swoop in and take these jobs from the college leavers who've never had a single day of commercial experience except perhaps an internship. I speak from experience as i never finished my degree for various reasons (financial reasons mainly) but i've rarely found it to hold me up or limit my prospects these days as i've gotten older and gained experience. Just in case you're wondering, i'm 35, not significantly older than you.

Good luck in your job search!

Advertisement

Why exactly will you hate about a local job? Is it because they use Unity? A lot of small studios will use Unity, and if you want, you can buy well written text books and learn from those. If I were you, and really passionate, I would make the effort to learn Unity, and put it in my portfolio. In the mean time, try to find programming jobs at small/mid-sized companies and build up good references.

Hate may be a strong word, but I wouldn't like my the jobs for compound reasons.

I don't like living on the east coast for a myriad of reasons the job market barely even counts as one reason, so I won't get into all that. Developing games I will *never* play, using a development kit I don't appreciate, for companies which will likely never grow to an impressive size.

I am aware that I am somewhat overly cynical about things.

Thing is, it is already impossibly hard for most to find a job in the games industry WORLDWIDE because there are few jobs, and too many quite qualified people applying for them. If you REALLY want to work in games, you need to plan longterm, because shortterm, that thing might turn out to be nigh impossible.

Now, you don't like living where you are living now, but don't have the money to move by yourself, or the job that pays you to move? a) get a job to earn the money, or b) get a job in a relevant field (and preferably a degree AND a job) to make you more attractive to employers outside of your area.

Your chance to get employed as a game developer without degree AND without work expierience is slim. True, a good portfolio might improve that chance, still, if you apply for a job at the studio of your dream, and happen to go up against a candidate that brings the exact same portfolio, but also a degree and which happened to work for 2-3 years on one of the Unity jobs you despise so much, you will stand zero chance against him.

It is a fact in the careers of most people, ESPECIALLY in competitive fields like game development, that many will need to work for years on jobs they despise, work on projects they do not feel passionate about, or do things that are below their actual skill level just to get a) a foot in the door, b) build up work expierience, c) show their commitment and skill to get promoted or credits.

If you believe you are one of the exceptional guys that leave college without any work expierience, and are able to sell themselves well enough to land their dream job without prior expierience, fine, give it a try.

Just get a degree first. Get anything you can (degree, awesome portfolio) actually before embarking on your quest for your dream job... and make sure you have the cash to live without a job for some time.

The more sane approach would be to get a job, the more relevant, the better (and the Unity jobs you seem to despise so much are way more relevant than many others), earn some money and expierience, see that you can get a degree (around here that is possible even while working, I guess something like that should be possible in Canada too)... then, after getting the degree, working for some years in a relevant job, and saving some money, go on your job hunt for your dream job.

You now have everything you need to apply for game development jobs more to your liking, and you have the money to leave the area you seem to dislike this much.

And always keep in mind that there is quite a lot of demand for programmers in other industries... if you do not find a job as a game programmer, you can always look for a job as a programmer of business applications or whatnot. Not-so-relevant Job expierience is still better than job expierience flipping burgers, and job expierience flipping burgers is still better than no work expierience at all (not saying a burger flipper with 10 years of expierience could snag away your game programmer job, but if you don't find work for a long time, that does not look good on your CV).

If that all sounds not to your liking, you can still look for work as a freelancer, or if this also not to your liking, do your own thing as an Indie. Of course, both options come with increased risks and potentially less of a paycheck, but if you are picky about what you work on and what tool you use, these might be your best options (because in big companies, you usually cannot be picky... some big studios started using Unity for smaller projects, and you might be shifted to such a project if working for one of these studios).

EDIT: Reading some of your answers it seems you DO have prior work expierience. So maybe disregard that part of my answer (even though you only being 28, question is still "how many years"), as it does not apply to you.

Point still stands: if you don't have the money to move, or survive for a longer period, it might not be the right time to be picky about jobs. When you have a job that pays the bills, and can afford to move, you will be in a better position to go job hunting.

Also, degrees can be done while working nowadays. And I would really urge you to try to do a RELEVANT degree. You might be able to find a job as a programmer with a degree in physics, but the guy with the CS degree and similar work expierience and portfolio will always have an edge)

Sorry for the multipost, forum is acting up for me again.

Also, don't just be a C++ programmer. You're limiting yourself. Learn unity, learn C#, learn everything you can and apply it. The more languages you know the more employable and useful you are. I am not a C++ programmer on my resume, but a programmer, plain and simple, and wear many hats. Over the years i've picked up many programming languages, some have been more useful than others. Oddly enough the ones that have been the most successful for me career wise are the ones i originally hated the most at university (SQL being one of them!).

This!

Never, ever be just <insert tool of your choice here> <insert job role of your choice here>!

It is good to strive for mastership in the tool you specialize in... it is even better to try to become competent in all the other tools out there.

Programming languages, engines, all the other tools.... they come and go. Some might stay for decades, some might be the cool new thing only to sink back into obscurity in years time.

Some might wane in popularity over time.

Learn as many languages as you can. Try to become competent in them. Use them as you use a toolset (don't use a screwdriver as a hammer). Strive to be a programmer, not a C++ programmer.

You might want to specialize as a game programmer... maybe even more as a game AI programmer, or graphics programmer, or whatever. But not a "C++ UE4 game AI Programmer"....

Never ever be the dude who tells other programmers "that is not my job, I am a DB programmer, not a Unix programmer" when you are expected to create Unix packages for your DB code, and use the command line shell commands for subversion (real story, happened in my team... I don't think I need to mention how much we others despised the guy).

Be the guy that can fix the python script that someone left behind and is acting up. Be the guy who can write a shell script for that problem you have with your teams unix server.

Be the guy who can just as well code AI for a Unity project in C# because he knows how to code good AI, and happens to be competent enough in all the languages relevant for games out there.

That will count WAY more for your career than being the most awesome specialist for <insert rarely used hyperspecialized field here>, but only in C++. Your boss will quickly have a hard time finding use for you, while the other guys get all the good projects as they move freely between languages and specializations.

Guess who has racked up more cookie points at the end of the years when its time for bonuses and promotions?

Of course there are the jobs where you specialize in something and work on that one thing for 20+ years. If you are looking for that, I would advise you to look for a job as COBOL programmer for mainframes... given that the language and mainframes having been around since the seventies, maybe sixties, and big corporations worldwide having difficulties seemingly to move off COBOL and mainframes, you might still spend a good part of your career in just that one language and never run out of work.

C++ seems to be pretty well spread in the games industry nowadays... though other languages seem to pick up, and just because the games themselves are written in C++ doesn't mean that the tools, server code, or whatever else is needed by the studio and written inhouse is developed with C++.

Again thanks for all the advice everyone. I've read every post, even if I haven't replied directly to it; it likely means I passively soaked in the advice with nothing to say but thanks. So thanks.

Coope,
1. Okay, so then you should move west as soon as you can. Makes me wonder why you haven't already done so.
3.a. In a small company you get to wear multiple hats, and you learn by doing. http://www.sloperama.com/advice/m88.htm

3.b. I have been laid off from more big companies than small ones. "Job security" is not dependent on company size.
4. I didn't realize you were so old. As has been already pointed out by others, the "get a degree" advice is moot. What you need now is to program some games and build a portfolio and build a network of contacts. But no company is going to teach you programming on the job.

1. Money. Cost of living. Salary/wages. It doesn't take long to come up with several good rational reasons why somebody can't move 6000km across one of the widest countries in the world. Assuming you truly wondered and weren't just implying a question.

3.a I looked at your site, it has some interesting advice on there but after a handful of pages I hadn't found anything that struck me as ground breaking information. I'll take a look at this one.

3.b I 100% know this.

4. You learn things at every job; or perhaps a unique experience to my life. I am not suggesting I would learn to do said job while trying to do it, I'm talking about learning better practices and better solutions. You're talking as if I said: a game studio should teach me everything I need to know because I'm a great fucking talent. Other than my gripe with your huge but at the end.. perhaps I should de-prioritize further education since everybody is leaning away from that knowing I'm in my late twenties.

I have a portfolio if you or anyone is interested; I tried to get critiques from the network contacts I have, but more experienced viewers may have better insights. I bring it up because when I finish the prototype I am working on now I will likely add it to the project directory. I stopped updating the portfolio in favour of creating a new project. (learn some new stuff opposed to talking about old things) - http://cppcooper.com

After I finish the current project I am thinking some Unity projects are in order.. perhaps a text rpg in python.

A - Well, not wanting to be rude, but Dude... I think you need to learn a thing or two about the world (and especially the job market).

Thing is, it is already impossibly hard for most to find a job in the games industry WORLDWIDE because there are few jobs, and too many quite qualified people applying for them. If you REALLY want to work in games, you need to plan longterm, because shortterm, that thing might turn out to be nigh impossible.

B - It is a fact in the careers of most people, ESPECIALLY in competitive fields like game development, that many will need to work for years on jobs they despise, work on projects they do not feel passionate about, or do things that are below their actual skill level just to get a) a foot in the door, b) build up work expierience, c) show their commitment and skill to get promoted or credits.

The more sane approach would be to get a job, the more relevant, the better (and the Unity jobs you seem to despise so much are way more relevant than many others), earn some money and expierience, see that you can get a degree (around here that is possible even while working, I guess something like that should be possible in Canada too)... then, after getting the degree, working for some years in a relevant job, and saving some money, go on your job hunt for your dream job.

You now have everything you need to apply for game development jobs more to your liking, and you have the money to leave the area you seem to dislike this much.

C - And always keep in mind that there is quite a lot of demand for programmers in other industries... if you do not find a job as a game programmer, you can always look for a job as a programmer of business applications or whatnot. Not-so-relevant Job expierience is still better than job expierience flipping burgers, and job expierience flipping burgers is still better than no work expierience at all (not saying a burger flipper with 10 years of expierience could snag away your game programmer job, but if you don't find work for a long time, that does not look good on your CV).

D - If that all sounds not to your liking, you can still look for work as a freelancer, or if this also not to your liking, do your own thing as an Indie. Of course, both options come with increased risks and potentially less of a paycheck, but if you are picky about what you work on and what tool you use, these might be your best options (because in big companies, you usually cannot be picky... some big studios started using Unity for smaller projects, and you might be shifted to such a project if working for one of these studios).

A - I hope this doesn't sound rude, but that can literally be inferred from the title of this thread alone. I am trying to create an actionable plan right now, that is what spurred this thread into existence.

Long term planning is what brought about the aforementioned portfolio, and is what is dancing with the idea of getting a degree and possibly serving my country as a means to eat and pay debts.

B - I didn't mean to imply I would not be grateful or happy to have a job in games even if it were in Unity. I was more trying to make a statement about my temperament for designing solutions in Unity; my choices of words were poor.

I'd love it if I were actually able to get a job as a Unity developer at Some Place Inc. The job I had was with using Unity which I learned on the first day as an intern there, stupid simple to get started. I was hired full time and planned to stay there a while and save my money to move west, I was laid off at the end of the summer.

I'm just running low on relevant jobs/employers, so I have expanded my thinking. My plan was to work a less than perfect job for a year, maybe two, and then move. To be honest I'd probably have stuck around the two years since most of my positions at non relevant jobs have been for roughly a year each. I know that looks bad so it felt like a good idea to stay a relatively~ long time at my last position, but then they laid me off because of government funding I knew nothing about.

C - Yea I've applied to a couple places that I know need programmers. My problem is that I don't know every company let alone what each does, and thus who *may* need a programmer. I'm having some difficulty moving forward on this front.

D - I recently started trying this, however I have my doubts that I will win many bids with how saturated that market is. There are just so many programmers from India, China, Pakistan, X, Y, and Z that it seems unlikely I'll win one bid with my limited bids per month. I think I get a total of 10. If I can manage to get one I will likely invest some more money into it so I can win more bids obviously, but that requires that first won bid.

A - I hope this doesn't sound rude, but that can literally be inferred from the title of this thread alone. I am trying to create an actionable plan right now, that is what spurred this thread into existence.

Long term planning is what brought about the aforementioned portfolio, and is what is dancing with the idea of getting a degree and possibly serving my country as a means to eat and pay debts.

B - I didn't mean to imply I would not be grateful or happy to have a job in games even if it were in Unity. I was more trying to make a statement about my temperament for designing solutions in Unity; my choices of words were poor.

I'd love it if I were actually able to get a job as a Unity developer at Some Place Inc. The job I had was with using Unity which I learned on the first day as an intern there, stupid simple to get started. I was hired full time and planned to stay there a while and save my money to move west, I was laid off at the end of the summer.

I'm just running low on relevant jobs/employers, so I have expanded my thinking. My plan was to work a less than perfect job for a year, maybe two, and then move. To be honest I'd probably have stuck around the two years since most of my positions at non relevant jobs have been for roughly a year each. I know that looks bad so it felt like a good idea to stay a relatively~ long time at my last position, but then they laid me off because of government funding I knew nothing about.

C - Yea I've applied to a couple places that I know need programmers. My problem is that I don't know every company let alone what each does, and thus who *may* need a programmer. I'm having some difficulty moving forward on this front.

D - I recently started trying this, however I have my doubts that I will win many bids with how saturated that market is. There are just so many programmers from India, China, Pakistan, X, Y, and Z that it seems unlikely I'll win one bid with my limited bids per month. I think I get a total of 10. If I can manage to get one I will likely invest some more money into it so I can win more bids obviously, but that requires that first won bid.

A) Sorry, didn't mean it that way (also why I edited parts of that post after finishing writing it)... seems like I didn't got the full picture before writing my response.

B) Okay, things start to make more sense now. Lets see... you want to avoid working in Unity because you happened to be layed off at one of the places where you used it before? You are trying to avoid small companies for the same reason?

No, I am not saying that is illogical or anything. In fact, I can completly understand now where you are coming from... and at least in the second case, I do think you are right in trying to avoid more gigs in small companies.

Small companies tend to either take off quickly, barely stay afloat or die just as quickly. Some very few manage a steady growth. But especially in todays "agile mindset", hire and fire is often a common thing AFAIK.

I am living here in europe so naturally I don't know really what the educations options or the job market is like in Canada. If it is anything like here in Switzerland, I would guess there are plenty of jobs for programmers, as long as you can widen your reach a little bit. Given that you are attractive enough for a company, you might be able to apply from remote, and have the company interview you either remotly or fly you in for an interview (had one friend who was having vacation for some months in the US and mexico, and applie for jobs in europe from there. His current company was interested enough to fly him all the way from mexico to switzerland for an interview (I guess he already passed some remote interviews though)... well, he is a COBOL Programmer, go figure).

What are you using for your job search? Online platforms? Are you also writing to the companys who are not posting open positions at the moment? Did you try a job agency (head hunters or similar agencys)?

Here in europe there are plenty of options to finish a degree while working. Some need you to attend school on weekends, some will let you do it remotely.

I finished my degree while starting to work parttime again (having moved out just while start university, my savings where drying up, and I got lucky thanks to connections to my prior employer). My girlfriend is now doing a remote degree from a german university, trying to get a CS degree at her mid thirties to move into more technical jobs.

Depending on your prior education, that route can be long, and even if you already have most of the points needed (if your university is using the bologna norm), you will have to spend 2 or more years on doing all the remaining stuff and the degree itself. And of course, even when working part time that thing can be stressfull.

But at the same time, you don't need to go broke and into debt, all while racking up additional work expierience. Maybe that is an option for you?

C) Sometimes you just gotta try. True, doing research first and actually getting to know the company is a good advice as you will have less chance of getting a positive response when your letter / e-mail reads like a massmailing. But on the other hand, as long as you can set aside half an hour for research and writing your e-mail/letter, you only lose half an hour, but gain the chance to apply for a job before it gets posted to the big outlets. And if they still post it to the big websites and let you compete with everyone else, having been the guy that wrote that e-mail asking for a job as a programmer before they even posted the job ad will certainly not hurt you. Everything you do that makes you stand out in a positive way is good, and if there is something that is attractive to potential employers, its showing initiative...

Some places I asked for jobs told me they didn't have any at the moment, but they would put my contact into their database if I wouldn't mind... they called me back later and asked me if I was interested in a job (I wasn't really, and politely explained so... still, awesome to get contacted by an employer for once!)

D) Yeah, I also have my doubts on how much you can compete in such a field, ESPECIALLY living in a country where housing costs real money, and food is not extremly cheap.

Still, something you could invest some time in while still hunting for jobs (or when you have a job, while working on the job).

I think one thing to take away is to never stop searching for a job. I am not really following that advice of mine, I am a lazy bum when it comes to job hunting... but the best thing that can happen to you is that when things go downhill in your current job (or you get laid off), you already are in negotiation for your next job, have the connections you can call upon that can help you land a job, and so on.

Network, never loose contact with ex coworkers and bosses (and thus never leave in bad blood or let something sour your connections), never be afraid to ask them for advice or a job (you might be who they are looking for right now, thus you are doing them a favour just as they do you)...

And always keep an eye out for jobs. Even if your current job seems secure and is not to bad at the moment, bad times will come (and hopefully go again, given you haven't been laid off in the meantime) like ebb and flow in all corporations worldwide. Be ready to move on when things got worse than you are ready to endure. That will make sure you are already in a pole position should your company have been one step ahead of you and fired you.

Don't worry about it Gian-Reto, you're just trying to help.

Up until today actually I have mainly been going through social contacts. Studios they know of and can lend me the names of, or even have contacts who work at a particular studio. That has given me the names of maybe~ 5 companies, some of which were not video game related. I've had a few interviews so far, but no real bites. Although I caught somebody from the latest prospect swimming around on LinkedIn today, so that might be either tab deleting or an offer inbound. I really don't want to live in PEI though, I will not even know what to do with myself outside of work.

As I was saying that is what I've done up until today. I decided to just try some random search queries, and I happened upon a list of maritime studios. Maybe 10% are dead and another 15% look like they are dead, then another 5% look like a completely wrong fit on both sides, but otherwise a fine list. I sent out half a dozen emails with the usual ass kissing and shameless self-promotion, I am not sure if I am striking the right balance in my emails but I think I am. For the most part none had any indication of a desire for fresh blood or any sort of positions, I did send them emails also.

I can honestly say I don't have a strong desire to work two jobs at once - 1) earn an income as a programmer. 2) Study to be a better programmer.

The main reason being that I could do with a more robust social life, but also that spare time studying - to me - sounds like a great way to spend twice as long studying than you would otherwise need to in order to complete a degree.

Educationally speaking my long standing plan - up until recently - involved working until I was 32-35 and moving to Germany to further my education.

C) Are you suggesting to just pick a company and try, use my intuition to guide me?

"always keep an eye out for jobs. Even if your current job seems secure and is not to bad at the moment, bad times will come (and hopefully go again, given you haven't been laid off in the meantime) like ebb and flow in all corporations worldwide."

Ya that is good advice. I tend to get complacent when I have a job, but I was operating under the presumption of security. My last employer really had me thinking they were in grow mode, and maybe they were, but I had no idea that it was possible for it to change at a moments notice. I have primarily worked at large corporations thus far in life so such rapid instability was a surprise, and before Tom asks why didn't you save that money to move with. My life has changed course on a couple occasions, but primarily I used all the money I've earned to invest into my future. I actually bought VS2013 (for example), and boy was that a kick in the head when 2015 had a community version which was better than what I had paid a lot of money for. :angry: (fy. ms)

In the future I think I will just continue a job search while I have a job, only more casually.

This topic is closed to new replies.

Advertisement