Page 1 of 2

Questions about novices C programmers and C++ programmers

Posted: Fri Apr 06, 2018 10:59 pm
by manhobby
Currently are employed experienceds C programmers?

If not, why?

Currently are employed novices C++ programmers?

If not, why?

I am asking these questions because I want to be employed to be a professional programmer.

Re: Questions about novices C programmers and C++ programmer

Posted: Sat Apr 07, 2018 12:14 am
by alexfru
manhobby wrote:Currently are employed novices C++ programmers?
Yes. Almost everyone is a C++ newbie. Since 2011. :)

Re: Questions about novices C programmers and C++ programmer

Posted: Sat Apr 07, 2018 1:12 pm
by manhobby
alexfru wrote:
manhobby wrote:Currently are employed novices C++ programmers?
Yes. Almost everyone is a C++ newbie. Since 2011. :)
alexfru, ok.

But and about the experienceds C programmers?

Currently are employed experienceds C programmers?

Re: Questions about novices C programmers and C++ programmer

Posted: Sun Apr 08, 2018 3:22 am
by manhobby
Schol-R-LEA, I will not make for you in this topic an almost an exact repeat of the conversation with Trident from about three years ago to a certain lingering infamy.

Schol-R-LEA, Brendan and simeonz, maybe you were the most detailed in the other topic I posted here in the OS Dev Forums.

Schol-R-LEA, Brendan and simeonz, please, answer this topic.

Re: Questions about novices C programmers and C++ programmer

Posted: Sun Apr 08, 2018 10:49 am
by Schol-R-LEA
I don't know how much I can really comment in general, since I haven't been watching the job market recently. Anything I say is likely to be out of date.

And to be honest, I'm not sure if this message board is really the best venue for these questions, compared to, say, Daniweb or DevShed (I would probably give StackOverflow a miss on this, since my understanding is that they generally close any questions that are open-ended or ask for opinions, but some of the other Stack Exchange groups might be useful - Solar, can you add anything on this?), or a career-related site such as Indeed. For that matter, it is the sort of question that shows up on Quora quite often.

Still, I will answer as best as I can.

Right now, C and C++ are major languages for systems programming and some sorts of applications, but the number of experienced programmers (or those claiming to be) for them is saturated, so for new programmers, they are likely to be dead ends. For commercial application programming, C has mostly been replaced by C++, though newer languages such as Java and C# are more common than either of them today.

C and C++ are still very common for major free open source projects such as the Linux kernel (which uses C exclusively, unlike several of the others), GIMP. LibreOffice, Gnome, and so forth. However, the majority of people contributing to those aren't paid, but are working as volunteers; those who do get paid for it are almost all seasoned experts hired by organizations such the FSF, Mozilla, the Apache Foundation, or Canonical, or else equally experienced developers hired to make bespoke modifications or additions by some other stakeholder using the package.

And as stated earlier, C and C++ are used for a lot of embedded systems programming, but while there are many such positions, the number is dwarfed by the number application and web development jobs.

Here in the US, I would not expect anyone who does not have at least a Bachelor's degree in Computer Science, and/or 2-3 years professional experience with the specific language(s), to even get an interview for such a job. This isn't to say no novice positions exist, but they aren't particularly common (a lot more common than assembly jobs of any level, though).

Right now, the majority of commercial work is web-related, and the only work of that sort which uses C or C++ is infrastructure stuff - HTTP servers, web browsers, interpreters for scripting languages, and so forth. The majority or web development is in JavaScript and PHP, or in frameworks and toolsets which are written in those two languages - Magento, Wordpress, Node.JS, Ionic, etc. - or generate code for them - Typescript, Clojurescript, etc. While other frameworks exist, such as ASP.NET, Ruby on Rails, and Django, they generally also need a certain amount of JavaScript to handle the scripting on the browsers.

However, all of these systems are like shifting sands - the field changes almost daily, and while most of the changes are pretty much running in place - change made for the sake of change - the fact is that web development requires a constant struggle to keep up.

