preface

It’s the annual job-hunting season again, and choosing a job is as important as choosing a major in the college entrance exam. Now still confused friends can pay attention to my column – help autumn tips, maybe for you to clarify the situation some role.

Job hunting is an important test for every fresh graduate majoring in computer science to enter his or her career. At this stage, many people will feel confused and entangled, not sure what kind of job they should look for.

Read the following content, will be helpful to you ~ also sorted out some information for everyone, the need of friends can be directly click to receive.

  • Summary of Java basic knowledge
  • Internet big factory interview core elements
  • 2021 Golden three silver four interview real questions selected

The body of the directory

  • Determine the direction of
  • Current situation of computer graduates seeking jobs
  • Computer major this year unripe obtain employment direction and classification
  • Computer major this year’s job search strategy

First, determine the direction

As for the choice of direction, the sooner we decide, the better. In life, we have to make countless choices. As the saying goes, “Choice is more important than effort”, so the earlier we decide our choice, the better for our future career development.

The employment direction of computer professional graduates

Now most college graduates will face the problem of “whether the employment needs to be in line with the major”. If you plan your career well in advance, you won’t have to face the same problems again. At the same time, I also think that professional work is not necessary and professional, as long as it is suitable for their own is the best. ** So what are some employment directions for computer graduates?

Graduates majoring in computer science may find employment in but not limited to the following categories:

  • Further education, including postgraduate entrance examination, study abroad and other re-education direction.

At present, college and undergraduate degrees have been universalized, and the social demand for highly educated talents is gradually rising. It is also a very correct way to choose to continue to study.

  • Civil servants or institutions.
  • Software development related derivative positions, such as testing, product positions, etc.
  • Engaged in software programming related work.
  • Other business employment, such as sales, marketing, etc.

Second, the current situation of computer graduates seeking jobs

I collected and sorted out a data about the employment situation of recent graduates majoring in computer science in China. According to the data, more than half of them did not choose to work in IT industry even though the employment salary was higher than that of other industries. The main reasons for this contrast are as follows:

  1. A small number of graduates choose other industries according to their career plans.
  2. Most college graduates give up the IT industry because they don’t have relevant programming skills.

At this point, there is absolutely no need. Because no matter what industry we’re in, we’re bound to run into similar situations later in our careers. When we come across, what we should do is to find ways to solve the problem instead of avoiding it.

Similarly, if personal skills do not match the employment requirements, we can improve our skills through targeted learning and re-education and training, so as to meet the employment requirements.

Third, the computer major graduates employment direction and classification

First, according to Stack Overflow’s Developer Survey 2020, back-end development and front-end development continue to be the two development directions with the highest employment rates.

Secondly, according to the “2020 Programmer Talent Big Data Insight Report” released by Liepin.com, the highest demand for software development engineers in China is Java development engineers and Web front-end development engineers respectively.

At the same time, Python benefits from its advantages in cloud computing, system operation and maintenance, graphical GUI, big data, artificial intelligence, machine learning and other application scenarios. With the rapid development of the industry, Python is becoming more and more popular and used. According to the latest TIOBE report, Python overtook Java to regain second place in the popularity index with a 2.75% increase in the year to May.

Therefore, I recommend that you choose between Java backend developer, Web front-end developer, and Python developer first, and choose from other technical fields second.

Ps: Here is the learning content for the programming novice:

1. JAVA direction

Since its inception in 1995, Java has become the most widely used development language in the world due to its excellent versatility, high efficiency, platform portability and security. Java engineers are those who use Java to design, develop, test, operate and maintain software products.

So what skills do you need to be a qualified Java development engineer?

The techniques shown in the diagram above are all required for Java development engineers to master. But that doesn’t mean you need to master it all at once. We can do it in stages as we work.

Introduction to JAVA

  • Environment set up
  • Grammar learning, basic grammar and object-oriented knowledge
  • Tool learning, such as IntelliJ IDEA commonly used in the market
  • Java Web page development, involving HTML, CSS, JavaScript knowledge learning

JAVA Early Stages

  • Database learning. MySql is recommended for relational databases and MongoDB is recommended for non-relational databases
  • Proficient in JAVA Web development skills
  • Learn how to use common frameworks such as SSM and SpringBoot
  • Learn how to use common version control tools, such as Git and SVN

JAVA Intermediate

  • Familiar with common Java frameworks and practical work development
  • Learn about Java servers
  • Learn and use Java design patterns, distributed architectures, microservices, load balancing, message queues, and more

JAVA Advanced Stages

Proficiency in most of the common skills shown above, from product programming to architecture to final implementation

2. WEB front-end direction

Front-end development is the process of creating Web pages or APPS and other front-end interfaces and presenting them to users. The user interface interaction of Internet products is realized through HTML, CSS and JavaScript as well as various technologies, frameworks and solutions derived from them.

At present, front-end development in the industry mainly uses frameworks such as React, vue.js and AngularJS, while the previous back-end separated development mode is used for product development. So beyond the basics and framework skills, what else do you need?

