


With the rise of the Internet, is it still necessary to learn C++? It seems that it is getting harder and harder to find a job in C++...
I have been working for 3 years. I started self-taught C++ after graduation. I graduated from a second college with average level. Since I was very good at school, I worked overtime and studied C++ until I found a job. Now I am pretty good at C++. Familiar with it, I am becoming more and more familiar with Linux knowledge. It is not a big problem to work under Linux. I know a little about Go language and PHP.
But I have been looking for a job recently and haven’t been able to find one. I don’t know if there are too few companies recruiting people during the summer or because my skills are limited. I also have 3 years of work experience and I haven’t been able to find a job. This makes me wonder about the current development of the Internet. Under the circumstances, should I switch to other languages, such as java or php, go, spark, etc.,,,,,
Summary: Do you have to stick to c++? There are fewer and fewer Internet companies using c++, and the scope of c++ It’s getting narrower and narrower, the requirements of good companies are too high, and small startups can’t afford wages and are too picky. Is it still necessary to keep doing C++? I don’t know what will happen in the future...
Reply content:
When cars first entered the civilian market, many people who could drive could repair cars. Later, cars became popular and technology advanced. Now, let alone repairing cars, there are not many people who can drive manual transmissions and wire wires. Car repairing has also become a Professional and professional.The same goes for programming technology. The era when companies like BAT would build their own infrastructure on a large scale has passed. The next generation of Internet giants, even if they are as large as Didi and Meituan, will only leave infrastructure engineers. Not a lot. In the future, the threshold for business system development will continue to decrease, and system languages such as C/C++ are better at infrastructure. There will be fewer and fewer positions in this direction, and only large enterprises can afford it. The job requirements for people It will get higher and higher, and the road to growth in this direction will be more difficult, but compared to those engaged in business system development, the economic returns of senior C/C++ engineers will still be higher. When I was in college, I almost only learned C++. Later, I went to Microsoft during my internship. Only when I got there did I realize that C++ was not used in that group. What should I do? With the solid foundation that C++ brought me, I completed the task given by my boss to "learn the basics of C# and WCF within two weeks" on time and started working smoothly. With the emergence of various "cloud platforms", they are becoming more and more modular. Some functions that took a lot of time to do before can now only be integrated with various third-party development modules.
Take my current project as an example: IM, video server, SMS server, etc., all integrate functions on various platforms. Just download an SDK and call the interface. There are few bugs and save time and effort.
This has resulted in a large number of positions being replaced by these cloud platforms, the threshold has become higher and higher, and jobs have become increasingly difficult to find.
During the Industrial Revolution, a large amount of manual work was replaced by high-efficiency machines. Now it is the turn of the IT industry.
Come on, big brother! Still familiar?
Understand the rules for auto and template parameter resolution?
Iterator types of std::copy and std::find
Scenarios when iterators fail?
What are the iterator types of common standard library containers?
The time complexity of std::push_back? why is it like this?
What exactly do you mean by being able to work under Linux? (You can refer to the last chapter of Chen Shuo’s book. If you have used most of the commands he wrote above, you can say that there is no problem working under Linux)
C++ is now used in game engines and comparison of performance requirements It is often used in places such as high-end real-time trading systems. The threshold for C++ programmers is high and the learning cycle is long. Companies recruiting C++ programmers naturally have high requirements.
As for whether you should learn it or not, you make your own decision.
Actually, I think after working for three years, you should not say what language you know, but what direction you are good at or familiar with. The reason why I can't find a job is not because of C++, but because my skills are not good enough.
The overall number of C++ positions is definitely less than that of Java. But the poster also has a job now. I want a high-paying job, but my level is not good enough. So it is obvious that his level is not up to the high salary he requires. Some people say that with the same amount of effort, he can find a high-paying job by learning Java for 3 years. I have reservations.
But lz can try to develop into Java. It is true that the demand for C++ is narrower. As far as I know, it is mainly the high-performance backend, high-performance computing, and graphics of large companies.
In addition, lz has been working for 3 years and should have his own direction. Stop simply discussing C++ or Java. Spark is a library and not a language. Why should it be juxtaposed with go and java? You can use java in spark Write above. A senior engineer should be able to build a system in everything he does. Only then can he be worthy of your 3 years of work experience. To add an attributive, it is increasingly difficult to find a job with low-level C++.
Basically it’s like this:
A: How is your C++ mastery?
B: Proficient.
A: Get out.
C: I think it’s okay
A: Okay, let’s see how to write this question, balabala
C: balabalabala…
A: 1. Well, not bad, stay
2. The level is not good, next one Of course it’s necessary. Wait until I master Py. It’s been three years and you’re still looking for a job based on language, your previous technology or business direction. pattern.
During the time when I was looking for a job, I really doubted myself. I graduated in June and finally got an offer yesterday.
I am a junior college student, I studied Android in school, I have watched all series of Geek Academy videos, and I even bought a membership in 2014. After following @stormzhang’s self-study blog, um, I bought a ladder.
I have always been stupid. I followed the videos and tutorials and typed many demos. Then, when it was time to go out for internship in school, I couldn't find an internship job.
After being fished by training institutions in Chongqing 16 times, I lost the 17th time. Then I signed the agreement and went for training.
I agreed to train on Android, and then I started to understand C language from assembly, then socket network programming, and then C++.
C++ primer saw the container part, and then I started JAVA object-oriented again, um, "thinking in java", and then followed the IO part.
I had a falling out with the training class because I had to falsify my resume and project experience.
Later, I bought another month’s worth of videos from Geek Academy, and after reading the Kindle “Android Interview Guide” (it seems to be the title of the book)
I found that the demo was no longer enough for me. Because you can understand it after reading the tutorial once.
Start submitting your resume and interview.
I learned smarter this time. I used to write five items about project experience on my resume, but this time I only wrote two.
A company asked me to do picture synthesis before. I had never done this part before, so I didn’t go.
Once this week, I finally met a good company.
I didn’t ask about project experience. I only asked about the size of the C language structure, C++ virtual, Java exchange variables (this is not very ideal, I haven’t thought of it now.) and OOM.
Then I asked about the network protocol and found that the socket was blocked.
The offer was given that afternoon and I will start working next week.
I asked the boss who interviewed me. It was just simple client programming and it didn’t involve hardware (Bluetooth, WIFI, NFC), which I am relatively weak in.
It took a total of one month and five days. I interviewed 12 companies, 4 companies had technical interviews (carefully asked about the technology), and 1 company gave me interview questions (Android interview questions from 2 years ago).
The rest should be divided equally between HR and the boss.
By the way, let’s talk about the current situation in Chongqing. E-commerce is everywhere. If you have an idea, you want to start an e-commerce business, and then you need someone with several years of experience.
I secretly looked at the code of a person with three years of experience. I can only say that the writing of the class I looked at was not very good.
Some asked me to use PHP as the front desk after introducing the project. Some asked me to introduce myself and then asked me to wait for news. Some chatted well on the phone and online. They invited me for an interview and then told me that the person in charge was no longer available. There was no further notification. There is a company where I am still working as a remote technical support company (my boss asked me if he had a question, and I told him that he just wouldn’t let me go to work. He made an appointment to chat and treat me to dessert). I was also told that there was no basic salary and I would be paid for each component I made, which made me confused.
Fortunately, I didn’t give up.
I think the biggest benefit of learning C++ is that it allows me to understand Java better.
(Will you attract bad guys?)
It was really difficult to find a job during that time. I wanted to give up countless times and just find a salesperson or salesperson.
Because the repayment agreed with the training side will come next month. It will be 1,500 per month, and it will take one year to pay back.
I don’t regret going to the training, I just think that during the interview, I can’t follow the process written by others online?
Telephone interview, written test, first round, second round. .
I have answered so many written test questions and interview questions.
Not used.
To be honest, our training class is quite strong. After 4 months of zero-based training, I got 8K (local in Chongqing) and did very well.
Looking back, I am still too young. I once thought that even if I couldn't find a programming job, I would just do something else first.
Ask the question, even with four months of zero-based training in C++, you can find a job. What are you afraid of?
Some of those who came out of the training program wrote three or four years of work experience.
Routine: Look at other people’s resumes and then revise your own. Then just go to the interview! come on! Only technologies with high development efficiency are popular, and C++ is fatal in this area. It is only suitable for developing high-quality software that has been polished for a long time. But in the Internet era, speed is the priority, so not many companies use it, and naturally it’s hard to find a job.
Learn popular technologies, there will be more job opportunities. I have C++ background and can learn quickly.

