写一些开发小片段,作为一段经历的记录吧。
曾经在一家外企体验过开发。
刚进去的时候就是各种培训,然后进入工作岗位。早有耳闻新人会被分到一些核对数据的任务,前辈们都说这个任务很枯燥。果不其然,不到一个月我就收到几张大excel表格,让检查其他表格和正式表格的数据是不是一样的,看着那些表格,顿时感觉一周都看不完。突然想到excel不是可以编程么,何不让程序帮我检查?于是在后台写了vba程序,数据检查瞬间完成。后来,我把这个检查数据的功能做成了界面,大家都可以用,省了不少人力。
不久来了一个项目,我们用的F公司的设备升级了,之前的通信方式也需要重新做。这部分是JAVA的,当时我正看《Java编程思想》这本书,有段话突然注意到了,就是java的RMI机制是不依赖于平台的,那是不是可以拿来用呢。当然我不能直接把公司的代码改成RMI,只是应该去模拟这个思想。为了更好地改进这个通信机制,我把这块业务的代码通读了一遍,晚上回家以后会写一些小的测试代码来思考。这个问题解决以后,又面临着传送图像和文本的问题,当时想把图像转成byte传送,但是它不是普通的RGB图像,而是F公司自己封装的图像格式,怎么才能把它转成byte呢。正巧在代码中看到一段调用了F公司图像转byte接口的代码,直接拿来用,这个问题被成功解决掉了,作为新人的我很有成就感。这之后领导就很放心地把一些项目给我了。
另外很感谢当时的部门领导,他对还是新人的我说不要有任何压力,也不会给我设什么截止日期,只管安心做。有了领导这番话,没有了压力的困扰,反而效率很高,可能领导看出我是比较自律的人,不需要施压吧。
有段时间我们突然收到已经上线的系统的问题,本来邮件系统会把一些事项发给指定的人,但是指定外的一些人也收到了邮件,并且最近没有再复现过!从输出的log来看,只有XX开头编号的几个邮件发给了指定外的人,到手的信息就这么多。
不能复现阻碍了一部分的调查方法,不能像复现那样直接调查问题的出处。我找到了输出编号的那段代码,进而查出邮件发送的相关代码,理出两条线,一条是发送线,一条是监视线。在查看代码的时候我发现有个参数设置的不对,但它有没有影响还不知道。于是我假设参数不对的时候在两条线中会出现什么问题,当时已经晚上9点多了,我走在公司楼下一直在思考邮件如果是批量发送的,会在什么时刻发送,为什么是XX编号之后的文件会发错。突然灵光一现,找到了它们之间的关系,马上上楼拿出纸笔开始画,倒着推,终于推出了出现这种问题的条件。找到测试部门,在测试机上再现了这种问题。抬头看天空,很亮的月亮,心情顿时舒畅了许多,也很感谢领导和周围同事们的信任。
还做了一个从零开始设计的文件同步系统,在各服务器间同步文件,就不需要担心某台服务器上传失败的时候文件不同步了。为什么这个同步系统很重要呢,因为这些服务器是在不同地方的,文件不一致会导致不同地方的人收到的信息不同步,有时候会误事。我把设计文件向上级汇报,又向客户说明了它的可行性和稳定性,得到认可和预算后开始着手做。期间也遇到了不少问题,几乎没有休息日,最后当我亲自展示这个系统的运行效果时,得到了大家的一致认可,这也是开发者最开心的事了吧。
后来公司慢慢让我带一些小团队,忙碌且充实。还送去了海外研修,开阔了视野,学会了很多东西。
要说外企忙不忙,也忙,但是时间节点不会卡得那么紧,常通宵的那种。
现在已经不在外企了,但它也算是一段历程吧。