A summary of the interview python web back-end development engineer --- reprint

Interview summary of a python web back-end development engineer

 

    Work more than a year less than two years. Before've been doing C ++, MFC software interface development. The company is a state-owned research institute downturn. (Well, my work experience is water: 1 is in the wrong direction; 2 Industry is biased). Then python is currently looking for back-end development of this piece, the framework used to django; and before the CSDN has been through several other technology blog / forum absorb everyone's experience in more than gratitude, and I want what point output for the benefit of everyone , so there was this hydrological, I hope that we can learn a lot of lessons, as soon as possible to find a satisfying jobs!

 

Several interview:

    Beijing two start-up companies, the scale were between 40-50 people; husk (stop at the telephone side, retractors vote); know almost (stop at the phone face, pushed back within the forum post); iQIYI ( retractor on the cast); Hangzhou Netease (within classmate push).

    Interview this one down, it is a greatest feeling: usually have to adhere to the code are code every day. Even then bad projects must adhere to upload github ...... really, as long as you can hold more than five days a week can continue to upload Git, six months down the interviewer definitely impress you.

 

Other experience:

    Interview / pen interview questions encountered by these companies, the current can remember are as follows. Although it may mostly basic, but that we should not just look at it later, it's best to pretend you asked this question, the answer to you say it or write it :( do not follow the company divided)

 

python syntax, and other basic part

    Variable and immutable type;

    Shallow copy and deep copy implementation, the difference; deepcopy if you design, how to achieve;

    __ __new difference () and the __init __ () a;

    You know several design patterns;

    Encoding and decoding you find out about it;

    Deriving a list of list comprehension merits and generator;

    What is a decorator; if you want to decorate after the function, how to do it;

    Handwriting embodiment a single decorative pattern is achieved;

    Decorator singleton and other methods singleton, in subsequent use, any difference;

    Handwriting: Regular e-mail address;

    Introduce garbage collection: reference counting / generational recovered / isolated reference ring;

    The difference between multi-process and multi-threaded; CPU-intensive for what;

    There are several ways of communication process;

    Introduce the next coroutine, why faster than the thread;

    xrange range and the difference between (his sister, I learned py3 ...);

    Because I have a C / C ++ background, thus requiring handwritten in C: The IP address string (such as "172.0.0.1") function into 32-bit binary number.

 

Sorting Algorithm section

    Handwritten quick drain; pile row; several common sorting algorithm complexity is how many; how much faster ranked average complexity, how the worst case optimization;

    Handwriting: a known length n unordered list elements are numeric, called in all combinations interval d find out, you write the solution algorithm complexity how much;

    Handwriting: a list of A = [A1, A2, ..., An], requires all the combinations list printed out;

    Handwriting: python line written with 1 + 2 + 3 + ... + 10 ** 8;

    Handwriting python: determining whether a string is a palindrome recursively;

    Way linked list length is not known how to determine whether there ring;

    How singly linked list using a fast sort algorithm to sort;

    Handwriting: a list of length n number of elements of disorder, how to find the median, how to estimate the median as soon as possible, your algorithm complexity is the number;

    How to traverse an internal unknown folder (two ways-first traversal of the tree)

 

Networking Basics section

    TCP / IP layer which models, respectively;

    Long socket connection is what is meant;

    select and epoll you know it, the difference between what;

    TCP UDP difference; four three-way handshake waved to talk about;

    TIME_WAIT too much because of what;

    Once connected the whole process http: next to you from the user to initiate request-- user receives the response;

    http connection. The difference between get and post, you'll also learn about other ways it;

    restful you know;

    How much do you know the status code, such as 200/403/404/504 and so on;

 

Database section

    There are several MySQL locks; how the deadlock is generated;

    Why and how to partition, divide table;

    MySQL is char varchar text of difference;

    Learn join it, there are several, what is the difference, A LEFT JOIN B, the results of the query, that part B is not how to display the (NULL);

    There are several types of index difference, BTree index and hash indexes (I did not answer it and maybe the difference on the disk structure);

    Handwriting: How to query optimization;

    NoSQL understand the difference between what, and relational databases; redis There are several common types of memory;

 

Linux part

    Talk about your favorite Linux / git commands and functions;

    View the current process is what order, in addition to documents related to the operation, and you usually have any operational command;

    (Because I am very water Linux, only the basic operation itself, so this part of the interviewer asked .. anyway, how did the basic Asked on 大眼瞪小眼 chant)

 

django project part

    All let you simply introduce related projects in the company, whether or not the back-end, mainly to reflect what you have done;

    What you encounter in the project hardest part is, how do you solve;

    Have you seen the django admin source of it; read the flask source it; you understand how open source;

    MVC / MTV;

    How to use the cache;

    Middleware is doing it;

    What CSRF is how django is avoided; XSS it;

    If you come to design login, simply talk about ideas;

    session and cookie and Differences; session why it is safe;

    uWSGI and Nginx role;

    (I do not ask django find basic details relating to realize something .. or ask also ask very little, hey, direction until you are ready completely wrong)

 

Interview summary of a python web back-end development engineer

0.246 2018.01.17 17:58:42 Word Count 2,033 read 5,134

Background

    Work more than a year less than two years. Before've been doing C ++, MFC software interface development. The company is a state-owned research institute downturn. (Well, my work experience is water: 1 is in the wrong direction; 2 Industry is biased). Then python is currently looking for back-end development of this piece, the framework used to django; and before the CSDN has been through several other technology blog / forum absorb everyone's experience in more than gratitude, and I want what point output for the benefit of everyone , so there was this hydrological, I hope that we can learn a lot of lessons, as soon as possible to find a satisfying jobs!

