Python programmers Interview Tips

This time in previous years, "gold and three silver four" hiring spree has Pumian to. This year, because of the impact of the epidemic, companies may now move the club, "the first snow of 2002", as, much later than in the past to some of the time. Of course, for those who plan to find a job or change jobs in the years after, the equivalent of more than a period of time it can be used to prepare for the interview, I believe this plan have already started the preparatory work.

Today, I want to chat interview some of the tips, because I'm a programmer, currently Python as the primary development language, I talked with you is also related to the programmer interview skills. I might be in a Python programmer interview, for example, but these tips should programmers have used.

On our resume usually have a section called the "expertise" in this section will usually list the contents of around 6-12 to demonstrate your understanding of the programming language, development framework, server products, development tools and grasp the situation. Every word here probably will have one or more corresponding question in the interview, if you do not prepare in advance, but the feel set out a number of items, then during the interview must be filled can not afford a big pit. Next, I as we exemplify these pits are in any place.

The following content is not on your resume has a similar description of it, then take a look at my question, if you can give nice answers.

1 skill point : to skillfully use the Python language for application development, good programming practice, have a more in-depth understanding of object-oriented design principles and common design patterns, Python developers familiar with commonly used standard libraries and third-party libraries.

If I were the interviewer, for the above description we will ask you the following questions.
Question 1 : Are you referring to good programming practices what it is.
In fact, I ask this question is to examine your programming specification: Understanding (such as PEP8), in addition to want to know you have the habit of not using Lint tool to check the code.
Question 2 : Do you know the talk about object-oriented design principles of what; you project use Which design patterns.
Many interviewers like to say that they understand the design principles and design patterns, but basically a little one asked he betrayed himself. The easiest "what areas will be used singleton", many interviewers could not answer, and the interviewer does not want to hear you say the name of 23 design patterns, but would like to know which of your project used the scene which design pattern.
Question 3 : Some say you usually work with most of the standard library and tripartite library.

Skill Point 2 : skillful use Django and Flask back-end Web application development framework, familiar with the MVC (MTV) architectural pattern, there is use django-redis in the project, django-celery, django-rest -framework, flask-sqlalchemy, flask experience -restful and other third-party libraries, to find out about web.py, Tornado, Twisted and other frameworks.

If I were the interviewer, for the above description it will propose to you the following questions.
Question 1 : talk about your understanding of MVC.
In fact, this problem is very friendly, but if you type endorsement of the so-called reference read out the Internet to find the answers, the interviewer is certainly not satisfied. This problem must say their understanding and views, the best combination in terms of the project. I have a magical discovery in an interview that many interviewers think MVC is the three-tier architecture, I can only say that the developer inside the industry really crappy and more.
Question 2 : talk about Django framework of a request lifecycle is like.
Question 3 : talk Django, Flask, Tornado framework of their advantages and disadvantages.

Skill Point 3 : Familiar with relational database product MySQL and Oracle, skilled use of SQL, there is a certain degree of understanding of MySQL optimization, are familiar with non-relational database products MongoDB and Redis, there is the use of caching service and Message Queuing service optimization project experience.

Question 1 : Do you know what MySQL optimization and knowledge?
This problem may be quite capable of identifying the level of ability and developers, because MySQL optimization involves hardware, software, architecture in all its aspects, of course, the optimizer itself.
Question 2 : When using Redis high-speed cache, there are problems not encountered an avalanche cache, the cache penetration and so on?
Question 3 : Have you ever used the database to compare products, talk about what they are suitable for application scenarios.

Skill Point 4 : familiar with common machine learning algorithms and models, including: KNN, DecisionTree, LR, Naive Bayes, SVM, PCA, AdaBoost, K-Means and so on.

Question 1 : What are the advantages and disadvantages of K-means algorithm that? How to tune the algorithm?
Question 2 : features and application scenarios Euclidean distance and cosine distance are what is?
Question 3 : What are the commonly used heuristic function tree there?

Skill Point 5 : proficient use of the Linux operating system, familiar with the installation and configuration of Linux commonly used services, familiar with Shell programming.

Question 1 : You say some of the commonly used Linux commands.
This problem seems very friendly, but if you mouth to say pwd, ls, cd these commands, basic interview is over, why they think will understand, do not understand it gave me a message.
Question 2: How to use the find command based on file size, file was last modified time searching for files, how to remove searched files.
A command with the commonly used parameters dig deep, screening can be a lot of Linux systems are not familiar white.
Question 3 : Shell script how to define a function? How to get passed in the function parameter? How to call functions and pass parameters?

Skill Point 6 : Skilled Git version control implementation of the project, familiar with the development process of the project.

Question 1 : talk about the company before the use of project development process model (development process).
Question 2 : How say the project before it is implemented defect management (fault management) are.
This problem can also continue to root out how to put a bug report, the number of defects is divided into levels and so on.
Question 3 : When using the company before git version control, with what kind of branch management strategy?
I am often surprised to find that many interviewers say that they can be trained to use Git, but actually do not know the Git branch management strategy.

Skill Point 7 : Familiar applications to configure and use Nginx, uWSGI, Gunicorn servers, etc., cooked Docker, K8S tools such as project deployment.

Question 1 : Prior to the deployment of a shared project how many servers? There stepping stones? There is not configured VPC?
Question 2 : What WSGI talk about that? Compare uWSGI and Gunicorn.
Many interviewers on CGI, WSGI these have no idea, this is a typical know not why.
Question 3 : What are the advantages of micro Services Architecture? Does the project have used micro-service architecture?

Skill Point 8 : familiar with the language and framework for Web front-end development of HTML, CSS and JavaScript have a better understanding and grasp, familiar front-end libraries and frameworks jQuery, Lodash, Bootstrap, AngularJS, Vue.js and so on.
The front end of things I do not understand, there is no right to speak, but in general the interview I also like to ask the following questions.

Question 1 : What are your company's front-end used libraries and frameworks?
Even if you are only responsible for the back-end development, but the front end of the technology used must also be clear, did not eat pork, pig run have seen.
Question 2 : Do you end native mobile development or cross-platform development?
This problem can continue to ask questions on cross-platform development tools, the same principle with the first question.
Question 3 : How your company front end with the rear end of the docking? For example, when problems such as data formatting, in the end or rear end of the front-end process to be processed.


See here, I believe you have a more profound experience to write a resume is a technology live, accidentally gave himself a dig in the interview process can not be filled in the pit. So how to advance the pit filled out, two ways:

1. serious and responsible production resumes, do not put unable to control the content imposed on their resumes .
2. For've done resume, give it to make a draft version of the label , the label may encounter problems in advance is good, and to think about how these issues should be resolved, it would be the experience of prior learning and work to make a summary precipitation .

Of course, just said only part of the "expertise" of, as part of the "experience" and "Project Experience" will have a similar problem. Line into YU Si destroyed , forewarned is forearmed without prejudging the waste , the production of a high quality and competitive resume is key in this. Of course, not just the interview resumes, resume is just the beginning, finding a job is needed is a comprehensive display of their overall strength. However, we believe that a good start is half the battle, first of all their resumes in order to usher in a bright "gold and three silver four."

发布了348 篇原创文章 · 获赞 235 · 访问量 70万+

Guess you like

Origin blog.csdn.net/GUDUzhongliang/article/details/104941886