加上毕业前的实习,一转眼自己已经在公司上班将近五年时间。这其实是一段很长的时间,在公司里面待的时间比在大学里面生活学习待的时间还要长。对于刚毕业的小学妹小学妹来说,已经是老学长了。
一个人最害怕的不是知道自己不知道,而应该是不知道自己不知道。毕业几年,曾经也因为自己的天真和不通世故,在生活面前磕得头破血流。希望这篇文章能让一些人得到点启发,有所收获,当然更重要的是使我更加清醒。
1、工作后,能自己决定的时间并不多,工作日都要上班。在上海这个大城市,从家里到公司上班通勤单程花费一个小时是正常的。晚上再稍微加点班,一天时间都耗费在去公司路上,公司里面,加班、从公司回家路上了。就周末双休有点空余的时间。
为什么那么多人抵制,我来描述一下工作的人大概作息。早上7点起床,洗漱穿衣,7点半从家里出发去公司,9点左右到公司,在公司呆到晚上9点,稍微晚一点到9点20。到家就11点左右了,洗个澡上床睡觉。一天又一天,工作强度实在太大。尤其是结过婚有了孩子,过得如果还是这样的日子,可以预知的辛苦。。
2、工作后想要请假只有年假、调休(节假日公休日加班可以申请调休)。要毕业工作满1年~10年才有5天年假(应届生刚毕业是不能请年假的,要工作满一年才有假期),假如平时周六周日公司加班不给调休或者没有加班,工作日有事想请假就得请事假了。请一天事假就少一天工资,一个月也不过22、23天。因此请事假成本是很昂贵的。
3、如果大学里面没学驾照,假如工作后想学驾照,很多考试必须要在工作日才能考。学驾照需要请假的成本:驾照报名,车管在所体检要1个工作日时间、科目一,科目二模拟,科目二,科目三模拟,科目三,科目四要6个工作日。加上科目二科目三可能一次过不掉,保守估计得10个工作日才能把驾照考出来。(17年在万达这家公司节假日累计加班二十多天,才换来十几天的调休,这些调休都用来学驾照了。所以驾照这个东西最好还是要在大学里面学出来吧。假如请事假,学出驾照不知道要有多大的成本。楼主驾照学了5个月,花费人民币将近元,请了10天假。)
4、毕业后,跳槽得请假去面试,假如没有调休或者年假就得请事假了。拿到offer后,如果想要换工作,上海这个地方俩家公司距离很远是很正常的。假如想离职现在这家公司去新公司,如果是租房子可能还有换房子的成本,找新房搬家也比较折腾。去了新公司还有试用期,即使试用期薪水%发放,考核绩效刚进去都不会很高,各种奖金拿得肯定比老员工少。还得适应新公司的工作环境、人际关系。有同事拿到offer,本来是很好的机会,但是要换房子,就没有入职了。也有同事年假用完了,没有调休,用事假去面试,面试一家公司就要五六百块工资成本。所以没有30%薪资的涨幅,很少有人换工作的,成本实在太大。
5、中国的中小企业的平均寿命也就2.5年,互联网行业的公司基本都是私企性质,所以不太稳定。一个公司一个部门做的项目逐渐没有盈利出现裁员是很普遍很正常的事情。以前也想不大通,为什么有些人会频繁的换工作。一部分原因就是原来的公司倒闭或者出现裁员了。就算腾讯和阿里内部也有一些不盈利的部门或者业务线,应届生去了这些部门工作还是有很多风险的,福利涨薪会差很多吧。假如出现裁员,那更是惨,被劝退、被边缘化。
有些简历上有很多家公司的职场老人,不要觉得他们很牛逼,常走在失业边缘的人,没有安全感战战兢兢,找工作被别人挑。
6、在同一家公司获得涨薪是很困难的,公司制度就在那里。刚进公司的时候,薪水多要一点。其实也多要不了多少,以我入职过五家公司的经验来看,每一家公司都是有自己的薪酬结构的,因此同一批入职的员工薪水往往差不多,上下浮动不会超过1K,你认为给你的薪水不高,其实已经达到HR能给的极限了。除非能力超群,工种在市场上具有竞争力,才可以拉开彼此薪水的差距。
在一家公司工作一年时间涨不了薪水非常正常。涨薪不能为一个人涨,要大家都涨薪。假如一个同事以离职获得加薪,那么每个人都提离职了。一个部门总的涨薪数量是有一个额度的,一个人涨薪多了,就会有人涨得比较少。涨薪多少还有一个核人的过程。想涨太多真的很难很难,同一级别的员工涨得薪水大都是一样的,上下浮动不会超过1K。在大公司都是螺丝钉,掌握核心的人很少,公司没有你照样转,换个人花费一个月交接也能把你工作做好。
在万达一次调薪的时候,那一次只调了块。离职时,跟直属领导交谈:部门经理当时说“做的没有什么特别出彩的地方”,就给了这样幅度的涨薪。现在觉得前公司调薪真的算是比较多了,有些公司一般一年调薪3%,5%,俩年调一次薪水都很正常。
IT行业涨薪靠跳槽,领导说的话听听就好了,换工作是稀松平常的事情。跳槽涨薪幅度没有30%不要跳。面试的公司多了,才知道这个世界上还是有很多奇葩公司。18年面试的一家公司,离我家很远,单程要1个小时50分钟,HR在网上搜到我简历让我去面试的,谈薪水的时候竟然开玩笑问我平薪进来干不干。这种给薪水低的公司绝对有坑,千万别去。面试没拿到offer情况是很多的,不要轻易怀疑自己的能力。
7、一转眼都是职场老油条了,毕业前至少面试过40家公司,毕业后至少也面试了30多家公司。以下社招面试java的一些总结。
社招面试成本大,不像校招,有一年时间找工作,还是学生。面试前需要多准备,不要随便投简历,多看面经,适当的挑选几家公司去面试。面试大公司会有记录,万一在公司的名单中,可能接下来一年你都不能参加这家公司的面试了。一次完美的跳槽,准备时间最少要在3个月左右。就是你想跳槽开始投简历面试到真正跳出去最少要预留4个月左右的时间。加上离职交接期,真正入职下家公司也得要4个月后了。
需要多面试找感觉,面试问的东西都差不多有套路可以学。java面试宝典需要多看看。一些常见面试题要弄熟弄懂。
公司社招提供的岗位一般性是有名额限制的,一般招聘网站上的一个jd,只招一俩个人。投了简历,最好尽快赶去面试,不要觉得面试准备不够拖到下周,因为下周可能人已经招到了。反正我把面试拖到下周的公司,基本都没有拿到offer。
社招面试一般一次会有俩轮以上面试,如果第一轮面试面试官叫你可以回去等消息了,说明你没有通过这个面试官的筛选,被刷掉了。
投简历、一面、二面、三面、收到offer。其实经历了一个与很多人交互的过程。投简历,HR收到简历,简历初选,把简历给相关的用人部门领导看。相关用人部门领导看到简历,经过筛选,选几个感觉合适的面试。然后经过一轮面试,二轮面试,三轮面试。面试官们综合讨论面试感受,然后发offer。互联网软件行业如果想去大公司,没有什么真才实学,面试时没有把很多技术点讲得非常细,没有什么好学历,是根本不可能浑水摸鱼拿到offer的。有些人没拿到offer,看似很突然的结果,都不知道中间经过什么样的流程。其实结果是很合理的,只是听到结果的那一刻会感觉很突然。有更好的机会,跳槽就要毫不犹豫。即使面试不理想,也不要怀疑自己,患得患失,只要持之以恒的努力,好运自会到来。
8、周围的同事离职了,就真的再也不见了。反正以前的同事离职以后,后来我再也没有在现实世界见过他们。
9、离职的时候和直属领导谈话,我觉得杨**是交大通信专业本科生,现在在部门里面干的工作类似于交付实施运营,以前做的开发工作java也写python也写,做的事情很杂,没看到什么明显的发展前途呀。薪水和我一样也不算很高。假如他想跳槽的话,也会比较困难吧。直属领导:一个人的未来发展是看不透的。工作是什么?工作只是把领导交给你的活干好罢了。
工作只是一份工作而已,具体的发展还是要靠自己把握的。工作三年,在公司里面也听到过很多忽悠。保持自己在市场上的竞争力非常重要,即使离开了现在的团队也可以找到更好的工作。
就比如在大学里面找到工作,辅导员、导师不给你去实习让你留在学校里面,说了一堆大道理。其实呢,只要你把所有课程都过了,创新学分拿到,无论毕业论文写的怎么样,基本上都能拿到学位证、毕业证正常毕业。在社会上,找工作就是看你实习经验。听学校老师的话,留在学校里面,没有实习经验,找工作没有竞争力,到毕业了谁管你死活。
10、离职各个公司的理由:离职和分手一样,过程都是复杂且原因多样的,究竟谁对谁错就不要深究啦。
普元:在大三的时候,对找工作还比较迷茫的,总觉得应该找一份实习做做。因为专业电子商务,周围很多同学找了产品和运营的岗位。自己写了简历,大三暑假来上海找实习,结果面试了七八家公司都没有找到一份实习(可能别人知道你没啥经验,能够实习的时间也短,面试的情况也不太好)。在找工作的过程中,从别人口中得知移动开发比较火,就在淘宝上花了15块钱买了培训班视频自己自学,然后在校招上面试了十几家公司拿到普元的offer签了三方协议。当时普元在工大招了十几个软件或者计算机学院的。
普元是要求毕业前实习半年的,进入普元实习后暴露出自己学渣本色,非科班出身,接触编程时间短,没有什么开发经验。我们那个部门招的五六个员工都是本科或者硕士,学习动手能力比我强很多。实习了五个月,部门招了一个山东大学的本科生,考虑毕业留用的时候,领导把我干掉了。领导不知道我签了三方协议,我拿着三方协议拿到了的赔偿。抓住春招的尾巴一个星期拿到万达的offer签了三方协议,比普元承诺的毕业后试用期薪水还多1K吧,算是万幸。
万达:万达15年市值达到顶峰亿,公司的副总裁年薪百万招了胡总来金融事业部任职副经理做第三方支付。15年的时候做了一款第三方支付产品,但是支付牌照没有申请到,业务从16年开始就转到第四方聚合支付。有了支付牌照可以合法做很多业务,银行卡收单、网络支付和预付卡的发行与受理。只要有了支付牌照,再小的公司基本上一个月都有几十亿的支付流水。做第三方支付还是蛮有前途的。但17年聚合支付因为金融监管变严,已经走向末路没有什么好的盈利方向,加上市场上做成的聚合支付产品太多部门的产品没有太大竞争力,所以17年7月部门出现一次大裁员。
不过17年,银联给了部门万推广费,让部门有了一丝缓冲。所以17年我们那个部门留下的人是正常涨薪正常发放年终奖的。在17年一直没换工作的部分原因是,部门的支付系统让留下的人重写了。这个支付系统需求设计、架构设计、研发费用烧了几百万吧(假如部门一名员工的月薪是一万,则一年公司为之支出20万,我们部门全盛时期有40多人一起做这个系统)。跳个槽,涨个俩三千块钱,一年就俩三万块钱,太不值得。18年的时候,万达信息的支付产品已经做出来了,基本上没有什么额外的开发任务了,只要在现有的基础上不停增加商户对接这个系统就行了。技术和业务基本掌握了,最核心的支付产品所有接口都被我重写了一遍。离职万达信息以后,万达信息那个部门一直在忙财*局万的项目,主要盈利方向就是接一些外包项目,用本来就有的产品帮别人做一些外包,勉强养活现在的团队。赚不了太多钱,薪水涨不上去,年终奖不会多。
一开始刚踏入职场接触工作,每天学习技术做项目进步很快。后来所有工作上用到的基本掌握了,不会的稍微学习一下就能上手就觉得做开发还是蛮无聊的。有时候忙忙碌碌上班下班一天又是一天困在那台电脑前感觉没有什么归属感。软件行业喜欢新人,不喜欢给老员工涨薪水。工作满俩年,周围校友都跳槽了,我也跳槽了。
其实当初面试万达信息拿到offer的时候,面试官其实把我要的薪水报给领导的时候多加了俩三千(我在普元被干掉的时候是4月10号,本科生一般6月份毕业,春招都结束了,最后一波春招不敢开高价)。虽然他在我入职时就已经离职,但到现在依然很感激他。是我生命中的大恩人。在那时候没有毕业的时候,也想在一家公司干很久很久的,但社会就是这样啊,程序员就是需要不断靠跳槽来获取加薪。也不是老板不愿意给你加薪,换了你是老板你也会这样做。一个厦门大学前同事曾经跟我说过一句话:去的每一家公司都以为自己能干满劳动合同期满,结果每一家都没干满劳动合同期。
18年离职万达前,我写了一封三四千字的加薪申请邮件给领导,要求涨薪3K。邮件是5月17号发出去的,我们是月底发工资,6月27号跟领导交谈才得知加薪结果,那一天刚好收到了东方财富的offer,6月29号提了离职,7月9号拿到万达信息的离职证明,7月10号就入职了新公司。离职交接期就十几天吧,是我跟公司谈的离职交接期,也是为了早点入职下家公司拿涨薪后的薪水。
东方财富网:入职的天天基金销售有限公司,主要的技术语言以.net为主,但近几年市场上.net开发人员变少了,以java语言为主流,.net开发员工很难招聘(其实我觉得主要是因为要求高、薪水开不高给不了预期的涨幅)。基于市场的需求,天天基金开始尝试转型java。我刚入职时,java组是新成立的,所以java团队规模不是很大,以应届生为主。我离职后,以前的天天基金整个部门只有俩个社招java开发了吧。所处的网站开发部,招了java开发后,没有定位好这个组到底做什么业务,业务方向不断改变,原先.net的需求还不断的提出来。于是当时我们组主要做天天基金app首页上的后台活动接口,就是给天天基金app上一个个小游戏,设计后台接口,让前端人员对接。边缘项目组,没有技术含量,就俩个java开发,公司没有java技术底蕴积累,代码文档也很不规范,比较乱。做的活动项目,因为烧钱有一些羊毛*薅羊毛流量大项目出了问题,所以年终考核我背了绩效C(其实也就少了半个月年终奖)。当时年轻气盛,加上遇到感情挫折,事业和情感都到了低谷。不甘心这样的命运,那俩个月每天夜里三点钟就醒来睡不着,心力交瘁。跟当时的领导吵了起来,莽撞说了离职。东财天天基金这份工作只干了11个半月。
其实仓促被动离职,是职业走下坡路的开始,选择会比较被动,职场上要多多学会保护自己,避免被动离职。离职东财,就面临重新招工作的问题。因为家在上海,所以选择的公司所在的地址范围是有局限性的。银联、华为、sap这些公司都离我家很远。银联在唐镇,云闪付的offer就没接了。华为,比前公司东方财富网还要多14站地铁。离家近的公司,美团(7公里)去年年底大裁员,携程(9公里)工资开不高,京东(8公里)刘强东事件京东裁员,拼多多(9公里)19年初招人要求高、应聘人多、薪资开的高、很多候选人反应不像是诚心招人的样子。平安科技19年9月份裁员了30%,幸好没去面试。陆金所,30%的工资纳入绩效考核,实行,还好没入坑。中型公司、大型公司给的钱往往差不了多少,绝对没有想象的那么给力。如果要租房子,就没有什么性价比了。
因为毕业后呆的行业都是IT金融,做IT金融一般有三条路:1、国有银行。2、具有国资背景的证券公司。3、私营头部企业。做小额贷款、保理、第三方支付、分期、p2p的互联网金融公司。因为拿到的offer,只有现在这一家券商offer,确实是国企(国资控股占80%),所以换了行业,入职了券商。以我的年龄,过几年跳槽到大券商是可以的。其实我来现在这家公司,也是因为手上没有更好的offer。钱多事少离家近。自己能力也有限。蚂蚁金服、阿里、今日头条、华为这些大公司还是很值得去的。貌似上海这边搞金融的,都在陆家嘴附近,也都是在市区。
券商最核心的几个系统大概是集中交易系统(股票交易上报到证券交易所)、快速交易系统(在快要涨停或者快要跌停的时候,加快速度插队交易)、crm客户关系管理薪酬结算系统(给证券经纪人结算报酬的系统,最重要基础的系统)、场外交易otc系统、资管系统、经纪系统。目前做的开发工作应该是:直接对接这些核心系统的数据,搭建数据中台,数据仓库。提供数据服务。算是很核心的岗位了,理论上来说,可以偷偷看到现在这家券商某个用户的股票持仓情况。
XX证券:暂且保密。我争取今年明年跳去一个想去的公司,谈得一个比较理想的薪水。
附件一:帮助前同事顺利跳槽的面经
java面试总结
面试java开发人员最重要的是:
1、候选人学历背景,呆的每一家公司,干了多久,真实岗位,做过什么项目,用过什么技术栈,项目业务是否匹配。一般同类性质公司相互跳槽。
2、真实的离职原因。
3、上俩份工作干了多久,一般大公司要求三五原则,即五年中只能呆过2家公司。因为大公司招人成本低,源源不断的面试者。一般~份简历,只能面试进一个人吧。
4、期望薪资是多少。
java开发技术基础只占据到面试评分的40%,这些问题只要是3年经验的java开发都基本必须要掌握的,但是平时工作很少能遇到,没有细心准备过面试的候选人往往答不出来(忘记了)。java开发技术基础上面写的每一项都可以占据到15~20分钟的面试时间。因此java开发项目设计占分达到60%。
java开发技术基础(40%):
一、java基础:
1、hashmap、hashtable、ConcurrentHashMap
2、ConcurrentHashMap1.7JDK和1.8JDK版本的区别
3、JUC包下的并发集合类
4、jdk的版本特性
5、线程和进程。
6、volatile作用
7、线程之间如何通讯
8、线程池。
9、synchronize和Lock的区别
二、设计模式
设计模式的种类
手写一个单例模式:懒汉式、饿汉式。
三、框架基础
1、SpringIOC和AOP原理
2、动态代理的实现方式
3、Spring的事物传播级别
4、dubbo的源码
可以不可以不通过zookeeper注册
5、zookeeper
cap原理
ZAB协议
leader选举算法和过程
6、springboot
7、springMvc
8、mybatis
9、springcloud
四、消息队列
kafka
kafka消息重复消费的问题?幂等怎么做的
kafkaack机制?集群中的ack是怎么实现的
rabbitmq
RabbitMQ消费端ACK与重回队列机制
五、缓存redis
1、Redis支持的数据类型?
2、有没有做过redis分布式锁
3、什么是缓存穿透?如何避免?什么是缓存雪崩?何如避免?
4、redis的持久化机制
5、redis的数据过期策略
6、Redis有哪些架构模式?讲讲各自的特点
六、数据库
1、mysql
2、MongoDB
3、oracle
4、悲观锁乐观锁
5、数据库四大特性和事务隔离级别
6、索引的类型原理索引的结构
7、数据库引擎innodb和myisam的区别,什么时候选择myisam
8、innodb的行锁和表锁
9、sql调优慢查询优化
10、binlog、redolog、undolog都是什么,起什么作用
七、JVM
1、垃圾回收机制
2、垃圾回收算法
3、双亲委派模型
4、各垃圾回收器的特点和区别
5、MinorGC和FullGC触发条件
6、运行时数据区域内存模型
八、算法类
1、排序的种类:选择、冒泡、递归、堆排
2、二分法
3、二叉树
4、leetcode习题。
java开发项目设计(60%):
一、做过的项目(最熟悉的项目)架构图,有什么令自己非常满意的作品,深入挖掘项目。
二、高并发下,秒杀场景的设计
三、分布式锁的设计。
附件二:毕业后第一家公司发生危机时的感悟
如何识别自己的公司发生危机
一家公司出现危机是有预兆的,那么作为底层员工是如何识别突然发生在身边的这些奇怪事情呢。虽然没有被裁过员,但是看过一些文章,另外前公司发生过一次危机,所以对此理解比较深刻。
1、高层管理人员集体休假。公司高层管理人员在公司发生危机时,第一个得到消息。这个时候他们普遍还有10天年假没有休完,这可是半个月的工资。如果不休掉说不定这些年假哪天就作废了。
2、接下来就是高层管理人员相继离职。这里面有些是被裁员的。有些是知道自己不会拿到裁员赔偿不想浪费时间另谋高就去了。
3、高层管理人员的相继离职导致留在公司里面其他人员人心惶惶,甚至不想干活。管理人员发现了这些漏洞,所以制定新的规章制度来约束他们。因此考勤、人事规章制度不断变化。
4、接下来就是开会讨论新的改革变动方案。比如裁员。或者一个个同事被领导约见谈话。
5、涨薪涨不动,年终奖没有,平时的员工福利消失。领导随便找个理由就能扣掉你一大半奖金。
6、被离职的同事工作要交接,如果没有被离职的,会被要求交接他的工作。或者自己要写项目类似交接报告的东西。项目的详细设计。这些东西会被领导评估,是否要裁掉这个人。
7、如果项目要接着做下去,有人被裁,就会有人升职加薪了。
当然我觉得被裁员最爽,没有任何选择。当然有些公司为了缩减成本,公司可能也会做一些令人恶心的事情。比如去年万达年底裁员了一批人,拿到N+1补偿,虽然符合正常的法律规定,但是他们本来是有4个月年终奖的。最惨的是公司倒闭,连工资都发不出来了,没有任何赔偿,而且一般的员工无法识别这些突然的变化,还继续留在公司工作,拖欠几个月工资后失去最后的幻想才去找工作。其次就是裁员了一批人,留下来一批人,活猛地变多,假如又没有什么起色,不给涨薪,降薪,没有年终奖。
作为劳动者毕竟是弱势群体。假如走到仲裁这条路,就是和公司撕破脸皮,被裁一事就搞得人尽皆知了。虽然除了正常的N+1,还可以把自己的加班费、绩效奖金、年终奖全部要到。但以后职业生涯也会有影响。资本家嘛,都懂得。
附件三:
软件公司和互联网公司的区别
依稀记得16年7月份万达信息入职培训的场景,那一年万达信息招了四五百多个应届生。一开始也想不通,为什么公司需要招这么多人,得花费多少精力去培养这些新手。万达信息整体上只能算得上是一家软件公司吧,跟市面上绝大多数的软件公司一样,给别人做软件项目盈利,简单的说就是乙方,靠给人卖人头费赚钱,一个人包出去给别人做项目多少钱一个月。比方说,把这个人包到甲方做项目,算工作量一个月、、0、。如果稍微等级高一点的员工,比如项目经理那个级别,则包出去的价格稍微高一点。这样的公司,在这样的盈利模式下,普通员工的薪水是很难涨到很高的,涨到万把块钱就涨不动了。因此人员流动性还是蛮大的,才毕业2年,就我们那一个楼层来说,几乎没几个认识的熟人了。
回想自己以前做的项目,台州一卡通账单平台,整体耗时6个月,去台州出差俩个多月。这个账单平台子系统现在已经对接了医院。在部门一个项目经理带领下做出了这个项目。直到这个项目交接给别人,我们这6个月在这个项目耗费的时间以及工作量,也仅仅为我们部门带来了29.5万的收入(其中出差费用报销算在其他部门上)。部门7月份到11月份,做的温州市民卡统一支付、公交