How true is this info graphic?


I noticed that it doesn’t have years of experience to achieve that salary for each language nor what year are these figure based on.

I am thinking in learning a programming language to make games and I came across this on my research.

Please advise.

1 Like

Don’t learn “a programming language”. Learn programming as a whole. Pick one language to start with, but recognise and accept that it’s a starting point and that no one language is ultimate. After your first language the second will be easier to learn, and after thee or four there’s really no sweat jumping from one to another. Available libraries and the environments you’ll be writing code in and for will end up taking far more of your time in the long term than the language bit.

Since you’re hanging out on the Unity forums, I’d suggest C# as a good starting point. There are plenty of resources, it’s in extensive commercial and professional use outside of Unity, and being derived from C a huge amount of what you learn is very likely to be directly transferable to whatever language you learn next.

I learned my first language by finding one of those “Teach Yourself…” books and working through it cover to cover. Internet tutorials are cheaper, but not necessarily as good, and I’d suggest that getting a better start is more valuable than the money you might be saving.

4 Likes

http://www.robmiles.com/c-yellow-book/

EDIT: Sorry - I keep posting things without context lately. It’s a bad habit. Always in too much of a rush :slight_smile: In my opinion this is the best book to learn programming if you’re just starting out now (i.e. in the year 2014).

2 Likes

How much experience do I need to have with C# before I can get employed earning the average salary?

So I need to put 5 years before I can do what I want? Isn’t there a C# dev boot camp I can to?

Lies, damned lies, and infographics.

Back to topic:

That will depend on what it is that you want to do. If you want to earn that kind of salary then yes, you’ll need to have a few years under your belt.

1 Like

It depends a lot on you. How smart you are. There are people that pick up Java or C# in 2-3 months, and then there are those that never really get it.
For stuff like C++ it takes longer, because it is much more powerful so there is much more to learn.

But as others said, the first language does not really matter, before you can handle 3-4 languages you are not really a programmer in my eyes.
Edit: because you must be able to pick the tools that fit the job, so you need to know multiple tools.

If you learn C, Java, PHP and Python you’ll be a well rounded programmer. You’ll have an old, low level language, a high level objected oriented and super strict language, a flexible scripting language for web and an interpreted scripting language for desktop.

Its not that much about learning a programming language as learning programming overall. When your have a good grasp of programming then you can focus on a language.

I dont know if this is true all over the world. But the salary in the game industry is not as high as what you can get elsewhere. Atleast not where i am from.

1 Like

Get a degree from university in computer science if you want a good salary. Leave the details to the university.

If your school teaches computer programming, mathematics beyond basic algebra, and so on take them. Outside of school I wouldn’t do programming but rather do Unity’s tutorials as it’s likely you are more interested in that then programming or mathematics but you may actually like those. Try a programming book like learn ‘C in 6 Days’ (fictitious example book of a well known book sales ploy - if you don’t know programming count on at least a month to go through one of those ‘Learn Language Y in 1 Week’ books) and try to pick one that doesn’t reward you with fancy graphics to see if you really might like programming.

If you do want a good start on programming check out books in discreet mathematics as you likely won’t have that available till college and it should give you some game ideas and well as build a fundamental understanding of basic program flow control. Discreet mathematics can be difficult though.

And the reason for those ‘great salaries’ is those salaries tend to top out after 5 years unless you move into management. Most programmers are at their most valuable in years 2 - 5 at a company. If you are lucky you and healthy and still into programming (many aren’t and it programmer and business environment interaction dependent - some businesses are purposely set up such they have to be desperate for any modern code changes to their code base to happen) after 5 years with a company you can move to another company and ‘wow’ them there although most companies tend to go to the cheaper new grads for the ‘wow’ factor. After 5 years you are basically an expensive, non-original veteran programmer they’ll target at downsizing time so cross train as systems administrator and various other computer expert specialties to move laterally if you don’t want to be in management.

That’s a good question, to which there’s no single answer because there are so many factors. Where are you looking for a job? In which industry? What will the trends be by the time you’re actually looking for a job?

