I am over 30 years old, and I also encountered a workplace crisis this year...

Having been in the software testing industry for so many years, I am about to reach middle age, and I will face the same problems of transformation or job-hopping as everyone else. Here is a summary of my views.

There is such a common phenomenon about finding a job. Job supply and demand cannot match~

1. The most distressing thing for test recruiters, especially recruiters of first- and second-tier Internet companies, is recruiting. For the company, it is very difficult to find a suitable person. Every day, I cast various nets, read hundreds of resumes, and interview dozens of people. It is not bad to find a favorite partner.

2. Many testing partners find it difficult to find a job, especially in big companies such as Baidu and Tencent. They need to have the following abilities: they must be able to write code, they must have software architecture capabilities, and they can always ask questions in interviews that are not usually used at all. technical problems. And work experience, communication skills, education, age... These have become the reasons for the interviewer's rejection.

Why?

The mismatch of capability requirements is the core problem. After 2010, the real rise of the Internet industry caused the domestic software development model to slowly turn around, and the rapid iteration model gradually emerged. The development cycle became shorter and faster, and the iteration became faster, but the system became larger and more complex. The original test work mode and scope of work are increasingly unable to meet the requirements.

However, it is difficult to change the skill range of a large number of practitioners, and the industry has great inertia. From a macro perspective, a large number of QA skills changes that cannot keep up with demand changes are the main reasons for the mismatch between market supply and demand.

What should be done?

 So what are the career development directions of software testing? As a software testing engineer, how should I make a career development plan for myself?

First: Only do manual testing, and the career development of test engineers who do not understand system implementation will become more and more limited.

Second: Students who can transform to meet market demand will get excess returns in recent years (because the market is in short supply, companies have to raise prices to find such people).

 Third: For individuals, self-growth is always the most important thing. You must always be responsible for your own development. Don't rely on the external environment. It is only reliable to find a way to become a favorite in the market.

So, why are those people who get various offers at the first interview so popular?

Here is also my personal point of view. Regarding communication skills, work attitude, interview skills, etc., I won’t say much here. You can refer to the Atstudy online school service number, there are many on it~~

Today I mainly talk about it from a technical point of view:
 

01
 

The core of the test - project actual combat experience

Generally speaking, everyone needs to master the theoretical part, and the theory will not be used as the standard for evaluating talents in actual work. This is not to say that basic knowledge is not important, but from an interview point of view, if you have a complete and systematic practical experience in testing projects, you will surpass more than 50% of the applicants.

What is a more complex system?

A system developed by investing 50 people can be called a complex system. Therefore, complex systems are not very uncommon. However, if you only touch a simple module, or even just test the maintenance development of a stable module, without a comprehensive understanding, you cannot say that you have tested a complex system. Having the experience of touching a complete project from start to finish is invaluable.

02

The Basics of Testing - Test Verification

Judging from the HR of our company, they have interviewed hundreds of people and often ask a few questions: What will you do if there is not enough time for testing? What would you do if you were asked to test a system that you were completely unfamiliar with? What test design methods do you usually use? What seems to be a very common problem is very challenging.

Because most practitioners have not undergone systematic training and learning, and have worked for many years, they still lack skills and their consciousness is off. For the work after software testing, ISTQB exam and system knowledge, it is recommended to take an ISTQB certificate or a software tester (soft exam middle item), you can surpass more than 80% of the applicants.

03

Step by step advanced test development

If you want to get hand cramps in the offer, the fastest way is to improve your technical level. If you can only do a little bit of manual work, you are destined to not go for a long time, so how to advance from functional testing to automated testing/test development, what hard skills do you need? (It used to be a simple list of some knowledge points, here are the specifics)

1) Possess certain testing experience.

I guess someone will say: Isn't this nonsense? How to test development without testing experience! But I want to refute you, that is, some friends with strong learning ability can be said to be handy. But for us ordinary people, only by experiencing the pain points and difficulties of testers in their own shoes can we actually solve their problems.

2) Know how to use common and important testing tools.

The key point here is that many small partners may still be doing manual testing, but if you want to be competent in test development, you must advance automation and use testing tools, such as selenium commonly used in UI automation; Postman commonly used in interface automation; commonly used in performance testing Loadrunner, jmeter; testng, junit commonly used in unit testing; appscan, js injection, xss injection, sql injection, etc. commonly used in security testing.

3) Ability to develop test tools.

Here are some mainstream technology stacks:

Test tool system framework construction:

1)java+maven+SpringMVC ;

2)python+django

For the first framework, it is best to create a hierarchical multi-module project in order to better design the code framework and structure. Usually the dao layer is mainly associated with the database; the web layer is the controller, which is the connection between the front end and the service layer; the service layer provides some public services or business processing logic. After the Maven project is established, use the current mainstream framework-springMVC to associate the front-end and back-end databases.

For those who have no code foundation and want to get started with test development, they can learn the second framework: python+django, which is easier to learn and use.

Front-end page: html, css, jquery, bootstrap, Echarts, the front-end page is the face, the entrance for users to operate, and the most intuitive place for data input and display.

Css style determines page layout and aesthetics; jquery is a js framework, which greatly simplifies js programming; echarts can provide simple and easy-to-use common charts, making the page more classy and data display more intuitive and concise.

Back-end services: spring, mybatis. Using the Spring framework can simplify many basic tasks. After configuration, it can facilitate the construction of business applications. It is a non-intrusive lightweight container.

Database: Mysql or Oracle database installation, library table creation, field design, common sql statements

System: Proficiency in building projects on windows or linux systems, log viewing and other operations

Service container: tomcat service deployment, nginx load configuration, docker use

Continuous integration: git, jenkins

Development tools: idea and eclipse

Code debugging: unit debugging of testng or junit and use of debug and remote debug

……
 

04

Beyond Skills - Your Personal Traits

Generally, the following traits will greatly add points: fast learning, systematic learning, applying what you have learned, systematic thinking, strong driving force, technical thinking, outstanding communication skills, organization, stress resistance, optimism, and frustration resistance , ability to adjust quickly, awareness of iterative improvement, ownership, teamwork, vision and planning. These characteristics reflect the core of a person. People with a strong core can do whatever they want, and they will definitely be able to make up for their temporary lack of skills. Therefore, when recruiting, it often plays a decisive role in judging whether to hire~
 

05
 

Add a basic knowledge here

You have to know this, the basic principles and basic operations of the operating system, network knowledge such as TCP/IP, HTTP knowledge, database knowledge, proficient use of SQL, Web and mobile terminal knowledge, security knowledge, basic security attack and defense principles, software engineering/ Development Process Management···

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 and you will not go away. Extra detours, so thinking is very important.

The motivation to learn is actually a very simple thing. It may be easier to understand it as a goal. What level do you want to achieve after you finish your studies? In this way, you will not be stumped by difficulties during the learning process, and you will have A constant flow of motivation keeps you going.

Finally, I would like to thank everyone who has read my article carefully. Reciprocity is always necessary. Although it is not a very valuable thing, you can take it away if you need it:

These materials should be the most comprehensive and complete preparation warehouse for [software testing] friends. This warehouse has also accompanied tens of thousands of test engineers through the most difficult journey, and I hope it can help you! Partners can click the small card below to receive   

Guess you like

Origin blog.csdn.net/OKCRoss/article/details/131287566