Web development also doesn't pay as well as C/C++ or Java programming, as a rule, but for every C job, there are probably five C++ jobs; for every C++ job, there are probably ten Java or C# jobs; and for every job in Java or C#, there are probably fifty PHP or JavaScript jobs.

Mobile apps are similar, and many these days are actually webapps, rather than native iOS or Android apps - meaning that the skills are similar to, but not the same as, those for web development. The market isn't quite so massive, but mobile dev is still on the rise, and the pay is generally better than for more general web development.

If I were starting out in programming today, I would start by getting a degree. Regardless of whether you actually think the classes are worth anything or not, most hiring managers aren't technical experts themselves, so they rely on external evidence such as degrees and certifications to decide who is worth interviewing or not. A Bachelor's degree is a shibboleth for most jobs - any resume without one listed will probably get deleted without even looking at it.

Again, this is in the US, and I don't know how things are elsewhere.

While in the degree program, try to get into an internships you can. The pay generally is low, but the internship jobs do carry some weight as job experience - not a lot, but some. Expect that most of the work is likely to be in web development or mobile webapp development, which are the overwhelming majority of the job market right now, as I said.

Where you go from there will depend on how things look then. I wouldn't want to guess what things will be like four years from now.

Re: Questions about novices C programmers and C++ programmer

Posted: Sun Apr 08, 2018 1:15 pm
by manhobby
Schol-R-LEA wrote:Where you go from there will depend on how things look then. I wouldn't want to guess what things will be like four years from now.
Hi

Schol-R-LEA

Why you wouldn't want to guess what things will be like four years from now?

I'm asking these question because I really like the subject.

Re: Questions about novices C programmers and C++ programmer

Posted: Sun Apr 08, 2018 8:49 pm
by Schol-R-LEA
Because there's no way to - things change so fast and so much that no guess could hope to be accurate. It's pointless to try.

(Is Rogerian psychoanalysis being applied to programming now? It's like parrots everywhere.

sigh Sorry, that was catty of me.)

Re: Questions about novices C programmers and C++ programmer

Posted: Sun Apr 08, 2018 9:49 pm
by manhobby
Schol-R-LEA wrote:Because there's no way to - things change so fast and so much that no guess could hope to be accurate. It's pointless to try.

(Is Rogerian psychoanalysis being applied to programming now? It's like parrots everywhere.

sigh Sorry, that was catty of me.)
Schol-R-LEA, many thanks!

Brendan, simeonz, you will answer the topic?

Re: Questions about novices C programmers and C++ programmer

Posted: Mon Apr 09, 2018 1:22 am
by simeonz
I can honestly say that this is not the best place to seek advice. It gives off a deceiving vibe of being a hub for retired billionaire hippies, but it is rather a place for misrepresented software enthusiasts. (Edit: Myself included.)

I will concur with Schol-R-LEA that employers look for a diploma, certification or past experience. The recruitment varies with the human resource situation, so there can be break-in offerings, but having a diploma or past experience is quite more reliable way to land a job interview. Another approach is to be hired as a QA, or a lower tier support, and then to move into a developer vacancy. Note however that some companies make this difficult in order to keep employee assets in their established configuration.

Regarding being a novice - this is relative. Lacking experience is not a big deal. Not to the point of cutting your prospects completely. But lacking skill with the programming language is a problem. Other competences are also expected, with varying standards. System developers are expected to have understanding of the hardware and OS architecture, game developers - to know mathematics and algorithmics, application developers - to know RAD platforms or APIs. Embedded development has the lowest bar in my experience, but you still need at least a basic programming skill. In the end, almost every interview will involve some kind of inquiry into your competences about a hardware or software platform, and most likely a skill test through a basic exercise in the target language. Say, you will have to sort an array, manipulate linked list, find a substring in a string, etc. A reasonable command of the English language is implied and should be on your CV, although the strictness in this regard varies from country to country.