WEB front-end introduction phase

  • HTML/HTML5, in the actual work is mainly used in HTML5, but HTML as a basic knowledge is also must master oh
  • CSS/CSS3
  • JavaScript (ES6 syntax)
  • Web requests such as Ajax
  • JSON, XML class general data structure
  • Familiar with various editors (currently used: VScode and Hbuilder X)
  • Learn how to use Google Chrome (which many people think they know, but is more about how to debug and view your applications in the browser)
  • Use Git,SVN and other code management tools

WEB front-end early stage

At present, if you only know HTML, CSS, JavaScript is far from enough to meet the needs of the market, you should at least master the use of some framework.

  • Master at least one of the top three popular front-end frameworks (Vue, Angular, React)
  • Master at least one UI framework such as Bootstrap, Vant, Element-UI, etc
  • Learn how to use plug-ins and components, such as Swiper
  • Familiar with JavaScript ES6 syntax, it will be much more convenient than ES5, and the current compatibility is also better
  • Learn and use CSS preprocessor languages Sass and Less
  • The front-end simulation request tool, currently commonly used as PostMan

Intermediate Stage of WEB front-end

  • Learn and master simple Node.js development
  • Learn and master Webpack, Gulp, etc
  • Learn the development of wechat applets
  • Use one of Vue, React, Angular for project development
  • Familiar with Http protocol and WebSocket protocol
  • Follow industry trends regularly, supplement or expand my knowledge base according to market changes

Advanced Stage of WEB front-end

  • Proficient in Web component and plug-in development knowledge
  • Master server knowledge, such as the skilled use of Node, Nginx deployment, etc
  • Master certain mobile terminal development skills
  • Master some desktop application development skills, such as Electron
  • Keep a continuous learning state, the front-end, server, desktop application skills to use freely, while appropriately expand their own research and development capabilities, such as communication skills, management skills, etc

3. Python direction

Python provides efficient data structures and easy and efficient object-oriented programming. Python syntax and dynamic typing, as well as the nature of the interpreted language, make it a programming language for scripting and rapid application development on most platforms. As versions continue to be updated and new features are added to the language, it is increasingly being used for independent, large project development.

Python is one of the most popular programming languages in China with the rapid development of new industries such as big data and artificial intelligence. What skills do you need to develop Python?

According to the above figure, in addition to the knowledge required for Python, the employment direction includes but is not limited to Web front-end development, crawler development, artificial intelligence development, data mining and automatic operation and maintenance of Python.

Getting started with Python

  • Familiar with Python environment installation and operation
  • Basic Python syntax
  • Master Python functions
  • Master Object-oriented programming in Python
  • Master Python exception handling
  • Master reading and writing Python files
  • Master Python module and package applications

Introduction to Python

  • Basic front-end development skills such as Html, CSS, JavaScript
  • Master at least one database, such as Mysql and MongoDB
  • Master Python’s interaction with databases
  • Learn how to use Flask and Django for Web development
  • Master basic version control tools, such as Git and SVN
  • Familiar with unit testing

Python Intermediate

  • The quantity uses Flask and Django for Web development
  • Master standardized RESTFul API design
  • Master Redis cache
  • Master third-party framework extension and deployment
  • Proficient in advanced database query, transaction mechanism, database design, index operation
  • Learn crawler development knowledge, the use of Scrapy framework and scrapy-Redis distributed components
  • Learn Shell scripts to automate o&M

Advanced Stages of Python

  • Data capture and storage using crawler development related knowledge
  • Master basic order list, linked list, stack, queue, sort, index, tree and tree algorithm
  • Grasp data analysis tools and skills, such as drawing Pandas, NumPy calculation, etc
  • Learn and master general Linux knowledge, server deployment and operation and maintenance
  • At the same time, artificial intelligence can be advanced

Fourth, the computer major graduates job hunting strategies

Fresh graduates of computer science and other majors are looking for jobs the same, are around the following three core issues to consider and choose:

  1. What kind of job should I do?
  2. What are the ways to look for employment opportunities?
  3. How to win the offer smoothly?

Position your job according to your career development

Whether you’re targeting a Java back-end development engineer position, a Web front-end development engineer position, or a Python development engineer position, you should learn more about the industry to refine your plan.

  • Collect and sort out the application scenarios of corresponding technical languages

Different programming languages may not match your personality/preferences in terms of usage scenarios, coding methods, and job content. The most obvious difference here is the difference between the front and back end development positions. The front end tends to be more visual programming (visual programming here only refers to visual, rather than visual programming technology), that is, the code written is wySIWYG effect, directly presented on the page for intuitive viewing. On the contrary, the back-end is more inclined to business logic processing, while dealing with data and servers, providing visualization of data rather than beautiful interface effects of the front end.

  • Understand the job supply and development prospects of target positions in the market

