When I browse the recruiting information in the website, I always see the following requirements:"The candidate must have more than 3 years experience in C++ programming" or "The candidate must have more than 3 years experience in iOS development". I would like to ask the recruiter:"Is working experience really so important?"
In my opinion, the working experience is not a good measurement to decide whether a candidate is fit or not, and use this rule just like using the lines of code to judge the program is good or bad. Frankly, the grammars of every programming languages are similar, and the important thing under the programming languages are the thinking: what is the essence of object-oriented thinking? why does this programming language introduce this feature? etc. These things can't easily be judged by the years of working experience. If a man doesn't think deeply of this work, even if he has worked more than 10 years, what's so special about that?
4 years ago, I came to my current company. I didn't have any working experience about my work, even hadn't heard about SS7. But after a month, I found the SS7 protocol stack was very like TCP/IP: they both have routing functions, transport management, etc. After 3 months, I had worked smoothly and not weaker than other veterans. From this progress, I learned there are many commonness among the different knowledge, so long as the man can drill down the work, he can soon become a qualified engineer.
One day, a famous company want to find an engineer who had more than 5 years experience in C++ programming. After reading the information, I sent an email to the recruiter and told that although I hadn't use C++ for many years, I can soon master it, and the most important thing is the man's ability, not the number of age. Not surprisingly, the recruiter politely rejected me: "Sorry, sir. You don't have the requiredrelated experience, so we can't consider you ......".