Also, that particular question is kind of like asking “How much experience do I need with a hammer before I can be a carpenter?” C# is just a tool. How much you’ve used which particular tool is a factor, but it’s only a small part of your overall skill as a software developer. It has to be used in tandem with a bunch of other tools (languages, libraries, IDEs, services) in a variety of different environments (desktop, server, mobile) and there are many domains you could specialize in (ie: the type of problem you’re experienced at solving, eg: game dev, finance, desktop applications, mobile applications, web applications, back end services, etc. etc).

That all sounds daunting, but really it’s like any other profession. The more you know about it, the more you’ll typically develop two things: first, a broad, fundamental knowledge that covers the whole skill set in a little detail, and secondly a detailed knowledge of one or two specific areas, your “specialization”.

Also, back to C# just being a tool… it really is like a hammer. In and of itself no one programming language is the whole answer. Even if you’re in an environment where there’s only one language in use, use of the language is only one of many tasks you need to be good at. Software design is language independent, is arguably far more important than writing code, and has a bunch of its own tools (such as UML - a whole other language, parts of which are designed just to describe things you’ll do in other languages without knowing what those languages are).

Check out the concept of the “Software Development Life Cycle”. There are loads of different approaches, and a common factor between many of them is that code is only a fraction of the overall work in creating a piece of software. Take a look at the other stuff that happens in the various different approaches to the SDLC, and you’ll have an idea of some of the other tools that are important to learn.

2 Likes

The thing is if you want to work in the game industry (making games) take any of those figures and half it… then half it again.

That is because of a few things. One is that so many young people want to work in the gaming industry that they are willing to work on low salaries. Another is that gaming companies will often exploit young people by hiring them as unpaid interns “for the experience”. Another is that they won’t pay high salaries because “this job will look good on your CV”. (Why do they need a good CV if they are all ready in their ideal job???)

Also, another is that they will expect you to work long hours with no overtime. So your hourly wage is not so good.

If you want good salaries you will have to get a “boring” job writing software for banks, aerospace, or the government.

Sources: Working in games companies.

Obviously there are always exceptions. But gaming jobs are “glamour jobs” just like wanting to work on a film set. Unfortunately there is no “equity” for game developers or game artists. There should be. Am I right comrades? Fight the power.

Or at a much reduced rate. I have a friend who was interning, and may still be I don’t recall if he is being kept on or not, for Zenimax Online doing QA work in addition to learning other aspects of development. Quite a number of students from his college are doing the same thing. It is cheap labor in exchange for experience and work references.

1 Like

Simply don’t bother. If you need to be spoon-fed and babied about which programming language to learn, then you’re likely not to get very far anyway. I normally wouldn’t be this blunt, except that you’ve repeatedly wasted other peoples’ time in the past asking for quotes and free consultations, and showing no regard or gratitude for their time in doing so.

3 Likes

Well, just go to C# classes and learn it. Should take a year before you know the language. C# isn’t that complex providing you have a solid grasp of what programming is. It’s by far one of the easiest languages to learn.

Oh, this is that dude…

Well, at least he’s thinking about learning to do it, himself.

Well geez you can watch DeVry commercials the rest of your life and it’s not going to help you.

I know a guy that only does C programming only and did most of the programming that runs casinos and ATM security and such that gets $100 an hour 8 yeas ago in inexpensive locations across America but you need the right connections to get that money in US. With 2 - 5 years though you should be able to make $40 - $50 as programmer or sys admin or archival guy or … with no special connections at all.

Now this stuff about interns is most of them actually aren’t given any meaningful work to earn a good salary with. Also once you graduate you cease being an intern. I was given 2 interns once and I did give them difficult work and they enjoyed it. And no they did not work long hours either. When they graduated they were hired for excellent starting salaries then. We were afraid someone else would hire them.

Now myself graduating before the computer boom I had a very hard time finding a job and the pay was like only 3 times minimum wage with in that time in the US was awful. Actually in those days headhunter firms wanted the programmer to pay a search fee up front for them to find you a job and then 10% of your salary the 1st year after they got you a job. Needless to say I said no.

Since then of course computer science jobs and those VoTech job salaries went through the roof such that in the US at least you’d have to take a job from a headhunter firm as a help desk technician to get less then $35K a year as a new graduate. By the way don’t take a job as a sys admin or help desk tech or anything other than a programmer in the language you most wish to become expert in, in the industry you wish to work in. It’s difficult to change industries and it’s difficult to change languages and it’s difficult to change computer science specialties - but mostly in their head.