Several interview:

    Beijing two start-up companies, the scale were between 40-50 people; husk (stop at the telephone side, retractors vote); know almost (stop at the phone face, pushed back within the forum post); iQIYI ( retractor on the cast); Hangzhou Netease (within classmate push).

 

    Interview this one down, it is a greatest feeling: usually must adhere to the code are code every day . Even then bad projects must adhere to upload github ...... really, as long as you can hold more than five days a week can continue to upload Git, six months down the interviewer definitely impress you.

Other experience:

    Interview / pen interview questions encountered by these companies, the current can remember are as follows. Although it may mostly basic, but I hope we do not just look at it later , it's best to pretend you asked this question, the answer to you say it or write it :( do not follow the company divided)

python syntax, and other basic part

    Variable and immutable type;

    Shallow copy and deep copy implementation, the difference; deepcopy if you design, how to achieve;

    __new __ () and __init __ ()

    Difference;

    You know several design patterns;

    Encoding and decoding you find out about it;

    Deriving a list of list comprehension merits and generator;

    What is a decorator; if you want to decorate after the function, how to do it;

    Handwriting embodiment a single decorative pattern is achieved;

    Decorator singleton and other methods singleton, in subsequent use, any difference;

    Handwriting: Regular e-mail address;

    介绍下垃圾回收:引用计数/分代回收/孤立引用环;

    多进程与多线程的区别;CPU密集型适合用什么;

    进程通信的方式有几种;

    介绍下协程,为何比线程还快;

    range和xrange的区别(他妹的我学的py3…);

    由于我有C/C++背景,因此要求用C来手写:将IP地址字符串(比如“172.0.0.1”)转为32位二进制数的函数。

算法排序部分

    手写快排;堆排;几种常用排序的算法复杂度是多少;快排平均复杂度多少,最坏情况如何优化;

    手写:已知一个长度n的无序列表,元素均是数字,要求把所有间隔为d的组合找出来,你写的解法算法复杂度多少;

    手写:一个列表A=[A1,A2,…,An],要求把列表中所有的组合情况打印出来;

    手写:用一行python写出1+2+3+…+10**8 ;

    手写python:用递归的方式判断字符串是否为回文;

    单向链表长度未知,如何判断其中是否有环;

    单向链表如何使用快速排序算法进行排序;

    手写:一个长度n的无序数字元素列表,如何求中位数,如何尽快的估算中位数,你的算法复杂度是多少;

    如何遍历一个内部未知的文件夹(两种树的优先遍历方式)

网络基础部分

    TCP/IP分别在模型的哪一层;

    socket长连接是什么意思;

    select和epoll你了解么,区别在哪;

    TCP UDP区别;三次握手四次挥手讲一下;

    TIME_WAIT过多是因为什么;

    http一次连接的全过程:你来说下从用户发起request——到用户接收到response;

    http连接方式。get和post的区别,你还了解其他的方式么;

    restful你知道么;

    状态码你知道多少,比如200/403/404/504等等;

数据库部分

    MySQL锁有几种;死锁是怎么产生的;

    为何,以及如何分区、分表;

    MySQL的char varchar text的区别;

    了解join么,有几种,有何区别,A LEFT JOIN B,查询的结果中,B没有的那部分是如何显示的(NULL);

    索引类型有几种,BTree索引和hash索引的区别(我没答上来这俩在磁盘结构上的区别);

    手写:如何对查询命令进行优化;

    NoSQL了解么,和关系数据库的区别;redis有几种常用存储类型;

Linux部分

    讲一下你常用的Linux/git命令和作用;

    查看当前进程是用什么命令,除了文件相关的操作外,你平时还有什么操作命令;

    (因为我本人Linux本身就很水,只会基本的操作,所以这部分面试官也基本没怎么问。。反正问了就大眼瞪小眼呗)

 

django项目部分

    都是让简单的介绍下你在公司的项目,不管是不是后端相关的,主要是要体现出你干了什么;

    你在项目中遇到最难的部分是什么,你是怎么解决的;

    你看过django的admin源码么;看过flask的源码么;你如何理解开源;

    MVC / MTV;

    缓存怎么用;

    中间件是干嘛的;

    CSRF是什么,django是如何避免的;XSS呢;

    如果你来设计login,简单的说一下思路;

    session和cookie的联系与区别;session为什么说是安全的;

    uWSGI和Nginx的作用;

    (我发现基本不问django实现细节相关的东西。。或者问也问的很少,哎,之前准备的方向完全错了)

 

    如果对软件测试有兴趣,想了解更多的测试知识,解决测试问题,以及入门指导,帮你解决测试中遇到的困惑,我们这里有技术高手。如果你正在找工作或者刚刚学校出来,又或者已经工作但是经常觉得难点很多,觉得自己测试方面学的不够精想要继续学习的,想转行怕学不会的,可以加入我的QQ群高级测试学习大家庭:313782132

注:加群要求

1、具有1-5工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的。

2、在公司待久了,过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的。

3、如果没有工作经验,但基础非常扎实,对软件工作机制,常用设计思想,常用软件框架掌握熟练的。

4、觉得自己很牛B,一般需求都能搞定。但是所学的知识点没有系统化,很难在技术领域继续突破的。

5.软件开发高级大牛直播讲解知识点,分享知识,多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!

Guess you like

Origin www.cnblogs.com/andy0816/p/12208261.html