10月8号去这个公司上班的,10月25号,终止。这不是我想要的结果。可是又能怎么样?我再次失业了。不知道是自己冲动,还是什么?5点都办完手续,从公司走了。在路上,一直在思考,怎么跟老婆说这个事情呢?有没有做错?这个地方值不值得待?其实值不值得待,就可以回答有没有做错,有没有做错,但不能作为跟老婆交代这个事情的理由。女人都是感性的,她第一反应肯定是,你工作没了,家里的收入没了,这日子该怎么过的问题。
下面先讲述一下整个过程,然后再总结2个问题:有没有做错?这个地方值不值得待?问题1,就不再这里交代了。
进公司的第一天,前文也有提到,上午装了半天的电脑,开始时装一个新电脑,然后是visa系统,什么都没有,领导就说找人换,换了个电脑后,就到中午了。下午就装VS2003、VS2005、VS2008,其实这段时间只用到了VS2008。装好后,基本到下午4点多了。领导叫我去安排任务的是做一个上传和下载的功能,然后对界面优化一下。
在qq上,发了之前有同事做过,但没完成的代码给我参考。然后就说参考微云的界面来做。需求文档也要我自己来写。这个也没什么,对吧。我先是看了那个代码,那个里面有领导写的一个界面重绘类,图片名字是写死的,路径是写死的,我新建了一个过程,把这个类加进来用,程序直接崩溃。这个类没有任何使用说明,那个时候已经到晚上6点20了,正好领导过来问情况,我跟他说用,你这个类程序崩溃,他说你自己看吧。
第二天,上午找到了那个崩溃的原因,也就是说,没有判断路径存在不存在,文件存在不存在,崩溃的时候表现就是空指针了,昨天跟他提到这个的时候,他说,你当时怎么不跟我讲,我说怎么没跟你讲?只是你没在意,没当回事吧。吃饭后,在楼下与同事聊天,说到程序崩溃的事情,c++的同事反问说,你觉得他水平怎么样?然后说到之前他刚来的时候,遇到程序崩溃和内存泄露的问题,找领导帮忙看,也没个结果,他说估计是怕了,所以才叫你自己找的。下午,领导说要我写个计划。我说要先看看微云的界面和功能。到下班的时候,发给他,没回什么消息,第三天上午,在qq说,你发的我看了,那个什么什么没有,我说你再好好看看,并截图发给他。他没回消息。过了半小时,说要我写开发计划,我写个比较细的,他说写成表格的,下午发给他,有是没消息。不知道大家有没有用过微云,那里面界面核心的我觉得就是那个列表了,那个列表时重绘的,关于功能点之前也有博客写过,就不多说了。界面这块说实话,还真是好久没弄了。那是刚出道的时候做过,后来维护客户端的时候改过,这个当时面试的时候,我也是如实告诉他的。面试的时候他问到有没有用过directUI,我说,这个还真没有。好吧,这个跟他达成一致意见了,列表他找人做,我搭建界面框架后,就做上传和下载的功能。界面上还有一个难点就是点不用的按钮,切换到不同页面,这个就像是tabctrl一样的功能,只是MFC提供的比较丑,标签在上面。然后就想办法写了比较简单的,之前博客也有描述。
国庆后的几天,基本上就做了这些事情。
然后接下来一个星期,他也没问过我的进度情况。那我做了些什么呢?周一装了阿帕奇http服务器,然后在网上找了一个C++版本的上传文件的代码,然后就进行测试。怎么测试都不行。到周二了中午在楼下讨论的时候,我觉得需要一个服务程序来保存文件,http服务器只是起一个通信的功能(个人理解,不知道对不对,之前没有接触过阿帕奇),下午又在上网找,有人说要写个PHP服务程序,并找到了例子。好吧,在下载php服务器,安装,配置。web页面测试,可以成功上传。然后测试C++的,不行。php真的不会,只好找人帮忙,还好,问到一个在北京工作的php的热心哥们,在他的指导下,c++可以上传成功了。然后就是下载了,下载比较简单,就一个URL,不需要php服务程序就可以。这时候,问题就来了,上传和下载的路径怎么来?这个肯定是要查询数据库的,或者是请求服务器,服务器返回,比较好的做法是服务器返回。一方面是设计的角度,同一功能尽量在一个模块实现,另一方面是安全的角度,如果客户端操作数据库,则数据库的地址和端口等信息讲暴露;还有就是性能,多个客户端去连接数据库,这种操作性能方面会有一定影响,有的时候客户端异常,会造成表锁,造成数据库的数据不完整。好吧,那服务程序在哪儿?没有。所以,选择前者,客户端来操作数据库,登录、获取目录等。所以,在周五写周总结计划的时候,我写了下周数据库操作和树目录功能实现。
那就到这周了。周报是上周五发给他的,周一上午没说什么。下午来,说要看看我做的情况。好吧,看呗。他看到上传txt文件,就说用txt文件测试有什么用?尼玛,用什么文件有区别吗,这里用的是二进制的。好吧,上传个压缩的文件,这个上周确实没测试,这个是我的问题。一方面来公司有2个星期了,还没跟我签合同。另外一方面,有同事说,公司拖欠工资的(好像9月的是拖了一个星期发的,之前的就不清楚了。)有问题,上传不成功,我说这个是限制了大小,php默认是2M,然后我找了个地方改成100M,然后还是不行。然后他说,你先弄吧,下班的时候,我在看看。还不说,这个真把我紧张了下。然后再找资料,原来有2个地方,一个是文件的大小,一个是post的大小。改好后,可以上传100M的文件。突然想如果文件名字有中文的行不行,结果不行。用web测试时可以的。好吧,问题又来了?后来分析,php默认是utf-8,我传输的是unicode,我把php默认的字符集改了试试,结果还是不行。然后我改c++这边的,改成按多字节字符集。就可以了。但是这里涉及到一个问题,如果要用unicode,那就不行,这个问题也没深入研究下去,因为还有数据库等要做。晚上找他看,我把这个字符集的问题跟他说了下,他说这个字符集的很简单啊,就是_T,我想喷血。接下来还有更好笑的。上传100M的大文件时可以了。然后他说,这里应该用多线程来做。我就问,因为我实在是不懂,并且现在保存文件也是用php服务程序来实现的,那客户端把文件拆分长100个1M的,谁来合并文件?他说,这个阿帕奇服务器就可以啊。昨天,跟他谈的时候,他说,这个我是工作忙,没考虑清楚,我操,懂不懂,跟考虑清楚不清楚有毛关系?好吧,接着说多线程这个事,然后他有提到下载,这个也是不用服务支撑的可以实现的。本人确实想不通这里面的原理,如果有那个大牛清楚,请告诉我,并且我也发帖子了,没有回复我。然后就提到要做成DLL,靠,这个早干嘛去了?讨论之后,基本到7点了,我说我回去了,他说先发代码给他,没有同意我回去。发代码给他后,我有说了2边,他才同意。走到楼下,碰到几个同事吃饭后在下面扯淡,就过去说了下,他们都笑了。周二做数据库和树形目录,周三上午弄了下DLL,下午他发了个整个项目的计划表,要求每个人写一下自己那块。我看了看没写。真心话,不知道怎么写,我的那块就写了一句XXX客户端,10月30号完成,没有什么要求,没有完成那些功能?这是什么计划?这也叫计划?周四中午,吃饭的时候他找我,让我写计划,我说你不写了吗,他说这个时间可以完成是吗。我说完成什么,你都没写。他说,你写下计划。我感觉,这就是扯淡。服务器都没有,做客户端的意义何在?下午写了下,整个完成时间需要根据列表功能完成时间和服务器借口对接完成时间来定。然后在qq上就扯起来了。列表功能是开始的时候就说好了的,他找人来做,现在他有说让我来做?好吧,在说服务器接口,他说你需要哪些接口列出来。我说这些功能没有服务器怎么样才算功能实现了呢,怎么判断代码写了没问题,怎么测试?其实重点还是多线程的没做,我就问了,这个就算客户端用多线程,服务端接收速度跟不上,有什么意义?他说,这些你不管。我说,好吧,那你说30号前,要完成哪些,你告诉我。没回消息,直到下班。
周五下午,我去问了下人事,我来公司也有半个月了,为什么现在还没跟我签合同,她说要问下我们领导。然后,领导办公室去谈。
在办公室里,谈的基本上就是上面这些了。为什么没做多线程?数据库那块很简单,谁安排你做的(我想说,周报你有没有看,但是没说,我觉得没必要说了。因为他肯定会说,事情太多,没时间看。)?最后,基本上说到结果了,说过之后,我问他,你对之前发的那个程序怎么看。他说这是个demo。我说从框架和设计,性能等方面。他说,你觉得有什么问题。我说,首先那个界面类,会造成程序崩溃。这个你当时怎么不说,我说我说过了,哪天晚上就说了,然后有一天开会的时候,也说了。好吧,在说其他的问题,数据和逻辑在一起,他就问了,这里哪有数据和逻辑?此处省略100字。然后还有内存泄露。最后,我说,多线程,只是一个框架,主体功能是什么?多线程这个框架什么时候放进去都可以的,但是没服务器,你放着有什么意义?另外一个就是,我开始做了多线程,上传和下载功能没实现,那这个多线程有用吗?然后就是,就现在这样,我走了,至少,上传和下载这块是有参考价值的。我的代码没有什么内存、崩溃的问题,这个就是我的思路,我会把功能先比较完善的实现。
谈完后,去找了人事,然后办了手续。本想跟她多说一句,算了,还是不说了,领导也是为了生活,只是苦了的是公司和在他下面哪些混日子的人。
总结一下:
首先,如果领导对这个过程比较熟悉,他应该告诉我怎么来做这个事情,因为我告诉他,我对阿帕奇不熟悉,他没说,给我来马后炮,等我用了3天多时间调试通了,说我用的时间太长了。
其次,如果领导对这个过程不熟悉,就不要说,这个简单,那个简单;这个1天能搞定,那个半天就能做出来;对下属不了解的领域,你安排他去做,你要么给他相对多的时间,要么给他有价值的资料和建议,而不是简单,半天你能搞定这些不负责的话,补充一句,一个项目的技术负责人,他对项目的技术点都具有攻关或提供有价值的思路,否则这个技术负责人不称职;一个公司的技术负责人,也是如此。
再次,领导可以不懂技术没关系,但一定不要不懂装懂,另外就是要懂得管理和领导团队,技术的发展方向。
对做技术的人,对技术牛人的崇拜,我想大家都是一样的,对装逼牛人的鄙视,我想大家也是一样的,只是有的人藏在心里,有的人比较直接。曾经与华为的人调试短信接口的时候,华为的人,我照样叼过。当时的问题是,有人反应短信发出了,好久之后,别人才收到短信的问题,短信网关是华为的,华为的人说是我们的问题,我找到相关的日志,发给他们,你们自己看吧,你们如果看不懂,就找你们研发的看,他们是负责现场维护的。我最看不贯的就是那种,不懂还装逼的人,你装逼就算了,还喜欢指手画脚别人。另外还有一句就是,如果真是我的问题,而你有说对了,不管你是谁,被你叼,那我也是心服口服的,这个是绝对的。
一个公司,值不值得待。我想至少满足以下一个条件:有一个好领导;有一个好的氛围;可以在技术上得到积累和成长;有一个可以实现自身价值的平台.....似乎没有,所以,离开,也是好的开始,只是需要再次找工作。
在这个过程中,我能够想到自己做的不好,有2个地方,一个是上传的时候没有测试彻底;另外一个就是没跟他们一样加班到8点之后。至于多线程,我觉得没有服务程序支撑,没啥意思。
其实,有这么一句,物以类聚。什么样的人喜欢跟什么样的人在一起。这其实就涉及到另外一个职场话题了,如何与领导相处,如何与技术型领导相处?是对领导马首是瞻,还是对领导说出自己真实的想法?
希望各位大牛,多多指教。
转载请注明原创链接:http://blog.csdn.net/wujunokay/article/details/13090549