You can search post key word on each channel, check the market this post supplies a circumstance, accomplish in the mind quite well. At the same time, I will preliminarily evaluate the development space of this post and its matching degree with personal positioning based on the above points.

  • Understand the salary of target position in target geographic market.

The purpose of your job is to earn money, so you need to find out the information about the salary of the target position.

We can learn from the average salary data of various positions provided by the IT industry data report and the local salary data of various recruitment channels to ensure that their salary is in line with their psychological expectations. Otherwise, many people will have a big psychological gap and affect their personal career development in the later stage.

PS: You want to interview employment course come here >>

Job hunting Channel Sharing

At present, the existing employment channels can be divided into three categories: school recruitment, social recruitment and internal promotion.

The school recruit

Campus recruitment is a special external recruitment approach. It refers to recruitment organizations (enterprises, etc.) directly from the school to recruit all kinds of levels of fresh graduates. So how do we get admission information? Here’s a screenshot of your search:

Isn’t it surprising that Search has so many existing channels to choose from? How else can we get access to recruitment channels? In fact, it is mainly divided into the following two kinds:

  • Employment information network provided by universities

Search method: school name + Employment information network/Career Development Guidance Center

  • Campus recruitment websites of major enterprises

Search method: ** enterprise name + campus recruitment, ** here to share a few students:

  • Tencent Campus Recruitment
  • Jd Campus Recruitment
  • Baidu Campus Recruitment
  • Alibaba Campus Recruitment
  • Netease Campus Recruitment

Club recruit

There are many ways and channels for social recruitment. The main channels can refer to the following information:

Recruitment website

There is no doubt that recruitment websites are still the main channel for many programmers and even most people to find jobs, and they are also the regular choice for many companies to recruit. There are tons of recruitment websites out there, such as:

  • 51 job
  • zhaopin
  • CSDN JOB
  • Chinahr.com
  • Street network
  • China Talent Hotline
  • China Talent Network
  • Cooperated network
  • Digital Talent Network
  • If the neighbours
  • Pull hook net
  • Your alumni set
  • Zhuobo Talent network
  • The All-rounder Recruitment website
  • Push the net
  • 58 city
  • The fair

Direct investment

Direct mail means that individuals directly send their resumes to HR, so how can we get information about these companies?

The first way is to obtain the above school recruitment, the second way is to go to the official website of each company, through viewing its page console to obtain. Some enterprises like to hide their recruitment channels in their websites, such as Zhihu and Baidu.

Tech community recruitment board

  • Open Source Recruitment in China
  • LaravelChina community
  • ChinaUnix
  • ThinkPHP

headhunters

Headhunters have less contact with graduates majoring in computer science, and will gradually come into contact with headhunters after they have work experience. In order to save the cost of human resources recruitment, many medium and large companies will outsource part of the recruitment work to professional organizations or individuals.

Job fair

Every city will hold various talent fairs irregularly. I still remember that I attended several of them when I just graduated, but the effect was really poor compared with other channels.

push

Internal promotion is the most successful way to find a job, I think there is no one. There are ways to look for extrapolation

  • Find your relevant friends to recommend
  • ** Find QQ groups, wechat groups and other social platforms; ** I believe that there are corresponding peer communication groups in all walks of life, and the IT industry is no exception. You can get or ask if there are relevant opportunities in the group, and the success rate of such opportunities is usually higher than that of recruitment websites.
  • I myself also pulled a Java backend developer talent push group, need friends can enter the bottom skirt

Resume creation and optimization

A cookie-cutter resume is a common mistake most people make when creating and sending resumes. So how should resume make and optimize after all?

1. Resume templates are important

For the fresh graduates majoring in computer science, I think most of them do not know how to typeset the resume, so that they made a simple introduction of personal information in Word. If this is true of you, your resume will be rejected by the HR in most cases.

In this case, there are many excellent resume templates on the Internet. You can choose some popular and excellent resume templates and fill them with your personal information.

2. Keep your resume simple

The HR person will get a lot of resumes and no one will have time to read your long essay, so keep it as short as possible to highlight your key information.

3. Focus on ability and contribution

Project experience is an essential part of your resume. Don’t just list projects or work experience, but highlight your contributions and achievements.

Use the word “proficient” sparingly on your resume

Computer graduates or just graduated programmers in writing resumes remember not to write proficient in such and such language, if really learn very well, recommend writing “familiar” or “master”.

Word intensity: Proficient > familiar (recommended) > Master (recommended) > understand (recommended).

5. If you’re not sure, don’t put it on your resume

If you pile too much information on your resume that you’re not sure about or that you don’t know well, it’s likely to become something that you won’t be able to jump through once the interviewer asks you about it.

Instead, if you include what you are good at, it will attract the interviewer to ask questions in relevant directions, and you will be able to turn passivity into initiative and have a good interview result.

What? That’s why you’re asking me how to get it? From the beginning!!


Well, write this, I wish you all can find satisfactory work, less overtime, more salary!

Finally, can you give me a thumbs up?