Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

As the years progress , I can't help but see how web apps and the cloud is replacing normal computer software. Developers of systems programming languages like C/C++ are going down the hill and PHP / ASP.NET(C#) is rising to the skies (cloud?). Since I am a serious C++ fan and like to develop mostly in C++, I was wondering whether it is prudent to say on this path. Will there be employment for C++ programmers after , say , 10 years? I have seen a lot of unemployed C++ programmers while there are no .NET programmers or Web Developers going downhill. So should I move to the web and/or cloud now, when there is still time, or should I continue going down the C++ path?

Will there be enough employment for C++ and other Systems (offline?) Programming Language developers?

share|improve this question
    
Who says the two are mutually exclusive? Look at Google, they have a tons of systems programmers and even created a new language for it, yet they are very much web based. Also...are the C++ programmers you know good? Just 'cause they know C++ doesn't make them good and why should somebody hire them if they aren't good! –  Jetti Aug 18 '11 at 20:16
    
How are we supposed to know your future? –  GrandmasterB Aug 18 '11 at 20:35
    
@GrandmasterB Study the stars? Or maybe reread the question to see what I am actually asking. –  ApprenticeHacker Aug 27 '11 at 11:58
add comment

5 Answers

up vote 1 down vote accepted

Will there be C++ programmers? Of course. But you're right about the decline. C++ programmers for ordinary apps & systems software are facing a terrible squeeze right about now. Most of the work I see is maintaining old legacy apps.

Lots of projects have not only gone to the web, but even on the back-end shops are using more dynamic languages now: Java, C# on the low end, ruby and python higher up.

If you're not one of the top C++ programmers out there, working on something that has to be desktop based, or in military/dod sector (though even a lot of that is Java), then it would be a very wise course of action to branch out.

share|improve this answer
add comment

I think that depends what kind of development you want to be doing. Are you interested in developing graphical tools, or even games? Those types of houses are still taking on C(++) developers, and I can't think of any good reason for them to reduce that number any time soon.

share|improve this answer
    
I am interested in developing GUIs and Making Libraries. I mostly sped my time abstracting apis for people to use easily and to make a solid development code base –  ApprenticeHacker Aug 12 '11 at 10:18
add comment

I believe that C/C++ will always be around, but I do think that only the top-notch C++ programmers are going to be in demand in the future because the need is shrinking. I would recommend diversifying your skill-set into some of the web-based languages, so that if you get laid off or find yourself out of work, you have a larger set of opportunities to choose from.

share|improve this answer
add comment

To continue leveraging your C++ skills, you might want to think about adding domain knowledge. It might not be a bad idea to invest in embedded computing where ram is still precious and you need to squeeze out every last drop of cpu power. Kernel, OS, driver development is another area where other languages are unlikely to replace C or C++ for some time to come. Finally, GPU computing and HPC in general is another area where it is very helpful to know C++.

share|improve this answer
add comment

There will always be more jobs for application programmers than systems programmers. Web applications are ascendant right now, primarily because of the ease of deployment that comes with them. (It's much easier to put a program on a web server than to build an installer and get it on to all of the client machines.) C++ is effectively not a player in this space.

If you want to develop in C++, you will need to focus on areas that either need what C++ provides, or have technical or social lock-in to C++. This means infrastructure and games. If that's where you want to work, then great! You only have to compete with the other people who actually have the C++ skills to get the job.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.