In summary, you need to be more specific in detailing your skill level with the C/C++ language and your competences in general. This is still not the best place to seek pointers regarding your job situation, but we may be able to tell you what skills you need to emphasize to improve your prospects. And again, consider making progress with your hold of English, just because otherwise you will be most likely cut off from any employment consideration disregarding any other skills you may have.

Re: Questions about novices C programmers and C++ programmer

Posted: Tue Apr 10, 2018 6:24 am
by manhobby
To end the topic: Brendan, you will answer this topic?

Re: Questions about novices C programmers and C++ programmer

Posted: Tue Apr 10, 2018 10:21 am
by Brendan
Hi,
manhobby wrote:Currently are employed novices C programmers?

If not, why?

Currently are employed novices C++ programmers?

If not, why?

I am asking these questions because I want to be employed to be a professional programmer.
People do get employed to write software in C and C++ ; but I'm not sure what the "experiences vs. probability of getting hired" curve is like in any part of the world (except for the relatively small rural town I live in, where the probability of getting hired to do any programming in any language is zero if you don't want to relocate), and don't know how you define "novice" either.

More specifically; I'd suspect the "experiences vs. probability of getting hired" curve is similar for both C and C++; and that experience with C and/or C++ isn't the only factor (and may not be a major factor) - multiple other things (if you have a degree, if you have experience working in a specific field, if you have experience working in a team and experience with whatever revision control software they use, if you're familiar with agile/waterfall/test driven development, if you're related to or sleeping with the boss, etc) can be as important or more important than the language.


Cheers,

Brendan

Re: Questions about novices C programmers and C++ programmer

Posted: Tue Apr 10, 2018 4:12 pm
by manhobby
Hi

Moderators

Why the reply of Jonwalter was deleted?

Re: Questions about novices C programmers and C++ programmer

Posted: Wed Apr 11, 2018 4:41 pm
by manhobby
DavidCooper, I forgot of you, maybe you were detailed in the other topic I posted here in the OS Dev Forums.

DavidCooper, please, answer this topic.

Re: Questions about novices C programmers and C++ programmer

Posted: Thu Apr 12, 2018 11:45 am
by DavidCooper
manhobby wrote:DavidCooper, I forgot of you, maybe you were detailed in the other topic I posted here in the OS Dev Forums.

DavidCooper, please, answer this topic.
Sorry, but that's beyond my knowledge. I came into programming from a background in linguistics with the sole intention of working on computational linguistics and artificial intelligence. I've never been employed to write code for anyone, or looked for such work (and I've also never used C and have only ever written one program in C++), so I don't have any real understanding of which skills or mastery of which tools are in demand in the industry. What I'd do if I was in your position though is look to see what kind of jobs are being advertised, then compare those with what employers were looking for five years ago, and I'd then try to work out what's changing - if there's a trend towards greater use of a specific new programming language, that might be worth targeting, unless everyone else has anticipated that too, so I'd be looking for skills that are increasingly in demand where not enough people are being trained up to use them. Whatever you do though, you should aim to become a much-better-than-average programmer so that you get chosen over the rest of the crowd of applicants. If employers won't look at anyone without a degree, then you need to get a degree, but there's nothing to stop you racing ahead with your studies and looking for work while you're still studying, because you can always drop out to take a job if you have a skill that's in demand while there's a shortage of people with that skill, whereas if you wait until you've qualified, that job may no longer be available and the temporary shortage of people with the required skill may have been filled in by new graduates.

Don't be too narrow in just aiming to be a programmer - most jobs writing code will likely be eradicated by automation over the next decade, so you should be thinking about other skills that you can develop which will keep you in work for longer, and anything with an artistic component will be much more secure, so work harder than everyone else on developing your creative skills in addition to your programming skills. Work too on improving your English, and on inter-personal skills so that you can get the best out of the many incompetent, unpleasant people that you're bound to have to work with on occasions. Skills in flattery, for example, will take you a long way.

Re: Questions about novices C programmers and C++ programmer

Posted: Thu Apr 12, 2018 7:47 pm
by manhobby
Hi,

Moderators

You will answer why the reply of Jonwalter was deleted?