年初离职,找工做找了2周,如今已经找到合适的offer了,前先后后也面了10几家公司,谈一谈经验,不过我这个经验只适合3-5年的中级普通程序员,大牛和大佬能够无视!程序员
今年的市场行情确实差不少,去年我去面试,很轻松的均可以拿到好几个offer,可是也没不少人说的那么夸张,面试依然不少,可是由于我自己简历不优秀(普本非计算机专业非大厂背景),大厂绝缘体,大可能是一些中小型企业,几百上千人的上市公司也有,小创业公司没投。面试
我基本上都是本身投的,也有不少猎头加我说给我推,可是简历一给出去就没消息了,其实如今不少猎头都是比较低端那种,只是负责打电话要简历,根本不懂技术也不懂企业需求。毕竟自己简历不够优秀,内推到大公司也是过不了HR这关,因此我也没去麻烦朋友了,除非你认识大厂里面的大佬。算法
在大部分公司的招聘需求来看,有一个统招本科+计算机专业应该很是容易接到面试,找工做才发现学历+专业的重要性。这里我只是说说北京PHP的薪资范围,1-3年基本上会被定位到初级程序员,薪资在10-15k,3-5年大概是中级15-25k,5-10年大概是25-40k,基本上是1年5k吧,好比4年,大概就是20k左右,你说有没有更高的,固然也有,特别优秀的好比说211,985名校的,能够在这个基础上+50%。sql
不少公司喜欢出面试题,对于面试题我以为仍是尽可能写一下,可是我是比较拒绝那种给你一些算法题和编程题让你在纸上写的,可是大公司就喜欢考这些,因此要进大公司就刷题吧。中小型公司比较注重实际应用,就算有面试题经常也是一些基础题,还有结合实际应用的题。对于PHP来讲,基本上是拿来写业务的,考算法确实过度了,固然你说你面试C、C++、Java就不必定了,不一样语言的应用场景不同,考察的重点也不同。数据库
除了面试题以外就是一些面试题官的问题了,这个我以为考察的一个是沟通表达能力,还有就是对理论知识的掌握程度,某种程度上是知识体系的考察,作Web开发和你作应用软件开发不太同样,不少时候比较注重架构和解决方案。编程
简历必定要好好写,若是你没有好学历和好背景就更应该好好写简历了,推荐使用markdown写,而后转成pdf,不须要太花哨,我以为通常须要这几个栏目:基本信息、求职意愿、技能列表、工做经历、项目经验。注意,本身不会的东西千万不要写上去,有一些不是本身写的可是本身理解透了,掌握了也能够写上去,可是你不会的、没理解透的不要写,不少面试官都会拿着你简历问你一些技术点,若是你写了可是没答出来那就尴尬了。markdown
不少写简历不知道写什么,我以为主要结合项目经验写,使用了哪些技术、达成了一个怎么样的结果,必定要写技术点,不能像是写流水帐同样,举个例子,好比说你写了一个购物车功能。普通写法就是完成商城购物车开发,这个就不行了,你得引导面试官,能够写一些细节,好比说你购物车的数据库怎么设计的,有哪些亮点和难点,面试官一看可能会多问一些细节。网络
不少面试官都会问一些比较常见的问题,好比说你为何从上家公司离职?你对将来有什么规划?你对咱们公司有什么问题?这些问题我以为不必定要说实话,最好是找一个比较稳妥的说法,好比说上家公司很垃圾,你不要直接说出来,能够说一点你们都比较容易接受的理由,网上有不少文章介绍,我这里就很少说了。一味的坦诚并非什么好事!数据结构
面试说到底仍是考验一我的的综合实力,虽然你能够去刷题,可是有些知识不是刷题能够刷出来的,好比说若是你不懂地质学,如今让你去刷题,就算面试题能够过,可是面试官稍微问你一个开放性的问题你可能就懵逼了。因此平时仍是得注重知识积累,IT行业就是这样,新技术层出不穷,平时多看看技术文章,博客,就算工做用不到也能够学习一下。架构
虽然互联网知识不少,广度也重要,可是不建议花过多时间在一个意义不大的地方,好比说你一个写PHP的每天去研究机器学习,除非你之后要去搞机器学习,否则花过多时间去研究也不划算。毕竟咱学习是为了提升本身技术,提升技术主要目的找到更好工做,虽然机器学习也是技术,可是我以为仍是得找好方向。
还有一个就是基础知识,通常所谓基础就是指数据结构(算法)、计算机原理、计算机网络、操做系统等,非科班或者上学没认真学的平时能够多看看,这些东西虽然是基础,可是想都掌握仍是很是难的,虽然实际开发中咱们通常不会直接应用,可是有助于咱们对不少知识的理解,毕竟现代编程就是站在巨人的肩膀上,咱们不能要求每个写JS的人都去精通网络协议吧?可是偶尔看看巨人的脚下也是不错滴!
互联网这么大,细分开来每个领域都大有可为,有些技术了解一下就能够了,深度仍是很重要,毕竟现代社会分工,各居其职,在公司也不可能什么都让你一我的干。好比对于PHP来讲,其实PHP只是Web编程开发里面的一种语言,本质上咱们是在作Web开发,Java也能够作Web开发,它们都要用到Mysql、Redis、Nginx、Docker、Linux...。不少时候Web开发是一个工程项目,它不是一个简单的系统应用,它是运用不少技术的综合体。做为一名PHP开发工程师,难道说你只要懂PHP就好了吗?确定不行,如今面试没有那个不问Redis、Linux相关问题的!
其实做为一名PHP开发工程师,能够发现如今PHP的生存空间愈来愈小,备受JS和Golang挤压,在国内Java是主流,如今不少大一点的公司,PHP都是边缘项目、小项目,还有就是不少创业公司在用PHP。对于普通PHP开发来讲,30k多是一个天花板了!
若是想突破,一个方向就是转管理,带团队、带项目,这确实是一个比较好的归宿,不用写太多代码,工资也不低。
另外一个方向就是转构架师,所谓构架师倒也不是多神秘,其实能够理解为是一个对Web架构很是熟悉的高级工程师,薪资待遇比通常搬砖的程序员高不少,也须要写代码,但就不必定是PHP了。
还有一条路子就是转Golang开发,其实Golang要求高不少了,工资也高不少,看我的能力吧!
最后一条路子,就是创业吧,本身负责整个技术架构,就差职业经理人了。。。