zoukankan      html  css  js  c++  java
  • 回忆一 去年6月面试进入公司的日子

    2007年6月,我投了一份简历到后来一直工作的公司应聘,做对日软件外包业务的,不过有翻译,对日语要求不高。

    我投递了简历的第二天被通知面试。还好,因为技术考题偏于数据结构和算法,而不是实际项目经验,我答了满分。

    然后做了上机题 --- 实现一个购物车,没有需求描述,没有任何资料,就是购物车。ok, 我明白了,这个东西要是

    做大了恐怕做几天都做不完,做小了马上就搞定。就做了个小的,搞定了。然后公司通知下次董事长从日本回来面试,

    第一轮考试通过了。

    过了好几天,有一天接到通知,董事长回来了,让我去谈谈。我去的时候的确没想到董事长是程序员出生的,虽然

    不懂.net技术,是c/c++牛人。进了会议室,董事长魁梧的身材,首先是英语跟我交流一阵子,我够呛,口语不行啊,

    还好,他说的简单的,我能应付一阵子;过一回又换成日语,我刚刚培训了半年,还是初级的,就是关于个人简介方面

    的,我勉强说的出来。然后董事长就开始考技术了,一开始一些c/c++方面的东西我完全能应付。后来来了个刁钻的,

    怎么用c语言进行面向对象的程序设计,我是老实人,马上就说以前从未考虑过(当然后来也没有去考虑,不知道这个问题

    有没有答案)。最后,董事长对我说,给你一台386的机器,dos系统,给我实现一个www浏览器出来,在白板上说明如

    何做。我当时脑子一热 --- 以前也没有想过阿!!! 但是随即镇定下来,在白板上开始架构这个系统,最终董事长满意。

    出了会议室,我长吸一口气,乖乖,总算完事了。

    ok,董事长把dotnet组的项目经理带来和我认识一下,我还很高兴啊!!!

    结果董事长说,项目组有个问题现在解决不了,让我看看。啊!!! 我心里一惊,这下可就麻烦了。快6点了,要下班了。

    不知是什么问题,我先看看吧。再说以前的项目不是我搞得,解决不了问题也没啥。我就去了dotnet组的工作区。

    ok,测试人员和开发人员给我说,现在的一个web应用,已经在日本客户那边上线了,但是用LoadRunner进行50个

    并发的测试,cpu利用率100%。我们在本地测试,还是双核心的cpu,两个核都被耗尽了。 我看着开发人员的屏幕,

    dot2005的开发环境我熟悉,其它的我都不熟悉。我熟悉了一下应用的大致架构,ok,也没法熟悉,代码基本上是没什

    么组织,也没有整体的良好架构。到处是过来过去的调用,一团乱麻。当然,后来才听说一部分代码是2个学校的女研究

    生实习,写了很多代码,在我去之前突然离职,她们没有合同,当然也不用办什么手续,只是不辞而别。我想,那就这

    样呗。等我上班了慢慢解决吧。可是我看到其它项目组都下班走人了,就这个项目组没走人,还有董事长刚从日本过来,

    就坐在旁边不走了。我想,这下完了,不解决不行了。董事长说:“这个项目已经延期了,日方要求必须把cpu耗尽的

    问题解决了,我已经2晚上没睡着了”。我一听,脑子又一热,怎么会碰上这种事,我面试的那天就已经要上班了。。。,

    而且我对这个项目一点都不了解阿!!!万一搞不出来,不用说了,有什么后果大家可以帮我想到。谁都不希望给公司领导

    一个自己的无能的印象。

    没法,上去碰运气吧。这个时候我才坐到了板凳上,开始一个一个分析LoadRunner请求的页面,从页面上的代码里面

    一个一个地往深处找。碰运气吧。项目做了几个月,快结束了,代码也不是我一两天能搞明白的。不过越看,越让你不想看。

    代码不仅是乱麻一团,而且,那些实习生把很多代码写入了.aspx文件。采用以前asp的做法。叫人痛苦不堪,真想放弃阿!!!

    但是不能放弃,过了20分钟左右,我终于找到一个页面上GridView控件的绑定事件,事件响应函数里面有个for循环。

    因为事件的绑定是放在.aspx页面上的,而不是在.cs里面采用 += 的形式,过了很长时间才找到。唉!!! 我可不想再给

    人整理这样的项目。

    好,页面上绑定了几十条记录,那么时间复杂度和这个绑定事件的for循环次数是一个乘积关系。我再找到for{}里面的

    一个工具函数,原来来自一个类。是处理关键字什么的, 进取后又是一个for循环。 然后时间复杂度就变成了一个三重

    for循环的效果。50个并发,服务器吃不消也是可以理解的。我叫开发人员把这个东西想办法重写,另外好几个页面都是

    如此的做法。开发人员重写后cpu利用率降到50%以下。董事长还不满意。我又在那里找阿找,找阿找。最后,到了晚上

    11点,cpu利用率降低到30%以下。董事长才露出笑容,让这个项目组下班。项目经理请大家吃饭。

    还好,我后来进了公司,除了给音乐栏目写了左边的二级菜单,制作了多国语言选择菜单,然后再也没有和这个项目

    打过交道。要是让我做好,我就需要重新开发,从公司角度,这是不可能的。后来只有维护人员的优化再优化。

    这个站点服务器在日本:  http://www.newsbbtv.com

    这是我的就职经历,拿出来与大家分享。不过希望以后不再遇到这种不平常的经历,让人高度紧张。
  • 相关阅读:
    .Net学习难点讨论系列2 – 细说C#中new关键字与多态
    [翻译]搜索关键字 – 管道与过滤器模式(PipesandFilters)与装饰模式(Decorator)之间的关系
    .Net学习难点讨论系列1 – 委托与事件之事件
    [翻译]Popfly系列课程1 Popfly课程计划概览
    常用桌面虚拟化软件横向对比
    各种算法的C#实现系列1 合并排序的原理及代码分析
    博客园安家
    疑:Microsoft® Silverlight™ Tools for Visual Studio 2008 SP1的版本让人困惑
    stream_socket_client
    stream_socket_client2
  • 原文地址:https://www.cnblogs.com/worldreason/p/1217403.html
Copyright © 2011-2022 走看看