PHP is used to build dynamic websites, and its core functions include: 1. Generate dynamic content and generate web pages in real time by connecting with the database; 2. Process user interaction and form submissions, verify inputs and respond to operations; 3. Manage sessions and user authentication to provide a personalized experience; 4. Optimize performance and follow best practices to improve website efficiency and security.

PHP uses MySQLi and PDO extensions to interact in database operations and server-side logic processing, and processes server-side logic through functions such as session management. 1) Use MySQLi or PDO to connect to the database and execute SQL queries. 2) Handle HTTP requests and user status through session management and other functions. 3) Use transactions to ensure the atomicity of database operations. 4) Prevent SQL injection, use exception handling and closing connections for debugging. 5) Optimize performance through indexing and cache, write highly readable code and perform error handling.

Using preprocessing statements and PDO in PHP can effectively prevent SQL injection attacks. 1) Use PDO to connect to the database and set the error mode. 2) Create preprocessing statements through the prepare method and pass data using placeholders and execute methods. 3) Process query results and ensure the security and performance of the code.

PHP and Python have their own advantages and disadvantages, and the choice depends on project needs and personal preferences. 1.PHP is suitable for rapid development and maintenance of large-scale web applications. 2. Python dominates the field of data science and machine learning.

PHP is widely used in e-commerce, content management systems and API development. 1) E-commerce: used for shopping cart function and payment processing. 2) Content management system: used for dynamic content generation and user management. 3) API development: used for RESTful API development and API security. Through performance optimization and best practices, the efficiency and maintainability of PHP applications are improved.

PHP makes it easy to create interactive web content. 1) Dynamically generate content by embedding HTML and display it in real time based on user input or database data. 2) Process form submission and generate dynamic output to ensure that htmlspecialchars is used to prevent XSS. 3) Use MySQL to create a user registration system, and use password_hash and preprocessing statements to enhance security. Mastering these techniques will improve the efficiency of web development.

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

PHP is still dynamic and still occupies an important position in the field of modern programming. 1) PHP's simplicity and powerful community support make it widely used in web development; 2) Its flexibility and stability make it outstanding in handling web forms, database operations and file processing; 3) PHP is constantly evolving and optimizing, suitable for beginners and experienced developers.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version
Useful JavaScript development tools

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment