# 先马后看
别犹豫了,马就完事了。在这里每个人都是分享者,你可以分享技能/干货/安装包/电影/图书等等宇宙内的所有资源。
···
1627人正在讨论
#
郝强
上海财经大学·2022届

分享一个稳定解决北京户口的公司

公司:兴唐通信 坐标:北京 职位:技术岗位(非开发) 薪资:应届生,到手8k 福利:住房补贴具体不详(不到1k),餐补具体不详(不到800)。昌平有员工宿舍,商品房改造,一个屋里住俩人,查寝,员工宿舍收费和住房补贴差不多。班车接送,早上上班7点发车,晚上下班8点15发车。 下面说下面试时情况,和面试要求 计算机,略微会一点点开发,面试没怎么问专业知识,就问了一些以后打算(以此评判看能不能留用你)。 再说公司目前真实状况 国企还是央企忘了,貌似央企。 优点:不会辞你。不会辞你。不会辞你。一些比较挣钱的部门,由于是一劳永逸的业务,上班较为轻松,应届生薪资具体不详(不到15k),但是真的不会忙,但是已经业务成熟,不太招人,应届生同学命好的可进。 缺点:加班,加班,加班。大部分部门平时和周末都会加班情况。平均主义,加班不加班薪资没有多少变化,工时是自己填的,只要正常下班就是100%,加班不计工时。晋升,你懂的,一个萝卜一个坑,领导不走没有机会。 下面是个人看法,可以不看 除了几个赚钱的,其他业务部门,你们懂得,比较虚,全靠包装,概念居多,营收也不怎么行,卖产品靠关系吧。总得来说,是一个磨灭人积极性的地方,一般应届生进去两三年基本就老油条,专业技能也会下降。有些老员工会不满意现状,跳槽,结果水平不行,待不下去又二进宫。 建议:适合需要北京户口,老油条,善于划水,能够推掉加班要求者墙烈推荐。性格不强势,任劳任怨慎入。
分享
6
先马后看
我词穷写不出你想要的感动
山东理工大学·2022届

技术面试更注重项目经验还是操作系统、数据结构等基础知识?

说下我的面试经验吧,都是亲身经历,不喜勿喷: 我2017年12月份从上一家公司离职,一直到2018年3月份,基本上都在面试中度过来的。 先交代下背景: 坐标上海,做技术开发,我本人求职的职位是linux服务器开发,最倾向的职位是服务器开发主程或技术经理。我本人也是上几家公司的面试官,因为接下来几年面临着成家养小孩,技术上也到了瓶颈期,虽然拿了不少offer,但是想综合比对一下再做决定。于是投递了很多家公司。我先后去了如下一些公司:腾讯、百度、阿里的蚂蚁金服和国际支付宝部门(两个部门,两次面试)、饿了么、爱奇艺、360、携程网、京东、华为、bilibili、上海黄金交易所、东方财富网、zilliz、掌门集团(做无线的那一家)、喜马拉雅听书、UCLOUD、峰果网络、华尔街见闻、万得财经、汇正财经、逗屋网络、朝阳永续,还有数家小规模的公司或创业公司吧。 为了避免引起不必要的纠纷,下面我就不说具体的公司名称了。技术面试的细节我尽量写的详细一点,希望对大家有参考价值,技术面试大致有三种情形: 一、以百度、爱奇艺等为代表的,以数据结构和算法为主。首先是简单地了解下你之前的工作经历和项目经验,然后就是算法和数据结构题目,具体涉及到以下内容: 1. 快速排序(包括算法步骤、平均算法复杂度、最好和最坏的情形),有人说校招要把算法写出来,我是社招,所以描述一下算法过程即可。 2. 写二分查找算法,这个尽管是社招,但是一般也不难,所以要求面试者写出来。但是很多公司,比如不会直接让你写算法,而是结合一个具体场景来提问,然后让你自己联想到二分查找,比如求一个数的平方根。 3. 链表,常见的面试题有写一个链表中删除一个节点的算法、单链表倒转、两个链表找相交的部分,这个一般必须得完全无误的情况下写出来; 4. 自己实现一些基础的函数,例如strcpy / memcpy / memmov / atoi,同样的道理,这些必须完全无误且高效地写出来,比如你的实现中有动态分配堆内存,那么这道题目就算答错。 第3点和第4点的关键点一般在于考察你的代码风格、对边界条件的处理,比如判断指针是否为空,千万不要故意不考虑这种情形,即使你知道也不行,只要你不写,一般面试官就认为你的思路不周详,容错率低;再比如,单链表的倒转,最后的返回值肯定是倒转后的链表头结点,这样才能引用一个链表,这些都是面试官想考虑的重点。 5. 哈希表,对哈希表的细节要求很高,比如哈希表的冲突检测、哈希函数常用实现、算法复杂度;比如百度二面就让我写一个哈希表插入元素算法,元素类型是任意类型。 6. AVL树和B树的概念、细节,比如会问mysql数据库的索引的实现原理,基本上就等于问你B树了。 7. 红黑树,这个基本上必问的一个数据结构,包括红黑树的概念、平均算法复杂度、最好最坏情况下的算法复杂度、左右旋转、颜色变换。面试官常见的算法套路有:你熟悉C++的stl吗?你说熟悉,ok,stl的map用过吧?用过,ok,那map是如何实现的?红黑树,ok,那什么是红黑树?这样提问,红黑树就开始了。Java的也类似。 二、以饿了么、bilibli、喜马拉雅、360、携程等为代表的,兼顾算法数据结构和其他开发技术,算法和数据结构部分上文提过了,下面提一下其他技术,大致包括以下东西: 1. 以C++语言为例(不是C++开发的朋友可以跳过这一点),第一类是基础的C++问题,常见的有C++的继承体系中virtual关键字的作用(如继承关系中析构函数为什么要申明成virtual函数,如果不申明为virtual会有什么影响)、在涉及到父子类时构造与析构函数的执行顺序、多重继承时类的成员列表在地址空间的排列;static关键字的作用,static_cast / reinterpret_cast / dynamic_cast等几个转换符的使用场景;问的最多的就是虚表的布局,尤其是菱形继承(B和C继承A,D继承B和C)时每个对象的空间结构分布,比如问D有几份虚表,D中B和C的成员空间排布。 另外,如果你应聘的职位使用C++开发,很多公司会问你一些C++11的东西(或者问boost库,基本上都一样),这个你用过就用过,没有用过就说没用过不要装X,常见的C++11需要掌握的一些技术库我也列举一下吧(JAVA及其他语言的读者可以忽略): auto关键字、for-each循环、右值及移动构造函数 + std::forward + std::move + stl容器新增的emplace_back()方法、std::thread库、std::chrono库、智能指针系列(std::shared_ptr/std::unique_ptr/std::weak_ptr)(智能 指针的实现原理一定要知道,最好是自己实现过)、线程库std::thread+线程同步技术库std::mutex/std::condition_variable/std::lock_guard等、lamda表达式(JAVA中现在也常常考察lamda表达式的作用)、std::bind/std::function库、其他的就是一些关键字的用法(override、final、delete),还有就是一些细节如可以像JAVA一样在类成员变量定义处给出初始化值。 2. 网络通信问题,比如协议栈的层级关系,三次握手和四次挥手的【细节】,注意我说的是细节,比如CLOSE_WAIT和TIME_WAIT状态(bilibili问了这样一个问题,你可以感受一下:A与B建立了正常连接后,从未相互发过数据,这个时候B突然机器重启,问A此时的tcp状态处于什么状态?如何消除服务器程序中的这个状态? 万得问过流量拥塞和控制机制、腾讯问过tcp和ip包头常见有哪些字段),东方财富网问了阻塞和非阻塞socket在send、recv函数上的行为表现,异步connect函数的写法,select函数的用法,epoll与select的区别, 基本上只要问到epoll,必问epoll的水平模式和边缘模式的区别;一些socket选项的用法,nagle / keepalive / linger等选项的区别;tcp / udp的区别和适用场景;通信协议如何设计避免粘包;http协议的get和post方法的区别(问的比较深的会让你画出http协议的格式,参照这篇文章中关于http协议格式的讲解:http://blog.csdn.net/analogous_love/article/details/72540130); windows用户可能会问到完成端口模型(IOCP),网络通信方面的问题,知乎上有几个live系统地总结的不错,有兴趣的朋友可以看这里:https://www.zhihu.com/lives/922110858308485120) 和 这里:https://www.zhihu.com/lives/902113324999778304)。 总之,网络通信问题能搞的多清楚就可以搞的多清楚,最起码把tcp应用层的各种socket API的用法细节搞清楚。 3. 操作系统原理性的东西 比如上海黄金交易所、喜马拉雅听书问了linux下elf文件的节结构,映射到进程地址空间后,分别对应哪些段,相关的问题还有,全局变量、静态存储在进程地址空间的哪里;堆和栈的区别,栈的结构,栈的细节一点要搞的特别清楚,因为一些对技术要求比较高的公司会问的比较深入,例如京东的一面是让我先写一个从1加到100的求和函数,然后让我写出这个函数的汇编代码(JAVA开发的同学可能会让你试着去写一点JVM的指令),如果你对栈的结构(如函数参数入栈顺序、函数局部变量在栈中的布局、栈帧指针和栈顶指针位置)不熟悉的话,这题目就无法答对了;栈的问题,可能会以常见的函数调用方式来提问,常见的函数调用有如下cdecl/stdcall/thiscall/fastcall的区别,比如像printf这样具有不定参数的函数为什么不能使用__stdcall; 饿了么二面问了操作系统的保护模式实模式,中断向量表,linux下的CAS。 还有就是进程和线程的联系与区别,问的最多的就是线程之间的一些同步技术,如互斥体、信号量、条件变量等(Windows上还有事件、临界区等),这些东西你必须熟悉到具体的API函数使用的层面上来,从另外一个角度来说,这是咱们实际工作中编码最常用的东西,如果你连这个都不能熟练使用,那么你肯定不是一个合格的开发者;这类问题还可以引申为什么是死锁、如何避免死锁;进程之间通信的常用技术也需要掌握,常用的通信方式(linux下)有共享内存、匿名和具名管道、socket、消息队列等等,管道和socket是两个必须深入掌握的考察点(与上面网络通信有点重复); linux系统下可能还会问什么是daemon进程,如何产生daemo进程,什么是僵尸进程,僵尸进程如何产生和消除(bilibili问过)。 4. 第四类就是一个使用过的开源技术,比如代表nosql技术的的redis;网络库libevent等等;数据库如mysql的一些东西。这个一般不做硬性要求,但是这里必须强调的就是redis,熟练使用redis甚至研究过redis源码,现在一般是对做后台开发的技术硬性要求或者说不可缺少的部分, 基于redis的面试题既可以聊算法与数据结构,也可以聊网络框架等等一类东西。我面试的公司中基本上百分之九十以上都问到了redis,只是深浅不一而已,比如喜马拉雅问了redis的数据存储结构、rehash;bilibili问了redis的事务与集群。 关于JAVA的,阿里的蚂蚁金服问了如下一些问题(我尽量列举下我能想起来的):java.lang.Object有哪些常用的方法,改写一个类的toString方法需要注意哪些问题,hashCode方法如使用,==与equals的区别,线程创建的几种方法,各自的使用场景,hashmap、hashtable的数据结构实现,java线程同步有哪些方法、各自的优缺点,jvm的结构,java代码优化等等。 三、只问一些做过的业务或者项目经验,这类公司他们招人其实对技术要求不高(资深及主管级开发除外),只要你过往的项目与当前应聘职位匹配,可以过来直接上手干活就可以了, 当然薪资也就不会给很多。比如游戏公司会关心你是否有某某类型的游戏开发经验、股票类公司会关心你是否有过证券或者交易系统的开发经验等。我的经验就是这类公司,能去的话可以去,不能去的话就当积累面试经验。 业务开发哪里都能找到,真正的重视技术的公司,应该是广大做技术尤其是初中级开发的朋友应该值得关心的事情。 四、不靠谱型公司 我遇到的大致有四类: 第一类:装X忽悠型,面试过程冗长繁琐,比如号称每一百份简历中才发一个面试邀请,号称每一个面试者发一个offer,号称硅谷风格,我面试的有一家公司就是这个样子,先是一轮长长的电话面试,然后是五轮技术面试,前三轮是刷leetcode上原题,然后后几轮面试,面试官从基本的操作系统的 中断、GDT、LDT、分表分页机制问到上层高并发海量数据的架构,说的不好听,真是从外太空聊到内子宫,最后问具体职位做什么时,要么遮遮掩掩要么原形毕露;或者讨论薪资时,要么面露难色要么各种画饼,但是实际就给不了多少薪水的。 第二类:佛性公司 面试下来,全程面试官面带微笑,问你的问题你回答的面试官也很赞同,但最后你就没通过,我猜测要么公司不是很缺人,想观望一下是否有合适的人才;要么招聘信息上开的薪资给不到。 第三类:老奶奶裹脚布型公司 其特点是面试周期长,往往第一轮面试通知你过了,让你回去等上十天半个月后,给你打电话通知你来第二轮面试,面试要求穿正装,带好各种证件,面试前必须先查验你的身份证、学历证学位证,甚至是四六级考试证等等,麻烦至极,即使你一路过关斩将过了终面,薪资也给不了多少。 大家都是要养家糊口的,都是忙着找工作,谁有时间和你耗上十天半个月呢? 第四类:不尊重人类型公司 我这里说的不尊重人,不是指的是面试过程中对你人身攻击,而是不根据你的工作年限和经验随意安排面试官,举个例子,比如你工作十年,你去面试一个技术总监的职位,对方公司安排一个工作不满两年的部门职员作为面试官,这个面试官如果是走过场可以理解,但是非要和你纠结一个如二进制位移、现代编译器要不要在子类析构函数前加virtual关键字这些技术细节就没必要了。还有一类就是故意问一些刁钻的问题,或者全场都心不在焉、玩手机、漫不经心的面试官,比如问你tcp协议头有多少个字段,每个字段是干啥的。遇到这一类面试官我的经验就是要么婉拒,要么直接怼回去。 下面再说下面试中需要注意的一些细节: 第一,如果你的工作年限不长,尤其是渴望在技术方面有一定的造诣,那么你首先考虑的应该是新的单位是否能有利于你技术上的成长,而不是两份同样的工作,薪资上的上下相差的三五千、五六千。如果 想转行的同学(比如从客户端转服务器,从C++转JAVA),不要因为薪资突然变低而拒绝这种阵痛,要把目光放长远一点。 第二,一些公司虽然招聘信息上写了最多能给到多少多少,但实际即使你全程面试下来都很完美,可能最终你也会因为薪资要求达不到不被录取。 第三,一些根本不想去的公司,如果你有时间的话,去面试积累下经验也不是什么坏事。 第四,面试的时候,同时也是你在考察面试官,一般面试官问你的问题,你能回答出来的在百分之八十左右,这样的公司可以考虑去入职,你进去的话可能才会在技术上有一些提升。如果你全场秒杀面试官的题目, 你的技术天花板可能也在那里。 第五,面试的时候聊清楚你将来的职位内容,避免进去客串一些不想做的工作。 第六,遇到不会的面试题,不要直接就否定自己,可以尝试着去和面试官沟通一下,或者要求给点提示或者思路。 第七,不要轻视笔试中的一些数学智力题目,认真作答,试问算法不也是数学智力题吗? 第八,自信一点,每个人的经历和经验都是独一无二的,面试的时候,一些特定领域的问题,回答不出来也不要太在意。 希望对阅读的朋友有所帮助。因为个人经验能力有限,所说的也可能只是一家之言,说的不妥当的地方还请温和地提出建议 因时间有限,很多地方不便详细展开,如果您对于面试有什么细节的地方想和我交流,可以通过牛妹子联系我。
分享
15
先马后看
__蝶灬唯_
厦门嘉庚学院·2022届

毕业两年多,分享一下自己的经历吧~

前几天逛一个贴子的时候,才发现我已经属于骨灰级老人了😂😂。从17年6月毕业至今,算下来已经有两年半,这两年半的经历真的是一言难尽,在这里开个帖子跟大家吐槽吐槽。 阶段一. 阴差阳错来了苏州 校招那时候,我跟大家一样, 各种跑招聘会,各种笔试面试,一个多月下来也拿了几个还算满意的offer。其中包括两个武汉的,两个深圳的,一个北京的,还有一个苏州的。我跟我女朋友都是黄冈人,所以家里人都希望我们能留武汉,我心里也希望能留武汉。但是当时女朋友在苏州工作(她本科,我小硕), 她说她很喜欢苏州的江南水乡,白墙黑瓦, 希望我去苏州一起生活。 我跟女朋友是高中同学,从本科开始谈恋爱,到研究生毕业一共七年,她说的话当然得听啦,就这样我决定去苏州。 苏州这家公司是搞工控行业的,在国内属于行业第一,而且跟我读研期间的研究方向也很吻合,虽然工资比不了互联网大厂,但是每天7.5小时工作制, 而且各项福利待遇都还不错,更何况苏州房价不高,买房买车只要家里稍微支持一下应该很快可以办到。我综合比较了一下,感觉还不错,更何况可以跟女朋友在一起生活,还挺好的。那段时间我一直为即将到来的新生活而幸福鼓舞,然而后面的事情很快把我的脸打的啪啪响。 阶段二. 996+分手 经过两个星期的入职培训后,我就正式到部门工作了。我所在的部门算是公司主要挣钱的部门,平心而论,部门大小leader人都还比较好。尤其是我的主管和导师,我的主管是东南大学的硕士,2010年就进了公司,到今年已经快10年了,导师是南航硕士毕业,在公司待了也快五六年了,人都很好。我在这里工作的这段时间,有问题搞不定的时候,他们经常陪着我一起加班,一起讨论问题,加班完了主管还会开车送我回宿舍。说实话,第一封工作遇到这样的领导,真的是很幸运了,我心里也非常感激。但是工作一段时间, 我就发现这个工作跟我想象中实在是差距太大了! 同样是软件开发,这里基本没有正规的开发流程,虽然也有电子流来控制,但是基本都是纸面上走走形式。软件代码混乱不堪,各种全局变量到处乱飞,更让人崩溃的是,软件几乎不可调试!我们的软件是直接烧录到dsp芯片里面运行,然后控制电机运行,软件不经过操作系统,调试只能用示波器软件来监控寥寥几个变量值,想跟踪完整的执行流程基本不可能。想想你的软件不能跟踪调试有多崩溃,直到我后来离职,我都没有搞清楚软件完整的执行流程。 经过试用期之后,马上就开始忙起来了。主管觉得我能力还不错(天知道他怎么会有这种想法!), 让我独立负责一个小产品,于是这个产品相关的所有烂事全都由我来处理。虽然说是小产品,但是每年的销售额也有近1000多万,我每天写着不能调试的代码,想象我的代码在N多工厂,无数台机器上运行着,心里真的是瑟瑟发抖,简直是如履薄冰。 除了通用版本功能的开发,我们还时不时要做一些针对某些厂家特殊要求的一些非标产品。做这些非标产品通常时间特别紧张,从开始写功能到自测也许就是三四天到一周左右的样子。除此之外,还要应付市场销售,技术支持等同事的电话骚扰。搞市场的这帮人通常不怎么懂技术,也不愿意耐心去看产品手册,只要有任何问题,很多时候甚至只是一个参数设定的问题,第一时间肯定是找研发处理。这帮人做事很有一套,首先打你电话,你要是没接,马上拉一个企业微信群,把你部门的大大小小领导全拉进去,然后在企业微信里面艾特你,企业微信有一个很蛋疼的功能,只要你点开了这条消息,群里面所有人都知道你看过了这条消息! 在最忙的时候,我一天甚至要接50多个电话,想想看,一天接50个电话,还有多少时间安心写代码呢?更让人难受的时,这帮人从来不管你下班不下班,周末不周末的,有好几次,我在逛街或者看电影的时候,突然一个电话打过来说哪里哪里要改个功能,你就得回公司去改代码! 在公司待的这段时间,我几乎从来没有5点半正常下班过,大部分时间是8点半或者10点多回宿舍,偶尔有几次还是在公司通宵度过的。工作痛苦的同时,感情也不顺利,有一天女朋友突然告诉我她要去东莞跟她表哥一起创业,说是要去做直销!我一听就觉得完全不靠谱,坚决反对她去!然而她此时已经下定了决心,她告诉我她已经跟着表哥做了好几个月,非常相信这个行业一定可以赚钱,还给我看她所谓的"规划",我看到她那张A0纸上写满了各种目标,"2018年要在武汉开分店", "2020年要在武汉买别墅"... 右下角还有她"人生导师"的签名----正是她表哥的名字。这时候我心里突然就涌起不可抑制的悲哀,我知道我认识的那个聪明理性的姑娘已经走了,再也不可能回来。 我很明确的告诉她,这些理想都是空中楼阁,能实现的机率比买彩票中奖的机率还低,而且这个行业基本跟传销没有两样,骗人骗己,不会有什么好结果,我也不可能跟着她去东莞"创业"。她很难过,哭着说我不支持她,我也很难过,我知道留不住她了。 后来又经过几次吵架,我没有办法说服她,她也没有办法说服我。于是我找她爸谈这件事,这时候才知道,原来她姐姐已经拿着家里的三万块钱去追随她表哥了。看她家里的态度,我终于知道事情无法挽回了。 过了几天,她终于要走了。我送她去火车站,看着她进检票口,消失在人群中,我再也忍不住痛哭起来。我在大街上一边走一边哭,脸上鼻涕眼泪流的到处都是,路上好多人回头看我,我也毫不在意。我觉得生活真的是很会开玩笑,我一个湖北人,莫名其妙跑到一个举目无亲,除了同事一个熟人也没有的苏州来干嘛? 相恋7年的女朋友我抓不住,听了几句忽悠就要离我而去? 我TM受了20年教育,从985毕业的硕士,魅力难道不及高中毕业的表哥? 痛苦的同时,日复一日996的生活仍然要继续,经过一段时间后,开发任务越来越重,不停的要跟其他部门撕逼。另外不仅仅要电话支持销售和技术支持的同事,碰倒难解的问题甚至还要去客户现场,在工厂里面改代码。我曾经在一个星期内从苏州飞到汕头,汕头现场处理完之后,回到苏州还没有到宿舍,又要飞去北京,从北京坐火车到张家口,临晨四点多下火车去客户那里改代码,微信群里面还有销售部门的领导不停的骂研发无能。当我坐在飞机头等舱上,漂亮的空姐蹲在面前轻言细语的问我冷不冷,饿不饿,是不是那里不开心的时候, 我的心里真的是一片冰凉,完全没有心情享受服务。我甚至在想,如果飞机掉下去了,我是不是就可以不用出差,不用熬夜,彻底摆脱这种生活了? 这种生活持续了几个月之后,我开始失眠,开始胸口闷,腰部也开始没完没了的疼!我终于意识到,如果我再继续这种生活,身体怕是要废掉了,我必须离开! 阶段三. 换工作 想要离开的念头一起,便再也抑制不住了,这时候我发现跟我一起来公司的应届生已经有好多人走了,我的一个室友也已经找好了广州的工作准备走人。打算好离职之后,心态一下子轻松起来,工作也不那么拼了,每天8点半就走。思来想去,我还是想回武汉去,于是专找武汉的工作,可是武汉的很多公司都需要到现场面试, 而我又不可能频繁请假回武汉, 投了几家公司之后都不了了之。这时候有同学告诉我武汉华为研究所某部门正在招人,可以找他的师兄帮我内推, 可以电话面试。好吧,那就开始面华为。 华为一面: 一面面试官听声音像是比较年长, 态度和蔼可亲,很有礼貌。自我介绍之后,出了两道算法题让我简述思路,都是很简单的题目,听面试官描述完,我基本就有了思路。面试管很满意,于是一面水过。 华为二面: 二面面试比较曲折,微信视频连了几次都不成功,面试官有点烦了。自我介绍之后,面试官让我介绍一下工作以来做的项目,我介绍了一下我做的项目,由于做的不同行业,我感觉面试官貌似听的不是很明白,而且他也不感兴趣.随后问了几个小问题,草草结束. 二面之后,我本来以为肯定没戏了,跟内推人打了一个招呼,就没再关注. 没想到过了一两个星期, 突然有华为的人也不知道是不是Hr给我打电话说二面通过了, offer应该没有问题,但是需要补一个性格测试.于是补了一个性格测试, 测试完之后又是好几周没消息.我以为有没戏了.谁知道隔了一段时间, 内推人突然告诉我拿offer应该十拿九稳了,让我发四证(毕业证,学位证,身份证,还有一个四六级)给他做资料审核. 这个时候我以为拿华为offer应该没啥问题了, 于是我跟主管提出离职,这个时候我已经在公司待了快一年! 主管非常惊讶,接连找我谈了三次话,问我是对他不满,还是对薪资不满,或者别的什么原因!还提出给我涨薪30%, 承诺再待一年可以拿公司股票. 然而此时,我去意已决, 无论给我什么条件我都不可能留下来了, 主管只好作罢! 在办理离职的这段时间,我的心情简直无比开心, 甚至被市场销售同事夺命连环call我都不觉得讨厌. 这段时间,刚好公司还组织了一次多人相亲活动, 我陪着室友去参加, 虽然活动搞得无比尴尬, 但是我竟然跟其中一个女生聊的还挺嗨.后来跟这个女生约着看过几次电影,就正式在一起了. 离职手续还有几天就要办完了,我找内推人问了一下进度, 没想到他竟然告诉我: 资料审核不通过!!! 这简直是晴天霹雳, 面试前前后后折腾了一个半月,现在我都快离职了,突然告诉我资料审核不通过! 这下可有意思了, 新工作落空, 旧的工作已经被我坚决辞掉了! 冷静想想, 华为从头到尾也没说给我offer, 一直是内推人和一个疑似Hr的人在中间传递消息.找他们也没有任何卵用, 只能认栽了, 更何况华为是996鼻祖, 真去了没准比现在还惨! 现在我突然有一种天下之大, 竟没我容身之所的感觉. 我又陷入郁闷之中, 不过幸好这时候有妹子安慰我. 离开公司后, 我就没有地方住了, 她直接让我住到了她住的地方, 让我安心找工作, 她甚至告诉我,没工作不要紧, 她挣钱养我, 反正我吃的也不多! 我真的大受感动! 阶段四. 转行 住到妹子家的第二天我就开始投简历找工作. 这段时间面了两家公司,西门子和博世.两家公司都给了offer, 这两家都是做工控相关的东西, 跟我上一家公司做的事情大同小异(我上家公司喊出的口号就是要做中国的西门子). 面完这两家之后, 我好好审视了一下自己, 到底是继续去工控公司写代码呢?还是去互联网公司写代码? 虽然都是写代码,但是是完全不太的体验.最终结论是,我还是更喜欢去互联网公司写代码. 去西门子或者博世,虽然也是写代码,但是侧重点不同, 搞工控重点在自动控制, 电机算法, PID自动整定这些东西,对代码水平要求则不高, 代码基本都是直接裸跑, 很少涉及操作系统,网络这些东西, 而且这个行业需要长期经验积累, 短时间很难快速提高, 而且更关键的是这个行业如果想自己学习的话还需要大量设备的支持,不像互联网行业,只要有台电脑,随时随地都可以学习, 最最关键的一点是, 上一份工作已经证明了我根本不喜欢搞工控, 我又何必重新去做我不喜欢的事呢? 对于互联网行业, 我想我还是很有兴趣的---至少比工控行业有兴趣, 而且我跟许多计算机专业的同学或者转行搞互联网的同学聊过, 我觉得他们的水平未必比我高多少, 即使有差距, 我也很有信心可以赶上来(当时的想法, 不知道哪里来的蜜汁自信).就这样我下定决心转行了。 然而,当时的我除了会C语言,其他的语言完全不会。互联网拿C开发的公司几乎没有,于是我只好一边面试,一边学习C++, python。离职后一个多星期面了三家小公司,面试官均表示我C语言功底很不错,可惜对C++了解的太少,婉拒。 第二个星期, 我收到一个小公司(大概三四百人的规模)的面试邀请,去面了一下,发现这个公司需要写C的人来做nginx二次开发。虽然这个公司不管从哪个方面都不算是一个好的选择,而且我当时对nginx一无所知,,但是我还是接了offer, 因为我需要这份工作来缓冲一下,我希望能在这个搞互联网的公司,熟悉他们的工作方式,学习需要掌握的技能, 事实证明, 我又天真了一次。 阶段五. 新工作, 沉淀下来学习 到新公司第一天,leader给了我一周时间看nginx源码和项目代码,一周后就开始做功能。可怜那个时候我连连接和请求都分不清楚,就开始硬着头皮写代码。我的leader是我这辈子见过的最奇葩的人,对上对下完完全全是两副面孔。想找他请教问题,他永远不会拿正眼看你。问了一两次问题之后我就知道,想在这里学东西基本是妄想,只能自力更生了。这个时候我开始全面补课,自学C++, python, 操作系统和网络。我给自己定下一个目标,最多在这里呆半年,半年之后,如果不能找到一个靠谱的搞互联网的工作,那我还是回去继续搞工控吧! 就这样,这段时间,我开始一边工作,一边疯狂学习。过了大概五个月,我把《深入理解计算机系统》、《APUE》、《C++ Primer》等书籍过了一遍,另外在leetcode上刷了200多道题目。这个时候,我心里终于有了一点信心,我按捺不住想出去找公司面试一下, 看看自己还有哪些地方知识有漏洞没学习到的。 于是我开始各种请假出去面试,两周时间,我面了五家公司,出乎意料的是,除了一家台湾企业是过了年之后Hr才给我发offer, 其他几家全部都是当天面试完就直接给了offer,其中就包括我现在所在的公司。这时候还是挺开心的,毕竟努力一下还是很有效果的。我在各个招聘网站上把苏州的互联网公司挨个查了一遍,发现除了微软甲骨文,已经很少有比我现在公司更好的了。更何况我现在的公司实行965工作制,还不考勤不打卡,福利待遇也还蛮好。吃够了996的苦,我再也不想过这种生活了, 于是我不再面试了,爽快签了offer,然后迅速提出离职。 阶段六. 结婚买房,开始新工作 办理离职手续这段时间,我把能修的假全部都修掉还请了几天假,利用这段时间,我带着女朋友去玩儿了个痛快,回来之后就把结婚证领了。之前看过几次房子,因为工作不稳定的原因,一直没下定决心买,现在终于下定决心凑钱付了首付。 入职新公司后,我发现这里的氛围跟我待过的前两家公司真的完全不一样,965真的就是965,加班很少。公司活动很多,同事之间关系也很融洽。leader和mentor对我相当好,时不时会过来问问我有没有哪里不懂的地方,简直是是手把手的教,跟上家公司的leader真的反差太大! 要说换工作后,最开心的还是我老婆。她终于不用为我担惊受怕,不用再承受我发泄的负能量,总之,现在一切都在向着一个还不错的方向发展,希望一直如此!
分享
14
先马后看
绿洲沙漠
南京农业大学·2022届

推荐一些好公司(喜欢毁约的公司不能惯着)

京东(武汉地区应届生被毁约,总公司裁员) 苏宁 (价值观有问题,能接受去) 多益(老板价值观有严重问题,能接受去吧) CVTE (广州三坑之一,没地方去可以投) 途牛 (同苏宁是南京三坑) 同城(毁约应届生) 携程 (毁约应届生) 迈瑞医疗 (毁约应届生) 第四范式 (毁约应届生) 网易考拉 (同上) 网易严选 (同上) 网易盘古工作室(已无此部门) 知乎 (同上上) 招行深圳分行 (爆料的主要是比较蛋疼的流程,算不算违约大家自己网上搜,没看到后续) 宜信 (同上上上上) 谷露 (同上) 有赞(价值观问题,接受的话可去) 滴滴(裁员中,招人估计也不多) 美团(裁员中,招人估计也不多) 好未来(临近毕业强制毁约应届生) 浪潮(最新爆料,实习生随机分岗还被hr骗工资后拉黑) 平安(毁约应届生) 追一科技(毁约应届生) (2020)最新 畅唐网络(40应届生裁成4,疫情期间裁武汉学生) 欢聚时代(5月毁约) 作业帮(毁约十几人) 高顿教育(毁约应届生,随便变更合同) 阿里巴巴(疫情为借口,限制实习生入职,原贴见本帖94#) 映客直播(大规模毁约) 百融云创(变相毁约,不赔偿) 马蜂窝(2020,6月毁约大部分应届生) 近期有过大裁员的公司入职有较大风险,自己考虑,价值观上面大家可能不同,也许是我自己价值观的问题,所以你能接受就去投,还有一些公司福利不达标或者给钱达不到合同总包的网上也有很多爆料,自己签合同前查下吧. 2019裁员的公司2020年还在重复这操作,如果骂这些学生实属不应该,都应该瞄准公司去骂,学生们应该加强自身学习,尽量上岸一些比较稳的公司
分享
7
先马后看
十里故清欢
四川大学·2022届

航天恒星科技有限公司有了解的大佬吗?

应届毕业生,想问问这个公司怎么样,有了解的大佬可以解答下吗??非常感谢!!!
分享
评论
先马后看
苟苟苟斯特
新加坡国立大学·2022届

给大家讲个笑话

给大家讲个笑话,前端考前端试卷被限制语言不能用JavaScript
分享
7
先马后看
Ms.Lee
中国政法大学·2022届

从学生到社畜,基础研发的碎碎念

前言 不知不觉已经给上海某厂搬砖一年多了。打开牛客讨论区,看着大家从投简历、跑面试、刷面经、选Offer……两年,回到更加热闹的讨论区也丝毫不感到陌生。 2018年入职某厂后,回牛客只发过几次内推帖,也推了不少同学🤣。这次回来想给即将成为社畜走向人生巅峰的大家写点东西,无奈腹中无诗书,不知从何下笔,只得拼凑一些文字,碎碎道来。 简介 本人2019年本科毕业入职上海某厂从事基础架构已逾一年,先后负责公司中间件与治理系统的开发。由于是在基础研发部门,日常的工作与一般业务部门有些出入,本文主要给大家分享一下。如果有对基础研发感兴趣的同学可以私聊我哈~ 关于工作 技术体系 在学校的开发真的很随心所欲,想用啥用啥。 但企业里一般都有严格的规范,作为一颗螺丝钉,我们只能选择融入。 比如我做SDK开发时,为了考虑兼容性,必须使用JDK7开发(大学时就用8了没想到这辈子还有机会用7。。。)。以前喜欢用开源组件换着用,现在企业开发一般有统一组件,比如消息必须用Kafaka,配置中心必须用zookeeper等。甚至对于变量的命名,都要与团队保持一致。 大厂一般还会有一大堆自研组件,比如阿里的sofa,美团的cat,这些组件可能在外面完全没有机会接触,都需要慢慢上手。甚至很多时候觉得自己比新员工的唯一优势就是,更熟练地使用公司系统🤣。 技术包袱 承接上一个问题,大厂一般不太喜欢直接用开源组件,因为他们用不了。在学校做项目的时候,一般选最流行的架构,Kubernetes 配套搞起来。在公司呢,发现连docker都用不起来😅(公司当时还在用vm)。 大厂的架构一般成型很多年了,开源界很多新东西新概念不一定能兼容老架构老系统,再加上一堆自研组件的存在,大厂身上的包袱越来越重。而且不同于学校的小项目,这些包袱清理起来涉及到很多部门的利益(很多组件按开源架构做就被取代掉了),甚至不是领导一两句话就能解决的问题。 工作节奏 成为一个社畜不是一个渐进的过程,从签合同的那一刻起就已经把自己卖了。刚毕业那会儿,某日早上醒来非常非常想睡回去,非常非常不想工作的那种。但是不行😫,想到不上班就要扣钱,就会乖乖爬起来去上班。一周5天工作日,不带休息,项目比较累的时候确实会喘不过气,但是没有办法,签了合同就只能好好工作。 假期真的很少很珍贵,工作之后没有寒假暑假,过年甚至只有一周假(超级不适应!!),所以每个周末都十分珍贵。 在学校的时候可以学累了摸鱼休息一会儿,在公司就真的不行。感觉领导和同事随时盯着你(然而并没有),看着旁边专心敲键盘的同事,非常不好意思开小差。这种节奏很累,但就是社畜的责任吧,毕竟拿钱办事。 加班 互联网大多要加班,不加班的同学真的很幸福。8点以后才下班的人,基本丧失了白天的活动能力,因为下班时间比较晚很多事都做不了,晚餐跟朋友聚一聚,回家打几把dota,都成了奢望。特别有时候加班到10点,一般通勤到家差不多11点了🤣,基本就洗洗睡了。熬夜?不存在的,第二天还要上班呢! 在此墙裂建议大家租在公司旁边,减少通勤成本。我刚毕业的时候下班需要坐地铁,回家大概需要45分钟,加了一天班拖着疲惫的身子挤地铁真的身心俱疲。 可能有的人比较崇尚奋斗,为公司奉献,相信努力一定有回报,但我觉得社畜和公司就是简单的雇佣关系,没必要搞太复杂。同届进来一个同学在业务那边天天加班到深夜,结果18年寒冬试用期前一周被公司优化掉了,下午收到通知,第二天直接走人,资本就是这么无情。 兴趣与钱 上学的时候真的很喜欢编程,经常研究各种新技术、新特性。曾经破解过校园网、搭过博客(现在还在写咕咕咕🤣)、写过爬虫,满腔技术热情。但工作跟兴趣真的是两回事儿,工作后基本就缩在项目的技术圈子里,没有接触其它技术的机会,可能很快就会失去新鲜感。下班到家,敲了一天键盘的我看到代码就想吐,已经无力再捣鼓自己感兴趣的东西了。 而支撑这种工作的动力非常简单而粗暴——钱。互联网确实是高薪行业,但程序员真的有钱也没时间花。以前认为年轻可以为钱多吃点苦,现在想想多那点钱换自己自由时间不一定值得,因为多的钱也没时间花。薪资方面,互联网行业是真的会倒挂!而且非常严重,可能明年新员工入职的时候我的薪水才涨到跟他们差不多的程度(是真的)。 健康 做开发的长时间面对电脑,眼镜真的挺难受的。久坐+没时间锻炼很容易发福!键盘敲多了手指真的会酸,办公室待久了皮肤容易出油长痘痘,外卖吃多了营养很差,大家一定要注意身体。 关于基础研发 底层知识 在基础研发的工作主要是跟各种架构、中间件打交道,比如 Kubernetes、注册中心等,可能很多同学在学校中就听说过或者用过它们来开发,但估计很少人直接参与过这些组件的开发。 我刚进公司就参与到公司的RPC框架开发中,在此之前我对RPC的了解仅仅局限于使用。是的,好用就完事儿了,好的基础组件就是能对用户屏蔽技术细节,但开发人员则不同。RPC的开发需要对网络、序列化有深入的了解,我不得不翻出大学时的计算机网络,再去看tcp协议,三握四挥,捡起这些业务开发中“不常用”的知识。 所以做基础组件开发所获得的技术成长是毋庸置疑的,在这里你永远不用担心成为 CRUD boy。但相比之下缺少业务接触,容易绑死在技术这条路上。 严格要求 一个业务的bug,可能会影响一个业务功能;一个基础组件的bug,可能会影响公司的所有业务。但凡基础组件出了事故,都是灾难性的。基础组件的开发就是在针尖上跳舞(所以基础组件删库也是最容易的),所以谨小慎微也不为过。 做基础研发还容易被业务的同学甩锅(逃),在出现性能问题总是会先想到我们😂,所以基础组件的日志、埋点都非常详细,就是为了确保每一个问题都能定位,防止用户甩锅。 鞭策 基础组件很容易被拿来比较,比如RPC框架有很多,做得不好用户就会喷,还不如直接用开源的xxx呢🤣。所以做基础组件是一直被用户鞭策着前进的,因为你的用户就是公司的同事,那天伺候不好说不定就找到你工位来了hhh 甚至新组件开发完后,业务同事不一定愿意用🤣,还得像推销一样到处宣传,拉客户,毕竟没人用的组件没有绩效的。 需求 基础组件一般没有做不完的需求,甚至经常愁需求🤣,这跟业务开发差别很大,所以我们可能相对地轻松一些些(年终奖可能也少一些)。 其它有什么想起来的话再补充吧(毕竟是碎碎念),也欢迎评论区互动hhh~
分享
17
先马后看
麻烦加一下油
华中科技大学·2022届

时间复杂度专题

【本期题目】 Manacher算法 【题目】 给定一个字符串str,返回str中的最长回文子串的长度。 【举例】 str=“123”。其中的最长回文子串“1”或者“2”或者“3”,所以返回1。 str=“abc1234321ab”。其中的最长回文子串“1234321”,所以返回7。 【进阶题目】 给定一个字符串str,想通过添加字符的方式使得str整体都变成回文字符串,但要求只能在str的末尾添加字符,请返回在str后面添加的最短字符串。 【举例】 str=“12”。在末尾添加“1”之后,str变为“121”是回文串。在末尾添加“21”之后,str变为“1221”也是回文串。但“1”是所有添加方案中最短的,所以返回“1”。 【要求】 如果str长度为N,解决原问题和进阶问题的时间复杂度都达到O(N)。 bfprt算法及其相关 找到无序数组中最小的K个数 【题目】 给定一个无序的整型数组arr,找到其中最小的k个数。 【要求】 如果数组arr的长度为N,排序之后自然可以得到最小的k个数,此时时间复杂度为排序的时间复杂度即O(N*logN)。本题要求读者实现时间复杂度O(N*logK)和O(N)的方法。 KMP算法 【题目】 给定两个字符串str和match,长度分别为N和M。实现一个算法,如果字符串str中含有字串match,则返回match在str中的开始位置,不含有则返回-1。 【举例】 str=“acbc”,match=“bc”。返回2。 str=“acbc”,match=“bcc”。返回-1。 【要求】 如果match的长度大于str长度(M>N),str必然不会含有match,可直接返回-1。但如果N>=M,要求算法复杂度O(N)。 注:下面回帖给出了源代码供参考。
分享
11
先马后看
very good
华侨大学·2022届

有4/22上证所信息一面的朋友吗?

收到上证所信息一面的短信了,有没有一起的朋友,可以一起交流下心得。
分享
1
先马后看
Aceyclee
南京师范大学·2022届

我的求职总结

寄出了三方,秋招到这里就告一段落了。求学的这七年,也快画上句号。这一段的日子,痛并快乐着,所有陪着走过这一段的人,都值得被铭记。在牛客网看了很多面经,谨以此文来进行总结吧。 普通211本硕,没有拿得出手的项目,非计算机专业,没互联网实习经验,投了差不多20家公司吧,初期定位失误,总想着迈入互联网行业的门槛,奈何没有学java,也不会linux,吃了很多苦。 言归正传,秋招正式8.1号网易内推笔试开始。当初准备了一个月,自信心爆棚,内推的题也不难,总以为会进到面试,结果GG啊。那是第一次发现,要想进入后台开发,linux是必不可少的。不过也没怎么放到心上,继续按照原定的计划复习,八月底又内推了爱奇艺,这次做得挺好,但是爱奇艺好像没怎么招人,连面试的人都没见,大家都没有消息 ,我就不予评价了。 九月,就开始忙碌起来。九月第一个笔试是京东。C++的岗位也不多,这是第一个过了笔试的单位,京东的面试比较扯,第一轮纯讲项目,第二轮讲基础。京东回答的一般,一个连接池的实现细节没有答好,然后没多久就收到了拒信。6号笔试了cvte,这是第一个拿到offer的公司,虽然是个实习offer,但也激动了半天。Cvte被套路了一番,面试官说我觉得你技术一般,要不要转技术支持,没啥经验,我就说,那好吧,就转技术支持吧。二面的时候,我问了面试官我一面的表现,二面面试官就说了,不要轻易的否定自己的方向,要对自己的实力有一个清醒的认识。靠着从京东哪里学来的连接池,成功的拿下了cvte。Hr面也没传说中的那么恐怖,hr也不是乱刷人,应该是综合前两面的表现吧。 9.9号美团内推笔试,美团出了很多智力题,编程题中规中矩。很顺利的过了美团笔试,美团面试有四面,我闯关失败了。美团的面试官人很好,是我面试这么多场里面最好的一家。第一面问了问简单的面向对象问题,手写了几段简单的代码。可能跟面试官的方向不符吧,美团更倾向于招java后台开发的,二面聊的有些尴尬,他只会java,我只会c++,聊不到一起了就手写代码,手写了三段吧,没写出来的是设计文件夹的存储格式。然后就又挂了。9.11后左右很忙,平均每天两场笔试,时常笔试冲突。招银的笔试做了半小时,去答搜狗的题。搜狗的可能更看重复杂度,两道题都超时了,笔试没有过。晚上又答了腾讯,这次放聪明了,答得也挺好。腾讯投了客户端开发,听说内推已经招的差不读了,笔试就又没过了,看着别人那种大题只做了一道的都有面试机会,心不甘的去霸面腾讯,然后无果。百度死的很明白,智力题答得一般,岗位又不多,只能是挂了。 连着挂了好几场,开始怀疑人生,结果360都投错了岗位。见到360的卷子就傻眼了,全是移动通信的题,不提也罢。小米是最后一场在线笔试的题,也挂的很惨。线上的机会渺茫,开始跟小伙伴转战线下。转战线下,也就从互联网公司到了通信或者传统软件公司。 印象里第一场是烽火通信吧,记错了考试时间,只答了一般的题,没想到竟然笔试过了。面试比较简单,跟互联网公司差距明显。只问了简单的哈希,tcp的连接状态之类的传统题。很顺利的拿下了烽火的offer,这距离第一个cvte的offer过去了20天。这20天连着挂笔试面试,一度怀疑自己究竟怎么了。起了个大早,赶了个晚集。迅雷是做的最好的一次笔试,面试体验一般,还是不够优秀,没有通关。迅雷面试时,面试官有一个小本本,上面写了很多题,印象中都是侯捷那本stl中的题,想找c++工作的同学们,尽量早准备这方面的知识点,那几个常用的容器函数,常见的算法最好都自己用几遍。 金九已经过去了,10场挂了一半,拿了2个offer。没有什么很好的,10月继续吧。10月公司的档次明显下降了,都是一些外企和创业公司了,然后一些零零散散的好公司。比较难把握,十月认真的跑了一个星期,收获一个一个南京的外企,秋招就定这家了吧。阴差阳错,找工作之前最想去网易,结果内推笔试就挂了,说是内推不影响校招,然而校招简历都没过。 废话了一大堆,来点干货吧, 方向真的最重要。搞懂自己想要从事的方向,比如我吧,一开始想从事后台开发的,却忽略了现在的后台开发基本上都是java在linux平台下。只学了c++的,就明显的比别人少了一个基本技能。后台开发其实也不难就是基础知识+linux+高并发+网络,从现在开始积累这些,分清楚广和深就好。 实习是一个很大的加分点,有了一个靠谱的和互联网沾点边的都能在面试的时候有话可说,来年三月是实习的高峰,最好现在准备,在三月找到一个好点的实习,不管能不能转正,对来年八月的校招都会有一个很好的帮助。 内推 ,今年的内推变化很大,都快成了正式的校招,一般内推免笔试,提前准备的充分的话,内推真的是进入大厂的捷径。但是如果水平比较渣,准备的不够好,我建议还是放弃内推吧。内推有风险,渣渣需谨慎。好好准备校招吧。内推的来源很多,师兄师姐们比较靠谱,好学校这些资源很充足,一般学校就比较困难些,建议多在牛客这样的论坛或者某些公众号(悟空求职,求职小助手)之类的能找到帮助内推的人,一定要按照给定的格式发送邮件,简历最好用pdf的,简历也可以编辑在邮件正文中,方便查阅。 坚持 ,不管结果如何,一定要坚持住,9月低很多0offer的人在10月也找到了很好的工作。尤其在大厂连着挂的时候,千万要咬牙挺住,多总结自己在笔试面试中遇到的问题,整理下来,这样,不管笔试面试的结果如何,总会学到一些新的东西。
分享
4
先马后看
十雾
东北林业大学·2022届

赛码有没有题库刷一下啊

如题,感谢答题大佬
分享
1
先马后看
冬夏秋春
吉林大学·2022届

【经验】HR面试画的饼,90%都在骗你!

自从进入职场,办公室生活就占据了大半人生。混职场稍微久一点,你会发现很多令人窒息的真相! 1.HR画过的饼,90%都在骗你 2.老板的不急=很急!!! 3.公司宁愿花高薪招新人,也不愿意给老员工涨薪 4.认真工作的时候老板往往不在,你一摸鱼老板就出现 5.有约会的那天,一定会因为各种事需要加班;有早会的那天,往往会因为地铁而迟到 6.每天喊着要走的人一直不走,优秀的同事离职却猝不及防 7.老板在的群没人说话,聊八卦的小群热火朝天
分享
评论
先马后看
biubiu爱吃肉
浙江工业大学·2022届

5000字干货总结,python经验分享

即使是临近年末,我依然选择了裸辞,冒着可能会失业的风险。 我之前是在深圳工作的,因为自己是江苏人,也不想在深圳长期发展,所以先辞了职,回到上海这边好让自己更方便的参加面试。 这是我第二次裸辞了,有了上一次的裸辞经验,我这一次在心理准备方面,明显更加的游刃有余。 花了一周多一点的时间,在上海参加了十几家公司的面试,也包括美团、字节跳动等大厂,可是因为能力不够或技术栈不匹配被刷了。最终有三四家想要要我,我也拿到了一份较为满意的offer。 面试是一个非常消耗心力的过程,我很难想象,若不是我比较侥幸,拿到了几个还满意的offer,我很难想象在此时凄风苦雨的寒冷的上海,孑然一身的我,会面临怎样的崩溃与绝望。 所以,我衷心希望,我能够把自己的一些面试经验分享出来,去帮助到一些正在找工作的朋友,让他们的求职之路更顺利一些,少一点像我这样的折腾。 我工作三年,主要编程语言是python,找的是后端开发或运维开发的岗位,想结合自己的实际面试经历,来谈一谈python社招的一些经验,欢迎大家交流讨论~ 面试之前 市场环境 先说一下大环境,中国的互联网环境已经渐趋稳定成熟了,但初中级别的程序员依然很泛滥,高级程序员很缺失。所以想要在众多应聘者中脱颖而出,实力才是王道。 另外,通常的招聘季是金三银四或者金九银十,像我这个11月份去找工作的毕竟是很少了,但我觉得上海毕竟是大城市,要说市场上没有岗位是不可能的,另外在淡季,和我竞争的人也很少了。所以,基于以上的判断以及自己的勇气,我毅然觉得辞职,从深圳来到了上海。 个人定位 我觉得,每一个招聘者都要对自己在市场上的位置做一个合理的评估,这样才能准确的知道自己想要找什么类型的公司,是大公司大平台呢,还是中小型企业呢,还是创业公司呢?评估的依据,取决于自己的实力,职业道路的方向,以及对市场的认识。 不过如果不清楚也没有关系,投递公司的时候可以各类公司都投一投,大中小公司都去面一面,总之,不要把鸡蛋放在一个篮子里,多给自己制造一些机会。面试是一个很好的去接触外界,了解自己能力水平的过程,可以帮助你对市场环境有一个更清晰的认识。面试结束后通常有反问问题的环节,也可以把握住机会,多去问一问对方公司在做的东西,使用的技术栈等等。 对于我自己来说,我就把面试当成一个很好的检验自己的机会,同时让我有机会去和别的公司交流技术。所以说,平时在工作过程中,也可以隔三差五的出去面试一下,看看自己的能力水平几何,避免自己和市场脱节太久,以及温水煮青蛙的情况。 简历 接下来就是制作一份简历,关于如何制作一份简历,网络上的教程也很多了。我觉得技术简历的关键就是要把自己的做的比较出彩的项目,以及个人技术栈讲清楚,这些都是面试中问的比较频繁的几个点。另外因为自己痴迷于markdown,第一次尝试了markdown风格的简历,效果还不错,蛮清晰的。 渠道 对于招聘渠道的选择,如果有小伙伴的内推那是最好的,另外建议多注册几个app,多管齐下的去寻找面试机会,比如拉勾、boss直聘、猎聘等等。一些想去的公司的官网的招聘页,也是一个不错的信息来源。 面试准备 作为技术面试,该如何去复习准备面试呢,我觉得可以从以下几点去考虑。 数据结构与算法 为什么把这一块放在第一个讲,因为这是技术面试里非常重要,但是平时工作中又最容易忽视的一块。都说「面试造航母,工作拧螺丝」,如果不是算法岗,程序员在日常工作中算法使用场景非常有限,但这就是面试考察的一个重点。 我大概面了十几家公司,基本每家公司都会考一些算法题,或者让你说一下思路,或者直接手写程序,如果没有事先准备过,会特别的不适应,尤其是白板算法那块。 所以,我的准备建议是,面试前至少前一周,就要花时间去练习算法题,保持手感了。 首先强推leetcode网站,中文站是https://leetcode-cn.com/。leetcode是非常有名的刷题网站,里面汇聚了各大企业的经典算法题,而且可以在线提交代码,自定义测试用例,查看其他人的题解等等。如果你觉得中文站上面的题解没有自己想要的,也可以看一下外文站https://leetcode.com/ ,他们的题目顺序都是一样的,只是中文站在本土化这方面更强一点。 如果因为时间紧迫,我建议你针对以下数据结构和算法的知识点进行重点复习: 各种排序算法,冒泡排序,堆排序,快速排序等,时间复杂度空间复杂度分析,能做到手写。 常用数据结构。链表、二叉树、堆、栈等等。 经典算法题。(待整理) 基础知识 任何一门技术面试,基础知识一定是重中之重。对于python程序员面试来说,我觉得下面三块内容比较重要,考察的频率也非常高。 语言基础 可变对象、不可变对象、装饰器、迭代器和生成器、线程和进程、魔术方法、动态解释性、元类等。 web基础 http请求、状态码、网络安全、django处理请求的顺序、cookie和session 数据库 mysql的事务、索引、锁、性能调优,nosql数据库中redis考察的比较多。 项目经验 一般对应届生来说,基础知识很重要。对于社招来说,项目经验是非常重要的一块内容。 我建议可以从下面几个角度去准备自己的项目: 项目介绍 推荐STAR模型。 S——situation,项目是什么背景下产生的 T——task,你的任务是什么 A——action,你怎么做的 R——result,结果如何 项目中的难点、闪光点 我相信每一个真实做过自己的项目的人,肯定会对自己的项目有所思考。总结一下自己在这个项目里最难的地方,以及最精彩的地方,也可以使用上面的STAR模型。 项目框架 有的面试官会要求你在白纸上把项目的框架图或者设计图画出来,这个也可以提前准备下,做到条理清晰,临场画的话很容易乱。 总结 面试是一场艰难的战役,我发现在那种紧张对弈的交锋氛围中,我从来没有体会过所谓超常发挥的感觉,准备了100分,能把60分发挥出来就已经非常不错了。所以,建议每一个面试者都要提前把一些必问的东西(个人介绍、项目经验等等)提前准备好,并且模拟表达一下,以防临场紧张而忘词。 面试真题 因为自己大厂和创业公司都会去面,给我的感觉是,大厂的考察深度会更深一点,比如问你怎么用python定位一些内存满、CPU满的问题,怎么做mysql性能优化等等。而小公司问的更多是一些基础问题,以及看你之前经验的一个匹配度。 我这里从我亲身的面试经历,精选出了30道面试常考题,涉及到了python面试的方方面面,大家可以自行测试。 python基础 python是什么样的语言,和其他语言的区别。 python中的线程和进程,以及使用场景,你知道协程吗? GIL是什么,为什么会有GIL,去掉会怎样,有了GIL为什么还要给程序加锁? 迭代器、可迭代对象、生成器分别是什么?生成器的作用和使用场景? python中的装饰器是什么?如何实现?使用场景? python中的元类是什么? python中的可变对象和不可变对象之间的区别。 python的魔术方法你知道哪些,new,init,call的区别是什么 django的中间件是什么 celery的原理,如何配置worker的权重 项目 如何定位内存过高或CPU过高的问题 画一下你的项目的结构 项目中你遇到的最大的困难是什么,是如何解决的? 项目中你最有成就感的地方是什么? 你业余是怎么学习编程的?看哪些书?有自己做过什么项目? web HTTP/GET/POST/PUT/PATCH之间的区别 状态码的含义以及出现场景,301,302,404,500,502,504等 cookie和session的区别和联系 从url请求到返回,中间经历了什么 HTTP和HTTPS的区别,HTTPS如何进行加密的 数据库 mysql的索引是什么,如何建立索引,B+树的结构 mysql中的事务是什么,隔离等级是什么 如何优化sql语句 mysql的性能优化等 操作系统 堆和栈的区别 什么是io多路复用 nginx的配置 算法 找到整数列表的最大k个数,时间复杂度 输入一维数组array和n,找出和值为n的任意两个元素 常见的排序算法,时间复杂度分析 生成一个旋转矩阵 职业发展 作为一个代码打工仔,对于我来说,想要成为牛逼的程序员的路还很长,一刻都不能懈怠。 我无法从HR角度,或者技术leader的角度来臆测哪种状态的面试更能获取面试官青睐。但通过我积攒的大量的面试经验,我多少可以推断一些成为有竞争力的程序员的一些必要条件。 1. 技术是王道 这一点毋庸置疑。我是一个非科班出身的程序员,在技术成长方面更多的是在工作中学,但这还远远不够,每一位想要成为大牛的程序员,都必须深入底层原理去学习,比如操作系统、网络、数据结构和算法等,也许这些东西在你工作中看起来没用,却是提高你的技术深度,扩大技术视野的非常重要的一环。 我是一个比较容易自卑的人,在面试的时候,遇到答不上来的问题还是非常容易挫败的,觉得自己好弱。术业有专攻是一方面,但很多基础的东西是一个程序员的基本素养,在这上面丢分还是很容易给面试官造成一个不好的印象的。另外,面试所覆盖的点也不一定完全击中你所准备的东西,我觉得面试者可以在面试过程中主动「推销」自己,哪怕一个问题没答上来,也要尽可能的展现一下自己在这一块内容里做过哪些研究,避免面试官错误预估你的水平。 除了基础知识和底层原理,技术的另一块内容就是你在工作中的实践了。我在工作中常常见到一类人,他们只满足于被分配的任务,抱着多一事不如少一事的观念,不去把一个问题深入的去弄明白,害怕技术挑战,包括我自己曾经也是这一类人。 其实这样对职业发展的道路是非常不好的,如果不去走出舒适区,你永远只是一个CURD的程序员,完全没有市场竞争力。在面试中最能展现自己的,就是你在面对技术难题的时候,是如何研究,如何思考,如何解决的。所以,工作中遇到技术难题,一定要把它当做技术上的试金石,成长的宝贵的机会,而不要当做拦路虎而逃避。 2. 工作经历 面试官常会问的一个问题是,你未来的职业规划是什么。我不知道其他人有没有清晰的规划,对我自己来讲,更多的还是走一步看一步,并没有想的特别远,这其实是很不好的。 曾经有一个面试官对我讲,5年是一个关键节点,如果你工作5年,依然没有华丽的工作履历,或者工作能力仍旧处于小白水平的话,是非常危险的,市场对你的能力是由怀疑的。 我想,如果作为一个5年开发经验的人,他差不多也换了两三份工作了吧,从每一个公司的情况每一个工作岗位的内容,多少可以看出点他的职业发展路径有没有一条清晰的路线。如果一个人的目标很明确,他的每次跳槽一定有自己的内在逻辑在里面,他的技术成长也不会太差。而如果每次跳槽都很盲目,技术成长没有延续性,很可能你虽然工作很多年,但是根本没有核心的技术竞争力,这是要警惕的。 对未来的规划这块内容,我自己也非常欠缺,因为我总是抱着要「活出自我」的想法,对一些世俗理论天然排斥,其实是走了很多弯路的,不过既然我意识到了这一点,亡羊补牢为时未晚吧,未来,会多接触一些技术大牛,参加一些技术论坛,不会囿于自己的舒适区,早点找到一条快速的职业发展路径。 薛兆丰老师曾经讲过一句话,「每个人都在为自己的简历打工」,我在这里感同身受,卖方只是提供工作岗位的,竞争永远是买方和买方之间的竞争。所以,想要出人头地,一定要比其他员工多下功夫,少壮不努力,老大徒伤悲。 3. 格局 这个词是我从一个猎头朋友那儿听到的,他说在职场中,男生最重要的是格局。 我是这么理解的,只有你愿意到达什么样的高度,你才有可能成为什么样的高度的人。比如,如果你只甘心做一个工程师,那就活该当一个底层码农了,而如果你能够站在更高的维度去做一些事情,我相信你能收获很多宝贵的东西。 比如,在实际开发中,多去把一些业内的新技术引用进来,而不是仅仅满足于已经成熟的开发框架;不再仅仅去完成领导分配的任务,多站在公司或者团队的视角去看问题,多一些全局的视野;遇到问题时,不要简简单单的解决了就完事了,要学会深入底层,以及触类旁通,把这一类问题都解决,形成自己的思考问题的逻辑框架…… 这些东西也是我在此前的工作中缺失的,我希望我自己能够在新的工作中,多思考,多沉淀,形成自己的技术格局。 毕竟也不是初入职场的小白了,我理当给自己提出更高的要求,这也是为了在下一次的招聘过程中,能更顺利一些。 每次拿到offer之后,总会长舒一口气,觉得自己可以休息一下了。但随之而来的是,后面的入职、适应新的工作、新的工作团队,搬家找房,一个又一个的挑战接踵而至。 还不能懈怠啊,希望自己在二十一世纪一十年代能安稳下来,以最好的姿态去迎接2021年!也祝所有在找工作的朋友们早日拿到满意的offer。 最后,我建了一个github的项目,上面会持续更新我的python学习心得和面试指导,欢迎star~ https://github.com/ZhiyuSun/python-interview
分享
7
先马后看
良大师
广东海洋大学·2022届

4年产品油条的工作小建议

作为一个工作4年的老油条,产品、运营岗位都做过,曾经在阿里工作过,目前在字节跳动从事产品经理这个岗位。 借着这个很好的平台,分享这些年来的所积累的一些小经验、技巧,希望对朋友们能有一些帮助。 产品工作的小经验 1、做产品所需要的一些基础技能 a)  需要掌握必备的基础工作工具,比如原型制作工具。 学习这个其实非常简单,遇到不懂的可以直接使用最大的中文搜索引擎-百度即能解决 b)  流程图、框架图。 这个在给研发讲需求的时候以及在梳理业务逻辑的时候是非常重要的,好的流程图、框架图会能够把事情说的更为明白与清楚 c)  掌握基础的sql与excel函数 数据分析的工具能力会很好的提升工作能力,另外也会让身边的同学对你刮目相看哦,因为他们会经常请教你,哈哈哈~~~ 学习基础的sql可以去这个网站:https://www.w3school.com.cn/sql/index.asp,学完了可以到公司的数据平台去练练,理论加实践会提升学习的效率。 如果想学的更为深入可以去学学hive编程,提升数据处理的能力 execl也可以借助百度百科,数据透视表的能力也很重要。掌握一些基础的函数比如:vlookup、countif等。 d)  sublime真的是一个非常好的编辑器,快键键在批量处理数据的时候真的是非常棒。 e)数据分析能力。这块可以与公司的数据分析师多聊聊,如果缺乏相关资源,可以看看业内的相关数据分析报告。 2、思维方式 在职场最开始的时候,其实我的思维与逻辑很差,经常被RD与身边的产品diss逻辑很差,这也是一直让我很受伤的地方,作为一名互联网产品经理最难受的就是被说 逻辑很差、逻辑很混乱。那么就给大家一些小建议去提升下自己的思维方式。 a)通过阅读书籍。金字塔原理与学会提问两本书可以快速提升自己的思维能力,让自己的思考方式与表达更为有逻辑。 b)阅读别人的产品需求与文档,去体会别人的思考方式,多去思考别人为什么这么做。如果有机会的话,最好可以当面请教他们。 c)在工作中多去思考,而不是单纯的去做执行。比如老板分给你一个feature,这个时候纯执行者可能就会直接去设计方案了,这样的话结果往往会出现很大偏差。 更合理的方式应该先明确需求的背景、现状、目标,然后针对具体的目标,把目标拆分为一个或者多个问题,针对这些具体的问题再去设计方案,可以保证方向上不会出现偏差。 3、学习能力 产品经理是一个需要持续学习的岗位,或者所有的岗位都需要持续学习。如果无法做到持续学习,那么自身的思维将会很快掉队,最终被身边的人所赶超,被这个岗位淘汰掉。 学习的方式 a)通过工作去学习。实践是检验真理的唯一标准,在产品工作中同样适用,只有不断的采坑才能不断的积累经验,不积跬步无以至千里。 b)书籍阅读。理论也很重要,因为意识对于实践有着能动的反作用。 推荐的书籍:《启示录》、《信息架构》、《认知心理学》、《随意搜寻》、《深入浅出数据分析》等。 c)与他人交流。多与身边的同学进行交流,这里不局限于产品同学,不同角色对于一件事情的理解会各有不同,与不同的人沟通,会收获不一样的启发。 d)多体验产品。多体验产品,尤其是竞品,去思考别的产品为什么会这样做,这样做是为了什么,为了满足用户什么价值,解决了用户什么样的问题。 e)热爱生活。作为一名产品,要热爱生活才能够做好产品,想法来源于生活,学会体验生活,对工作与生活都是一件非常重要的事情。 4、工作小技巧 a)不要给自己设限。在工作中不要仅仅局限于当前所作的事情,要有更宽阔、长远的眼光,只有这样才能做到更快的成长,同时也会提升自己的影响力,不断提升自身的能力。 b)及时与上级沟通。工作中的所有重要节点与重要决策需要与上级进行同步,在遇到困难与资源紧张的时候需要主动向上级反馈,要让上级及时了解项目的进度以及你的难处。 上级之所以为上级,是因为他们是一个为了帮助你争取资源,解决难题的角色,要很好的利用上级这个资源去解决工作中遇到的问题,这也是上级所希望看到的。 c)做好时间与项目管理。 工作中会有很多件并行的事情,如果无法做好时间与项目管理,很容易导致项目delay。推荐使用trello,是一个效率极高的项目管理工具。 5、面试小技巧 a)自我介绍的时候,每段工作经历可以大概说下做的项目简介,能够让面试官脑海中搭建一个大概的框架。 b)在讲述项目经历的时候最好遵循star法则,表述更为有逻辑,面试官能够更好的理解。 c)向面试官问问题的时候,最好可以问一些宏观层面的问题,而非具体细节的问题。这样能够让面试官发现你的宏观理解能力,觉得你是一个有深入思考的人。 d)  面试前可以准备一些面试的问题,并针对这些问题进行自问自答,模拟面试的场景,提升自己的面试表达能力。 最后,希望大家可以在工作中顺顺利利的,在收获成长的同时,金钱也获得相应的回报。
分享
14
先马后看
兜兜很懒
贵州大学·2022届

关于华为智能制造与精密研发笔试的一点心得。

把你大学专业课课本,每本书都看一遍。每本书的角落里会出2-3道题。
分享
5
先马后看