我们都过时了,怎样获得新生

  今天,一个同事说起现在的实习生基础太差,while,if,return和break这些混着用就分不清return和break怎么用了,但是他们还有自己的优点,很明确自己的发展方向是什么,而我们才毕业的时候,软件是怎么回事都搞不懂。

  真实情况是什么呢,不是因为现在的毕业生基础太差了,是我们已经过时了。

  回想一下我们当时2012年毕业找工作的时候。那时最很流行的几个招聘问题是结构体和共同体的区别,冒泡排序,迭代,win32和MFC。大部分问题我确实不知道答案,不过也没关系,在以后的实际工作中,根本用不到这些了,而我们更倾向于三层架构的设计,程序的模块化这些。现在这些毕业生是不是跟我们当时一样,具体语句的控制对他们来说已经不重要了,三层架构怎么设计也不重要了,而功能的实现的实现是他们的首要选择,毕竟我们现在做软件的时候,程序已经用代码生成工具产生,已经不再考虑每一条语句的执行效率怎样,模块之间怎么设计执行效率最高。使用代码生成工具产生的代码60%都是多余的,但谁还会在乎这些呢,因为那时候电脑的内存是2G就不错了,而现在工作用的电脑内存一般是4G,服务器则高达64G。

  科技的进步很快,我们需要掌握的知识点也在改变。上学的时候,学长们跟我们说汇编是必须掌握的,这是编程语言的基础,C语言是必须掌握的,用C语言编写的代码执行效率最高,如果做网站,还要学会购买服务器。而现在呢?根本没学过汇编,java和C#编写出的大型软件比C语言执行效率要高。服务器可以直接购买云服务器,还可以随时扩展,公司买了台机架式服务器静静的躺在角落里,开机的按钮我都不知道是在什么位置。学长们对我们的要求没有用途,我们对现在毕业生的要求还有用吗?

  我总是要求自己的组员要熟练掌握socket、多线程、序列化、xml文件解析,从来没有考虑过他们是否真的需要这些。他们是不是正在用鄙视的眼光看这我,就像当年我用鄙视的眼光看着前辈一样。Asp.net就能做网站和webService,为什么老师还在用wcf做webService。用wpf做的窗体更漂亮,绘图机制也更稳定,为什么还让我用winform的GDI+写自定义控件。听说北上广已经开始用wpf做桌面程序,还能做手机程序,而我们公司还在用我inform做桌面程序,不过庆幸的是我们没像有的公司,还在用C++做窗体。我当年私下抱怨老员工还在用老技术开发,影响我们的发展。现在我的组员是不是也在抱怨我还在用老技术开发,明明有新的技术、新的开发思想了,我变成了那个阻碍发展的人。

  回到最初的问题,现在的实习生基础太差,但很明白自己的发展方向。其实可以理解为代码不是他们需要重视的,他们明白自己的发展方向是他们的基础。这句话是有问题的,他们之所以明白他们的发展方向,是因为他们掌握了的基础比我们高一个层次,技术要比我们强。我们当时追求的境界,是他们现在已经掌握的,而他们所追求的境界,是我们无法想象的。很悲观的理论,我们像原始人一样被抛弃。不到十年编程技术和思想就会彻底改变。如果努力学习,不耻下问,就可以掌握最新的编程技术,而编程思想呢,已经深深固化在我们的灵魂深处,基本无法改变。这大概就是为什么程序员超过30岁,要么转领导岗位,要么找不到工作的原因吧。

  我们要等着被抛弃吗?毕竟领导岗位的数量是有限的,30岁时我们正值力壮的时候,况且我们积攒了那么多经验,就这样转行了,不但是对我们自己的浪费,同样是对这个行业资源的浪费。

  多数程序员到了这个年龄,都会有自己开公司的想法,因发现这是个暴利行业。每年有很多软件公司成立,也有很多软件公司消失。一个小公司,干上两三年,就会因为各种原因结束,是因为我们大多数人真没有经营公司的能力。不过从现阶段的经济格局上看开公司确实是个不错的选择,用三年时间每人赚1百万,超过辛辛苦苦干十年了。开公司的目的是钱,还真希望你的公司是百年老字号啊?

  开公司需要最基本的成员,如果你没有志同道合的兄弟,只是想老老实实上班,用自己的技术转更多的钱,那么就只能不断改变自己,增加自己的价值了。

  第一,要有自己拿的出手的东西。不要只埋头写代码了,每年都要审视下现在流行的技术是什么,并尝试使用它,虽然多数技术都是过眼云烟,但它总存在出现的价值,等你看的多了,就会有自己的创意,一不小心自己就写了一个NB的框架。当然,即便写出了一个NB的框架,老板也不会给你发奖金的,这只是用于向大家炫耀的,告诉老板不要考虑开除我,我能让你赚钱更快了。

  第二,更应该做的事怎样带新人,新人忙碌起来了,你就轻松了。要给新人足够的发展空间,让他们设计程序的架构,当然,新手设计架构师漏洞百出,没法使用的,你做的就是拼接自己的经验,指出漏洞,预测可能发生的情况,但不要试图让他更改架构的基本结构,因为他们的设计思想往往是最新的,旧包袱最少的,设计思想要跟着他们走。这样新手觉得自己受到了重视,而你能展现出自己比他有更高的经验,他自然会尊敬你。

  第三,就是考虑工资的事情了。不管你再怎么有用,只要你不主动开口,老板不会大幅度给你涨工资的,反正1000元你也是工作,为何要给你2000元呢。但是一开口提涨工资的事情,和老板的关系就变得僵硬了,说不定他一生气,把你开了。那么人脉关系要广,作为一个程序员,注定人脉不广。但是程序员之间的关系很微妙的,即便两个人没任何关系,只要认可对方是个大牛就可以了。即便是两人的思想是对立的,如果他那边正好有个职位,和他的权限也不冲突,他会希望你能过去一块工作的。如果你有10个这样的关系在不同的公司,那么久可以用强硬的态度跟自己打老板提涨工资的事情了。

  第四,如果在你进行业务的过程中,有其他老板给你可观的工资跟着他干,可以考虑一下。如果对方是个小公司的老板,类似于商业皮条客,最好不要理他。如果是让你进如一个100人以上的非软件公司,就不要犹豫了,挤破了脑袋也要进去。软件的目的就是为其他行业服务,每个像样的公司都要有自己的软件工程师,平时维护一些简单的系统,遇到需要做大的系统,软件工程师的任务就是告诉公司去谁哪里买系统。在非软件公司里做IT,没有那么多事情烦了,有更多的心情去考虑下自己的技术。如果没有人挖你,也尽量留意这些公司。

  以上纯属个人见解。即便你有同感,也不要在老板面前说这样的事情,在他面前还是要装个只知干活,不问回报的老牛。

