今天(周六)是春节假期结束后的第一个周末,白天的天气是挺不错的。M君本来是计划去一趟图书馆然后海边走一趟的,不过最终的行程却是几个人相约咖啡厅聊天交换一些关于工作上的想法,时间延续是一不小心从下午两点一直到了晚上九点多结束。
按照惯例,每年春节假期结束后都会迎来一批求职跳槽的高峰期,当然不同年份的高峰期可能有大有小吧。作为M君自己而言,今年应该也会换一个环境吧,至少感觉当下M君所处的公司已经是不再适合M君了。
M君所处于一个二线城市,这个城市的IT行业谈不上好,至少总体薪资而言是这样的,不过感觉正在慢慢的变好,至少M君从事的这个岗位是这样的。
下午两点到晚上九点,我们都说了些什么呢?其实主要就是行业现状、面试讨论、各自工作中碰到的问题、自主学习成长中遇到的问题以及团队管理团队协作团队成长技术选型等的问题,现在重新一起回顾和汇总下吧。
M君从事的是“互联网美化行业工程”,通俗的说涉及到的就是各位所看到的各种浏览器(包括手机、iPad、上网本等常见移动设备)的页面界面内容展示、UI和效果交互等。作为这么一个行业,之前是不被重视的,直到最近几年才不断的被重视起来,特别是移动端的兴起,反正越是重视产品的公司越是会重视。好了,装逼结束,这个行业其实就是前端开发啦,行业当前总体的薪水算是正在不断的提升中,其中北上广深杭是这个行业发展最好的几个城市。
居然是求职跳槽的高峰期,那么谈论的话题之一自然就是跳槽,跳槽则自然就会涉及到为什么跳槽、如何招人、如何面试这些了。招人面试也算是一个技术活吧,怎么找到适合自己的公司和适合自己的人,以及如何去面试这个人,这些都是当下招聘者和求职者会碰到的一些问题。如果能在面试的时候就尽可能的发现招聘者和求职者是否匹配那是最好的,否则过了面试后在试用期一两个月后招聘者又辞退了求职者,那么这对双方而言都是一种伤害。
那么首先为什么会跳槽?通常而言最突出的三个方面就是:薪资福利待遇方面、工作内容技能成长方面、价值体现及文化制度方面。不知道马云是否真的简单粗暴又直白的说过这句话:员工会离职,原因就是老子干的不爽了,给的钱太少了。
薪资福利待遇方面这个则没什么好说的,也没什么好展开的,就直接的体现就是拿到手的钱和公司给员工提供了些什么吃住行以及工作本身的便利。对于新人而言,公司给员工画画大饼忽悠一下或许还有点用,不过对于老人而言这个效果恐怕远没有招聘者所设想的那种所要达到的预期效果吧。当然这也并不是说对老人不需要画饼,画饼依然还是需要的,特别是对于初创型公司。
工作内容技能成长方面则是员工在公司至少不能闲的太久需要有事请做(不上进的员工不在这个讨论范围),做的事情最好是求职者自己感兴趣的那种。人活着的时候不能太累但也真的不能太闲呀,因为闲了就容易胡思乱想产生颓废与迷茫甚至失去斗志。理想很美好,不过现实是很骨感的,也从来没有一种工作是钱多事少离家近的。对于技术成长而言,光看不练和没有实战的环境或者说没有小伙伴在身边一起讨论解决问题,那么成长的确会是相对缓慢的。如果求职者发现自己一直以来都是闲着的状态,身边又无法跟人交流学习相关技术,那么但凡有点想法的人的内心的不安和堕落感是会驱使人寻找更适合自己进步的环境的(工资特别高的不在这个讨论范围内)。
价值体现及文化制度方面则是决定了公司和员工可以走得多远,以及影响着员工的积极性和归属感。当然影响员工积极性的因素还有很多,比如钱也是很重要的一个因素。正常的员工都是喜欢人性化管理的公司,都是喜欢有情感有激情又开明开放的公司吧。
员工会正常的选择跳槽是一个很正常的职业选择行为,所以请不要对跳槽绑上道德是非或者忠诚度或者不懂感恩等这些帽子。M君认为,我们应当要避免频繁的跳槽,且即使离职也应当做到好聚好散,同事之情谊依然还是可以继续存在的。我们也必须缅怀感恩之心,但这不等于不能跳槽,如果公司已经在很多方面离自己的预期有了不小的差距后则应该果断的跳槽。
问:寻找适合自己的求职者,通常有这几个比较有效的方法:
答:
- 尝试进入相关的圈子里寻找,包括QQ群、专业网站、专业论坛,专业行业招聘网站。
- 叫自己认识的圈内人推荐,这个效率和靠谱程度都是比较高的,但前提是得有。
- 本地正规的主流招聘网站。
求职者寻找新公司则差不多就是反过来了,但是很多企业在招聘前端开发时的内容几乎都是外行HR们复制粘贴而来的,对于招聘内容的描述有些也确实是太不负责了,甚至有不少企业的招聘信息完全就是张冠李戴。
对于M君自己,在本地前端圈也算是认识了一些人了,也有不少的Leader和主管。不过有时候可能会考虑到因为和一些Leader算是比较熟悉的,所以当对方邀请到对方的公司里去时是会有顾忌的,主要是指在公司里存在上下级关系的这种。很多时候的求职,也是需要机遇和机会的吧。
问:对于初创型的公司如何招到人?
答:初创型公司相对于成熟的公司或者有一定规模的公司而言,招人还是有一定难度的,因为初创型企业有着更不稳定的因素。正规的初创型公司不适合招聘技术菜鸟,成本和时间都伤不起。初创型公司招人的关键点在于,公司拿什么去吸引和留住求职者。换位思考而言,如果你是求职者,你在什么情况下会选择到你自己的公司呢?通常而言,应该会是在这些方面吧:1、公司所从事的行业性质是否与求职者对口。至少不能排斥,至少不能是求职者认为的没发展的行业或者说当前环境发展不适合的行业 2、公司薪资待遇福利的竞争力。工资给的多还是少,期权股份这些有么?办公环境和福利让求职者感受如何? 3、公司的技术实力和对待技术的学习及使用态度。有技术大牛共事么?是保守派还是创新派? 4、公司的核心人物本身的吸引力和能量。我们并不鼓励盲目的用薪资福利待遇去“砸”求职者,但是至少不能低于真正行业平均水平。
关于面试讨论,这确实是一个技术活吧。但是要想在短短的几十分钟内就完全了解一个人,这显然不太可能。那么对于技术求职者而言,具体又该和面试者聊些什么呢?
对于应届生而言,似乎通常都是先笔试做题(或者上机)然后相关人员依次或者一起再面试聊聊(一对一单聊或者多对一群聊)。对于非应届生而言,有些则继续采取招聘应届生这样的模式,很多则直接通过面聊的方式贯穿于所有。不过就我所知的,除非去专门针对面试做了功课的,否则很多真正有工作年限的人并不可能记住所有的知识点,只能记住常见或者常用的。大部分通常情况下也是只能记住常见的API,少用的API则需要再查询对应的参考手册。
对于当下的讨论,对于招聘一个新技术员工而言,我们除了至少要求求职者具备一定的岗位要求的技术能力外,还会很看中对方非技术方面的软技能,比如自主学习能力、沟通能力、抗压能力、协作能力、对工作的态度责任心等等等等。
前端是一个技术发展很快的行业,新框架更是层出不穷,对于技术细节的考核,跟不少认识的主管聊过,其实很多主管自己在某些方面也都未必懂。作为一个正常的前端er,基础还是要的,包括html(html5)+css(css3)+js都是要会的,还有关系很密切常用的ps、ajax、json、后端程序语言(php、jsp等)等不要求精通但至少主流或者说常见常用的要知道吧。当前前端框架的层出不穷也确实会让一部分人可能会去不断的追求最新而本末倒置,同时也感觉技术一直都是跟不上的节奏,比如刚学完这个框架这个工具,发现似乎就被淘汰了,因为新的框架和工具又出现了。其实回到前端工作内容上,你会发现你在使用的通常也就那么些很基础很常见的东西。对于大部分企业而言,用的js框架就是jQuery/zepto。关注新技术了解新技术知道新技术背后的思想方法和当下前端的发展趋势是很有必要的,但是切记不要进入了那个不断为学习新框架新工具的重复漩涡里。基础学习更重要,深入学习一个框架和工具应该是基于实用性而言的。技术框架什么的毕竟只是一个为产品服务的工具呀。
PS:作为当下讨论的面试中碰到的问题,有不少前端Leader在面试新求职者时发现,不少所谓工作了3年、4年这样的人依然还只会切图(js几乎不会,有些不少常见的效果也无法搞定);或者有的就只会某一种小众的但不具普遍使用的框架,其他的前端技能几乎又为零;或者连个简单常见的东西问一下背后的实现思想也无法答出。这些所谓的工作的年限其实就是某一段工作技能的不断重复罢了而非所谓的工作经验。不过作为M君自己所处的城市而言,当前的一种现状是:绝大部分公司的前端从业者还是一两个的居多,很多公司则只有一个,而且工作内容就是切图本身。不过要承认的是,这种现象似乎也正在改变着,真前端越来越多。
对于各自工作中碰到的问题而言,主要的问题则会是两个方面,即技术实现产品碰到的问题和前端与后端的协作问题。
技术实现产品这个问题,主要就是我们要实现一个功能,应该采用什么技术应该要怎么更好的更高效的实现我们的产品。
对于前后端协作的问题,说实话这个是一个大家都不得不面对的问题且会是每个真前端都会遇到的问题。一个产品总是由前后端一起协同完成的,前端负责数据展示和交互,后端负责数据处理以及接收和发送。为了防止前后端太过耦合以及前后端扯皮,目前的一个趋势似乎都是走前后端分离,可通过nodejs层让彼此尽可能的不再干扰着对方。其中一种理想的方式是,前后端采用一套共同的渲染模板标签和渲染机制,后端语言通过某种标签去渲染去循环数据,而前端也采取同样的标签使用js模板引擎去渲染,但这中间需要一个人打通渲染后端语言和js渲染通用的渲染技术。
当然,问题肯定不止这些,还有上级任务安排,产品修改需求,前端与前端协作等的问题。关于这些的问题,只能说是尽可能的多沟通吧。如果真的无法很好的沟通,那么就只能借助于第三方平台或者邮件等形成书面文字的记录方式规范彼此的任务及结果要求,这样以后有矛盾就变得有据可查。
关于自主学习成长中遇到的问题以及团队管理团队协作团队成长技术选型这个话题,这其实本质上就是个人成长和团队成长问题了。
作为一个正当青春的少年而言,自主学习始终需要贯穿在我们的职业生涯中。如果现在的你安于现状那么若干时间后的你就会淘汰,而且你现在的所作所为决定的就是你今后未来的生活状态。如果你现在是一种技能累积的状态,那么随着时间的推移你最终就是成长和向前的,否则就是止步不前,而且止步不前本身其实就是一种退步。
通常而言,影响到一个人学习的因素会有自己个人的主观因素、外界的大环境因素、以及自己所处公司(团队)的环境因素。人都是有惰性的,至少对于绝大部分人而言,很多时候还是很容易被惰性给战胜的。要想让个人成长的快速,那么一个好的学习环境和实践环境是非常重要的,所以如果是在一个团队里,那么理论上成长和进步的速度会是非常快的。
对于早期的前端开发人员,各种所谓的技术都是自学的居多,M君也不另外,都是自学的,不过M君还不属于早期的前端开发人员那批。很多非计算机专业的人员去接触编程语言,一开始其实都是挺痛苦的,因为真的是各种不懂,还有一个也是没人在身边指导,所以各种苦逼。
团队管理需要尊重人性,尽可能的去了解部员的心理想法。管理者应该利用团队和项目不断的去驱动队员们自主学习,且应该根据员工自身的特性去打造不同员工不同的技术特性。团队和队员都需要一起成长,这才是一个健康的团队。
关于团队中的技术选型,除了效率外,这个则主要是要考虑到尽可能的不要只依赖一个人,技术选择似乎应该还是以稳当道。就好比最近比较火的mongoDB、reactJS等等,如果团队中只有一个人会,那么是不适合用在正式环境中的,否则当这个人万一突然离开后团队就会陷入暂时的停滞和被动中。
团队管理的那些事儿其实还有挺多的,团队协作开发的效率也是有很多方方面面需要考虑的,比如常见的代码规范、注释约定等等,不过时间太晚了就不继续了。我们可以继续找个时间,咖啡厅约起聊聊,晚安~