Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm addicted to VC++ since 2008, and I begin to work for my current company from 2011 when I graduated in Mathematics. Now I still love VC++, it is a wonderful programming language.

I'm a little confused whether it's a good idea to continue with Windows Programming.

I'm in Beijing, China. Of course, I come from China. I want to find a work in Silicon Valley, America in the future.

Can anyone tell me is it possible for me to find a VC++ work in Silicon Valley someday in the future? And what should I do in the recent years?

share|improve this question

closed as not constructive by Jarrod Roberson, gnat, ChrisF Jul 6 '12 at 7:51

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

I am not sure about Silicon Valley, but there is a lot of C++ work happening on the planet as a whole – Agnel Kurian Jul 6 '12 at 4:26
Generally, getting FIRST PROGRAMMER JOB, is not easy anywhere, you have to attend many interviews. It is not about programming skills. – pandu Jul 6 '12 at 8:32
up vote 7 down vote accepted

A career in software development tends to be a lot more fluid when it comes to technological knowledge than just "I am using language X" - I have worked in computer security (C++, Java, Perl, Python), defense (C++), and some startups and web companies (Java, Python, C#, Ruby). I have never really been afforded the opportunity to be a single platform or single-language person, except at my current job (using C# in a pure Windows shop), and Visual C++ is a specific implementation of the C++ language that is only available on a single platform (Windows, though the C++ knowledge itself is rather portable in terms of language constructs).

This does not include anything else I have learned for job and on the job - MySQL, Oracle, actually learning and becoming a Solaris/Linux/Generic Unix expert, servers, build systems, Qt (the framework), boost, Javascript, XML, security, etc. etc. etc.

I think it's more important to know that you will likely be expected to do more than just use some particular language - if you want to work in Silicon Valley, I will say C++ is actually not a heavily sought-after language, though it's in use at some major companies like Oracle, Facebook, and Google. You will find that Valley companies tend to seek Java and Ruby knowledge, as well as Javascript expertise.

More than likely, you will be learning and using multiple technologies, languages, and platforms to stay up with the speed of the Valley. I interviewed out there a few months ago (at a very nice startup, got an offer but ultimately turned it down due to personal and family obligations here). They were a Ruby company (I wanted a Ruby job but had never used Ruby professionally) and did not care that I had not use Ruby professionally. Companies out there are not going to be interviewing you for very specific knowledge, they need to find someone who's very flexible, adaptable, and able to pick up many things and do multiple things in rapid order. Windows itself seems to be a rather rare development platform in Valley and Valley-ish companies - developers tend to use Mac OSX or Linux, and companies use Linux for servers (due to cost and general availability on platforms like Amazon EC2, Heroku, and Engine Yard).

I will say the most important thing is to keep experimenting and learning - even on your current job. I am developing my Python, Scala, and R knowledge by using them at my current job (the company does not use any of them in production) because it's easier for me to prototype and experiment in those technologies than using C# up front. It helps me get work done faster in the end. Also, understand that there are many technologies out there and while you will develop expertise in a few, you will gain passing knowledge across a wide variety of technologies, platforms, and languages.

share|improve this answer

C++ is still a heavily used language. It is witnessing a renaissance at Microsoft per Herb Sutter. That should be encouraging to continue studying VC++. Industry investment in C++ might see more vigorous growth both in and out of Microsoft camp.

If I may add, do learn other languages as well. A popular scripting language like Ruby or Python; a new language like Rust or Go or Dart; a functional programming language like Lisp or ML. Even if you don't use them everyday, what they teach you tend to come a long way in your career.

share|improve this answer
Thank you for your recommendations. I think they are useful. – Falconapollo Jul 6 '12 at 0:57
C++ != VC++ these are not the same thing! – Jarrod Roberson Jul 6 '12 at 2:30
Yes, you are right. – Falconapollo Jul 6 '12 at 2:39
I've been a Windows C++ developer for 15 years. I'm not sure what is meant by 'VC++'. Visual Studio supports modern standard C++. There are many C++ class libraries that come in handy in Windows programming. XCode supports C++ for the Mac, and lots of Mac products contain C++. They don't call it 'XC++' though. I like writing writing programs for Windows, but I would not encourage any student lock themselves into just C++. Learn some of the server side languages and tool chains, and at least one good scripting language also. – Jim In Texas Jul 6 '12 at 2:59
I think VC++ is the set of components in Visual Studio that support development using C++. – Agnel Kurian Jul 6 '12 at 4:23

Short Answer: Yes, you can find!

How? Start with updating your resume and uploading it in **, or, etc.** Btw, stack exchange has also Careers 2.0 service, where you can look as well.

I would also advice to learn some other web-development tools and languages. Being locked-up to one platform (windows desktop applications) and VC++ might be a disadvantage. There are some mainstream trends in projects to use C#, Ruby, Java, Python, etc. Thus, there is a need to become familiar with HOT tools and technologies in the market !

what should I do in the recent years?
  • Master your tools and become expert in languages and tools that you use everyday

  • Follow developer forums and newsletters like

  • Keep learning, and looking for opportunity that better matches your interest !

share|improve this answer
aha, you tell me something specific about how to find a programming job. Thank you for your reply. – Falconapollo Jul 6 '12 at 0:56
@Falconapollo, references to find a job websites are given on my post – Yusubov Jul 6 '12 at 0:57

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