时间: 2024-08-10 14:06:25

我们都过时了,怎样获得新生的相关文章

总结一下关于时间的一些类

今天下午,闲着没事,突然看到一些关于时间类的一些用法,感觉几个类有点复杂,就总结一下: (一些不对的地方还麻烦大家指出来,不要让我误导了初学者.谢谢) 具体的类主要有这几个: Date    Calendar    SimpleDateFormat 1.Date类 这个类中的大部分方法都过时了. 具体可以这么用: Date date = new Date(); System.out.println(date.toString()); 可以直接打印出当前的时间:Mon Jun 30 12:50:0

如何来实现自动赚钱,网络赚钱的思维

记得很久以前有一个朋友就跟我讲:成功是可以复制的,别人怎么做的,你就直接原封不动的复制他的套路,把他走过的路,趟过的河,吃过的酸甜苦辣全部都来一遍,他能成功,你也能成功. 这也是在互联网中存在很久的论调. 看到别人在朋友圈发:最火电影<战狼>只需8.8元就可以观看吴京真男人,然后你直接就去花8.8元,或者自己去网上找资源,复制他的文案,在朋友圈.在贴吧.微博去发,一样能赚钱. 在网上看到别人说做打字员工作,每天只需要一两个小时,要求只要有电脑,会打字,每天收入500+,每天任务单接不完.然后你

垃圾回收算法(5)分代回收