Why those help test technician job nowadays don’t even require a degree they require minimum wage and someone who can tolerate being forced to follow a checklist of troubleshooting procedures they looked up in a database and be fired if they vary from reading back that page verbatim. And they must complete the call in 5 minutes. It was honestly the worst and most dishonest work environment I’d ever seen. However the company that owned the online remedial schooling solution was making out like bandits with governments at multiple jurisdiction levels vastly over paying them. However the value of the solution was the actually course work mostly created by teachers and contributed free at their typically small salaries.

1 Like

Well since you seem to know what you’re talking about, here’s my situation: I have about one year of college level courses that I took in high school, but that was 10 years ago, I have been learning a lot lately and I feel like I’m starting to catch up with all the new crazy languages to some degree, I can program anything that I imagined and well I’m not very fast at it and I’m still learning I know that I’m better than most average people… Average salary programmers, I just mean people in general. So if I was to pursue a career in computer programming would I need a degree?

Hmmm, I did about the opposite of you…I failed 3 years high school and had to do really well on the college entrance exam to be admitted and even then the first 2 years of college had many remedial classes I should have taken in high school had they been available.

Stating my general experience earlier in several paragraphs hardly qualifiers as everything but in the US generally speaking you will need a computer science degree to get hired at most places for most IT jobs. I even watched a guy with a degree in music get fired after company changed policy and declare he had to have a degree in computer science to work the job he had.

Then again, I’ve worked at a place in the US where you didn’t have to have a degree in computer science to have a computer programming job with them but were paid likewise substantially less then you’d other wise be paid.

Good programming is never fast. Oh, the first 90% of the code can be written pretty fast usually but the last 10% usually is a clock eating headache. Also, I don’t know how you feel about programming but I’ve always enjoyed it most when it was done and worked and would work long hours to get there sooner. That’s not conducive to long term productivity or health. By comparison, I’ve worked as a systems administrator and for comparable and often better pay I have much less stressful work and more goof off time at work.

As far as Unity goes it’s something I mess with and drop but as it’s finally starting to deliver on it’s platform independence and working games I’m planning on for every 3 parts time spent in Blender to have 1 part time spent in Unity programming in C#.

I’m being long winded but yes for most programming jobs in the USA you would be required to have a computer science degree put you can probably get hired with an associates degree which you shouldn’t be too far from having. In Switzerland however I’ve trained folks as varied as mechanical, civil, and chemical engineers to be UNIX systems administrators - that company’s main motivation was to train Swiss so they could stop importing expensive foreign workers to do what’s really mostly an easy job.

You should also know in the US and most countries for some an Associate Degree in programming is enough, for most a Bachelor’s is enough, but for some really hotty-totty places you need a Master’s or PhD with special fields of concentration - some really are being ‘snooty’ but for some you really need the extra graduate study for intensive expertise.

The idea you need many years experience to get a professional job programming is simply a lie in some cases. What you need is talent and understanding of how to program. Although the competence of your employer and your ability to prove your ability will always increase chances (just like a degree would) but it is not an absolute requirement.

I have a very good friend who knew literally nothing about programming, and within a year learned by himself (self-taught), to land a job working for a software company making something like 60k. Why? Because he knew how to program.

99% of programmers are quite incompetent, so if you’re any good, you shoot up to the top. Seriously, it’s scary. His peers didnt go with him as he flew up because they were idiots who you wouldnt want programming anything for you.

Within a single year, he shot to the top of his company making $80,000+ and was making a lot of money. A few years after that, he was at literal top and now he’s making $120,000+ a year as one of the major players.

We live in a state with very little in terms of technological opportunities. There are like 2-3 game dev companies here, and not too many more software companies. Although he had to move to get the bigger 120k+ salary.

So this guy working a factory job teaches himself to program and within a year (during his downtime) and then lands a job with 2x-4x the pay, then skyrockets to even more pay. Not every job requires every person to have decades of experience.

The reason he got the job in the first place, is that the place where he worked had an obvious (software) problem, and so he told the manager how to fix it and then fixed it himself- which got his name connected with a software employer who saw his potential.