Byte taught me a hard lesson: When a crisis comes, you don’t even have time to prepare!

The successive layoffs of major Internet companies and the disappearance of industries restricted by policies have made this year's job hunting even worse. They want to lie flat but have no capital. Some people say that software testing positions are saturated. Many job seekers believe in this, because the voters There are fewer and fewer resume responses. There are even many big factories directly targeting the fresh graduates who came ashore this year...

I wanted to write something to share my own feelings. Everyone will have feelings after a period of experience, and maybe my outsourcing experience will resonate with the same people.

my outsourcing experience

Why do I always do outsourcing? The reason is salary and technical aspects.

The first year : I did outsourcing for a year, with a salary of 5k, functional testing, and contact with Linux and the Internet. I quit outsourcing, raised my salary, learned some other skills and decided to leave.

Second year : Salary 7k, functional testing, exposure to Linux and databases, databases to be honest, software testing, if you don’t test the database specifically, general multi-table query, understand the index, the transaction is almost the same, the reason for leaving is the salary of entering the company I was pressured and I was very upset. After I entered the company, I found out that it was indeed the fault of the people in the workplace. Also, when I first joined the company, I just hoped that others would take over the business. It is normal to ask questions if I don’t understand, but some people are talking nonsense, and the leader didn’t help me. The meeting was also very scattered, and I left when I felt uncomfortable. At this time, my technology and business accumulation was very little, and I was very sad at the time.

The third year : Salary 8.5k, free meals, gray box functional testing, contact with database and interface testing, I like the nature of the work, because the module I belong to has gone to other departments, this time I did not take the initiative to leave, The outsourcing company changed a project for me and went to Ant Financial Services, with a salary of 14k, contact with interface testing, databases, shell python scripts, and code reading can be improved, but code writing will be weak, and I have not left the job. There are still several offers on the website. The reason for choosing this place is that other companies can only give 12k.

The overall feeling is:

  • This job lacks a sense of belonging, and there is always a gap in my heart, and there is not much room for improvement.
  • Without access to core technologies, the company has no technical training and research for you,
  • The work is simple and the business is repetitive, usually because of the existence of tool people.
  • The salary is not high, although there is overtime pay, it is still not high

You still have to constantly improve your technology in order to stand out in the involution environment!

One can imagine the pressure faced by those students who have been in the industry for several years but are still functional tests. After all, the software testing industry is still a technical position. Since it is a technical position, it must rely on technology to speak. Continuously mastering new skills and improving the ability of software testing to "find bugs" has become an urgent problem that software testing practitioners need to solve. Therefore, most junior functional testers are now moving closer to automation, performance, and security.

However, there are still many software test engineers standing at the "crossroads" confused, helpless, and unable to find their own direction.

Basic skills that test engineers of different levels should possess

The first one: We call them Testers/Test Engineers

To put it bluntly, it is hard work. The benchmarks are Baidu's T3 and T4, Ali's P5, and Tencent's T1-T2. The main work is requirement analysis, test plan, test strategy, and test execution, all of which are business tests. Of course, you can master certain domain knowledge, for example, if you are testing unmanned vehicles, what is the business of unmanned vehicles, I will test AI, what is AI, I will test big data, what is big data, and I will test e-commerce , What is the architecture of the e-commerce system, and business knowledge must be understood. The other is to lead the outsourced team, and some of the outsourced team may be handed over to this part of the people. The main thing is to manage these basic business testing tasks.

The second: test development engineer

Now the first level is not recruited very much, most of them start from the second level. Once test development is mentioned, you must understand research and development, understand testing, and have a certain ability to work in depth. From this level, your programming ability is required, Java, Python, shell, SQL, this is the most basic, and then business test. These people will still be responsible for part of the business testing work. The boss will arrange a ratio for you according to your ability. You are very capable, 80% do technology, 20% do business, if you are not strong, then 80% do business, 20% participate in part of technology. If your technology is too low, then do 100% of all business tests. So at this time, a reasonable time division will be made according to your ability. The requirements here are suddenly higher than just now. Client UI testing, server interface testing, and performance testing basically all fall into this category. During the interview, performance and non-functional tests may not be a main interview point, mainly in automation and programming skills. That is to say, when you go out to find a job, you are most likely to get stuck. So at this level, it is also working, that is, not only doing business testing, but also doing technical transformation, and writing some automation, but it still focuses on business.

Third: Senior Test Development Engineer/Test Architect

So at this level, there are very few business tests, or even none at all. At this time, it is more responsible for the process management of the entire team. Process management system, white box testing system, development of testing tools and testing platforms, quality monitoring and quality management. Usually in a team, there will be a test manager, plus 1-2 senior test development engineers, or test experts. He will build the entire continuous integration system. Continuous integration, white box testing, and the development of some platforms will mainly be handed over to these people. Then he will bring 2-3 test development engineers, and these test development engineers will follow him to learn while doing business. Then the rest of the work is handed over to outsourcing companies or people recruited by the school.

Learning is like rowing upstream

Never stop learning, especially in the rapidly developing Internet industry. Of course, learning is necessary, but don’t blindly follow the trend of learning. The higher the salary, the more you need to delve deeper into one or several specific fields. Continuous learning in fields that you are familiar with and have a working background is the key to career development. efficient way.

Of course, the real opportunity to solve the problem still comes from work. Regarding skill improvement, whether it is self-study or participating in a training institution, you need a correct direction to guide you to learn, so that learning will be easier. Take unnecessary detours, so thinking is very important.

My road to automated testing is inseparable from the plan at each stage along the way, because I like planning and summarizing, so my friends and I spent a period of time to organize and write the following "Automated Test Engineer Learning Route", also A lot of [network disk resources] have been sorted out, friends who need it can continue to read. Hope that gives you help and direction...

1. Python programming language

2. Automated testing framework

 3. Interface automated testing

4. Web/UI automated testing 

 5. Continuous Integration

6. Performance test 

7. Web security testing

 Eight, test development

The above is a technical roadmap for automated test engineers that I compiled. I hope everyone can benefit a lot from this growth process. Improve the testing technology in an all-round way and establish a set of own technical system. Helping everyone to continuously learn and optimize the technology stack, follow up with advanced and mainstream testing technology, bring you not only the improvement of technology and salary, but also change the status and mentality of testers in the field of IT technology, and improve Test the technical depth of the industry. 

In fact, these high value-added knowledge and abilities can be self-studied while working. I believe that an annual salary of 30W+ is also very simple! The key is to see if you are willing to learn!

Make reasonable use of every minute and every second of your time to learn and improve yourself, and stop using "no time" to cover up your laziness in thought! While you are young, work hard and give an explanation to your future self!

-There must be a way, and then there will be success-  Finally, I wish you all get a satisfactory offer as soon as possible~

Today I mainly share my insights and learning routes with you. I will share more about software testing resource tutorials in the future. If you have friends who have been helped, you can follow and like it~

 

Guess you like

Origin blog.csdn.net/weixin_47648853/article/details/130784860