分代垃圾回收,基于的是“大部分的对象,在生成后马上就会变成垃圾”这一经验上的事实为设计出发点.此前讨论过基于引事实的另一个垃圾回收算法,引用计数出的一些优化思路. 分代的关键是: 给对象记录下一个age,随着每一次垃圾回收,这个age会增加: 给不同age的对象分配不同的堆内内存空间,称为某一代: 对某一代的空间,有适合其的垃圾回收算法: 对每代进行不同垃圾回收,一般会需要一个额外的信息:即每代中对象被其他代中对象引用的信息.这个引用信息对于当前代来说,扮演与"root"一样的角色,也

我是一只IT小小鸟读书笔记

春回大地.万物复苏,春天如期而至,而我内心的迷茫也从未消散.我害怕开学,开学意味着将漫无目的地学习自己本用不着的东西.但也在感慨时光似箭一去不返. 在大一这个懵懂的阶段中,许多大学生都不是很清楚自己将要面对的是什么,今后的方向,甚至现在该干些什么.一届又一届的学长学姐都告诫我们大一的新生不要虚度这四年的时光,青春太宝贵,千万别浪费.可我们又该做些什么呢?我们迷茫在学海中了.就当这时我们的职业生涯规划老师给迷茫中的我们推荐了一本名叫<我是一只IT小小鸟>的成长书籍.一开始我并不是太愿意去阅读这本

关于开发中的常用手段(个人建议)

由于最近在一家外包公司 做项目 (团队开发 3个人) 有个朋友一起 我们研究出一套 相对来说 速度和效率都比较高的开发方法. 1. 搭建界面 对于一个程序来说 无疑刚上来就要看原型 看UI 看切图 所以界面是首要做的 那么我来说下做界面的常用方法仅个人看法 不喜勿喷, >如果是比较死的界面(就是尺寸不是动态的改变的)那么尽量用storyBoard 和 Xib 进行开发  好处是冗长的创建UI,给UI加属性的的代码再也不用堆叠在类中了 >如果是动态改变比较频繁的界面建议 用代码编写 比较灵活 &

玩转Linux网络namespace-单机自环测试与策略路由

上周有厂商到公司测试,拿了一块据说很猛的网络处理加速PCIe板卡,拎在手里沉甸甸的很有分量,最让人意淫的是那4个万兆光口,于是我迫不及待的想要一览光口转发时那种看不见的震撼.       可是,仅凭4个光口怎么测试?起码你要有个"对端"啊!任何人应该都不想扛着三台机器在客户们之间跑来跑去测试其转发性能,当然你也不能指望客户那里就一定有你需要的"对端"设备,比如我们公司就没有这种和万兆光口对接的设备,不过赶巧的是,那天还真有一台设备带有万兆光口,但是只是碰巧了.最佳的

利用大白菜制作多系统启动U盘(win+ubuntu+PE+...)

网上提供的方法很多都过时了,不适用,要不就是讲的不清楚 我结合http://www.xuebuyuan.com/848003.html大神的方案,加以研究,整理出了此篇文章 先看下最终成果: 好了,感觉很不错吧,这里只有5种ubuntu的安装镜像,当然如果你想要加入其他的,(比如win7,win8,win10,ubuntu16.10啦),仔细阅读此文章,都不在话下,完全DIY! 一.需要什么 1.足够大的U盘一个(我用的是Kingston 8GB U盘,就本文来说2G就够了) 2.大白菜(大白菜

iOS 通知NSNotification 使用详解

如果在一个类中想要执行另一个类中的方法可以使用通知 1.创建一个通知对象:使用notificationWithName:object: 或者 notificationWithName:object:userInfo: NSNotification* notification = [NSNotification notificationWithName:kImageNotificationLoadFailed(connection.imageURL) object:self userInfo:[N

如何从0搭建用户成长体系?

在我刚开始接触Python语言的日子里,我最喜欢做的事情之一是坐在解释器旁使用内置help功能来检查类和方法,决定下一个要敲的内容.这个功能导入一个对象,遍布它的成员,取出文档注释,生成一个类似manpage的输出,从而帮助你找到如何使用正在检查的对象的方法. 它被内置成一个标准库的美妙之处在于通过代码直接生成输出,它为我这样的懒人间接地强调了一个编码风格,我就想着在尽量少做额外的工作的情况下维护文档.尤其是如果你已经为你的变量和函数选择直接的名字. 这种风格涉及到向你的函数和类添加文档字符串,