• 一个玩游戏的失足青年,转行做软件开发的挣扎过程(2)


    相亲脱单记

    话说之前被父母迫切去相亲,前两次都失败告终,我一是确实没放在心上。后面一次相亲,记得还是中秋节,我穿的西装笔挺的很不自在,不过有双方家长还有亲友们在,还是希望给大家留点好的印象。

    第二天周未,我还是硬着头皮,礼节性的约上女方(也就是我现在的老婆)出去玩,可我真不知道有什么好玩的。不过我老婆真的不错,带我去城里看招聘的,有没有合适我的工作机会...,说真的被感动了,除了父母还第一次有人这么关心我和我的工作。不过整个大半天下来,过程还是非常尴尬,不知道聊些什么好。

    记得当时电影院正在上影《山楂树之恋》我成功约了她,没想到结局是一个悲剧,大家都有些伤感!晚上我送她回家后,我们在手机上的发短信聊起电影中的话题,总算是有话可以说了!

    file

    过后几天是一个周未,就是去她家双方父母、亲友见面了。当时真的是吓我一跳,除了当时她们村里的亲戚、邻里,还有从各县、市召集回来的长辈、表哥、表姐....都很好奇来看我这个新姑爷,中午吃饭坐了有七八桌人,这个压力真是不一般的大呀!

    在老家休息了近个月时间里,白天在家学习,下午5点左右就出门,骑着一个破电瓶车去接女朋友下班。在此期间我也没有闲着,学了点 iOS 开发,由于没有苹果电脑,之前安装黑苹果断断继继搞了 1年才把 XCode 给运行起来,又在 Linux 上自学了 Qt C++,想看看 Windows 以外的世界。

    加速成长

    在家的日了一天天过去,口袋里的 Money 也一天天减少。11月我决定重上成都,一边学习一边找C++、网络方面的工作,后来我进入了“科来”。

    科来是一家做网络协议分析的公司,这算是我见过的管理最好的公司,需求、开发、测试都有规范的流程。

    最早到公司的前三个多星期都是在学习。一是公司的副总给刚入职员工讲公司的历史、业务方向、做事的指导原则等;其次是公司的一名产品需求经理,给大家讲《科来软件分析系统》这个工具的基本使用,讲解TCP 四层协议模型。

    file

    在这三周的时间里,除了学习还是学习,没有硬性的工作任务。刚开始一周还好,组织大家开会学习,后来就是自学了,我当时将《TCP/IP详解(卷一)》结合“科来软件分析系统”这个网络分析工具,很快就上手了,第一次读懂了这本讲网络的经典书籍!

    file

    公司内部的学习氛围也很好,当时唯一就觉得用的技术太古板了点,主要用 VC++ MFC 加 一个皮肤控件三方库,做网络数据包分析。我当时在科来,最引以为豪的是,独自完成了一个 TCP 流分析的功能:

    file

    file

    file

    由于之前我的 VC++ 项目经验中大量使用 STL 以及 Boost 库中的 boost::function、boost::bind 等刚开始非常不习惯,还好后来 VC++ 升级逐步引入C++ 11的 std::function、std::bind、std::shared_ptr... 内容,我也在向公司领导推介 boost 库,不过当时没有被同意。

    可能是我 TCP 流分析做的还不错,我又接到几个定制任务,记得当时有什么“XXX电信网页选号业务分析”、“定时自动分析”、“木马病毒特征分析”、“Email邮件内容分析”等活安排给我做。

    这里不要被“木马病毒特征分析”吓唬到,其实就是找两台电脑,让一台中感染木马病毒,另一台做远程控制,相当于服务器与客户端。将木马产生的TCP流、数据包保存下来分析,找出比如远程桌面、获取文件列表、删除文件等数据包,并通过端口号、数据包长度、TCP特征位、传输内容等,将某个或某几个数据包定义为某种木马病毒,并进行报警、发邮件等。

    当然不能分析一个木马病毒就改一次代码,为了可扩展,还需要编写了一套特征编辑工具,可以让用户自己定义木马病毒的特征。现在也可以通过数据包,识别应用了,看下图:

    file

    团队合作

    进入科来差不多有一年了,那时我已经结婚,女儿也有半岁了。

    记得那时女儿是第一次感冒发烧住院,老婆全天在医院守护,我是晚上下了班去医院,还好是夏天,同时病房还有空位,这几天我们就完全住在医院里了。

    在医院晚上睡不着,我就在手机上,看一个博客写的 Qt C++ 的教程,写的真的很好,经理不知不觉就看到半夜2、3点。虽然之前我自学过一点Qt,但一直没实践过,我晚上在医院看书,白天上班有空闲时间,我就尝试着实验一下。

    file

    终于有个机会来了,公司安排我做为项目组长带人开发两个小型的网络分析项目。当时我极力推荐使用 Qt C++ 来做被同意了,那时我学习热情高涨除了Qt技术以外,之前还研究过设计模式,语言从C#到Java到Qt,以及敏捷开发的一些实践。

    我带着两名刚毕业不久的同事一起尝试结对编程、测试驱动,使用Qt的插件框架...,还在公司内部组织过几次技术学习,那时开始对技术分享有了兴趣,记得年终时获得了程序组唯一的一名优秀员工,除了Money、iPad外,现在保留的还有一座奖杯了!

    file

    一年时间里,连续用 Qt C++ 开发了两个项目,不过当年还是有游戏开发的梦,在业余时间尝试了 iPhone 下的 Cocos Object-C 以及之后的跨平台的 Cocos2d-x c++ 心里痒痒的。当时有个朋友愿意出资做游戏,自己也有些自我膨胀,组了一个团队,一招呼我就跑去做手机游戏了。

    file

    我的感悟

    在做科来的产品时,带了几个刚毕业的学生做项目。开始考虑如何提高开发效率、如何建设团队提高战斗力、组织成员学习设计模式、敏捷开发、一起结对编程,为他人提供工具库,以及向公司推荐我的技术方案,而不仅限于个人的编码,对我来说这是又一次能力大幅提升。不过后来也有些自我感觉过于良好,放弃了科来这个好的发展环境。

    现在的科来在国内网络安全分析领域,已经是数一数二的,现在仅研发团队超过了200人。以前的老同事,都各自带团队早已脱离一线的编码工作,在一个好的环境,认真工作也能够有很好的成就。

    这次的故事就讲到这里,后面是我将转入手机游戏开发行业,挣扎才算是正式开始!

  • 相关阅读:
    微软外服 AlI In One
    js 循环多次和循环一次的时间的性能对比 All In One
    vue inject All In One
    Excel 表格数据倒置 All In One
    SVG tickets All In One
    OH MY ZSH All In One
    js array for loop performance compare All In One
    mac terminal show You have new mail All In one
    新闻视频 26 制作母版页
    转自牛腩 母版页和相对路径
  • 原文地址:https://www.cnblogs.com/creator-star/p/11770153.html
Copyright © 2020-2023  润新知