(original text: nakeman.cn/writing/dia…)

At the end of October, I realized that I was almost ready for job hunting, so I began to send out some job applications, three or two a day. I didn’t receive an interview call for more than a week. After seeing my resume, some friends said that the blank space of the last three years in my resume was a hard wound. Without project experience, I would be rebuffed everywhere. After hearing this, I formally thought about the problem of “experience”.

How to get “f * * k experience” without a job is not just a joke (see chart), but a real problem for starters (including career changers and non-graduates like me). But on the other hand, isn’t experience also knowledge? Personal experience is only one way to gain knowledge and experience, not the only way! Is not indirect experience, abstract experience also experience? So there is confusion about what experience is and how to get valuable experience.

Table of Contents

What is experience? The first strategy is to do virtual experimental projects. The second strategy is to complete professional knowledge, focusing on technical knowledge; The strategy reference of self-study technical knowledgeCopy the code

What is experience?

The so-called experience, is a certain kind of problem (task), master the basic skills (knowledge), the basic conditions to solve, and realize the significance of the task or problem. And that mastery is mostly achieved through personal experience. Experience is validation.

The realization of experience (form) depends on the “experience of meaning”. The biggest deficiency of indirect experience is that the practical meaning of the task (existing product) targeted by knowledge (tool) is not completely determined. You haven’t made anything that actually exists, and it’s hard to demonstrate its value, or even to know if it actually works. To put it simply, indirect experience (ability) is false, you can not fully prove that it can make real and meaningful, let alone convince others that you do have this experience and ability.

For a simple example, in the functional development of JS, you may have mastered the knowledge of partial functions, such as the partial function technology can improve code readability; In the absence of a substantial software product, only with examples, this technique and meaning to you are false, so you can only say that you understand the nature of partial functions, but can not say that you have mastered this aspect of functional development experience. Because knowledge is abstract, the “application of knowledge to practice” may also require other knowledge and experience.

There are two strategies to follow

Indirect experience is not equal to direct experience, but it does not mean that indirect experience is not valuable and has no reference value to judge the ability level in the interview. This conclusion should be beyond doubt. Therefore, it is short-sighted to regard actual project experience as the only “stepping stone”. For those who are new to the industry, how to overcome the paradox that “you can’t get experience without a job” is their biggest concern.

You can’t get direct experience without working, but it’s not the real goal of our development. As a new entrant, we can have two strategies to improve our ability more than to participate in the practice. To have experience, or even the so-called “three years of work experience”, convince the interviewer and get the offer.

The first strategy is to do virtual experimental projects;

This is standard practice in training institutions, but for self-learners, project selection and completion alone is an additional challenge;

The second strategy is to complete professional knowledge, focusing on technical knowledge;

This is the investment I personally consider the most valuable, and it has always been the choice, but it has proved to be a much more dangerous one.

For those who are new to the industry, or who are determined to change careers, it is safest to attend a training class if you can (although I personally am not optimistic about the current training industry), because after all, there are experienced people to take you to experience; If confident self-learning ability, dare to take risks, self-learning more freedom, the harvest may also be greater, at least to their own self-learning ability has a good training. Both have their advantages and disadvantages.

Whether self-taught or paid for, the first strategy is more attractive to the average corporate employee because its results are closer to “project experience.” The second strategy, I want to focus on analysis, because it is my main choice, choose to improve their ability of strategy.

Strategies for self-learning technical knowledge

If self-study is chosen, one of the major difficulties of both “direct compulment strategies” is the guidance of learning, such as what virtual projects to choose to practice and what technical knowledge to choose to focus on. Thus, we are further faced with a new difficulty and need to make a “new strategic plan” — how to do valuable project exercises and technical knowledge learning (as opposed to doing the previous experience of difficult strategies);

The strategy of “how to learn valuable technical knowledge” is mainly analyzed here:

First, compare popular interview questions, summarize valuable technical knowledge from other people's interview experience; Second, book selection;Copy the code

The second strategy here is the safest, as many technical developers share their development experience in books, which are more comprehensive than technical articles, but may need some guidance on filtering. Here is JS development, I recommend the following two (if you have a better, welcome to leave a message) :

Their characteristics meet the previous analysis, first, partial technology; Second, comprehensive; And they’re very thin, about 200 pages. Can say so confidently, if these two books read digest down, not three years of experience, have “one or two years of experience”!

There is room for further research on these two books and how to gain development experience (e.g., what it means to have development experience), so I’ll probably take an excerpt from one of these books.

reference

  • In software engineering training camp www.derrickbeining.com/2017/04/29/…
  • Won the first developer job without degree in CS www.samanthaming.com/blog/how-i-…