写在工作满两年的日子

时光荏苒,自去年4月8号算起,来魔都已经一年了,也恰好是我工作刚满两年的日子,感谢这两年工作生活让我成长了不少。

初学乍练的第一年

想起大学即将毕业的日子里,我独自在西安四处奔波找工作,由于经验几乎为0,来来回回面试了 6,7 家公司,最终选择了一家外资软件外包公司。在当时看来,能找到一份这样的工作已经不错了,而且公司的各项福利也不算差,年度体检、团队旅游、生日 Party 、项目聚餐等等都很不错。刚进公司,由于没什么项目经验,一个叫 Bruce 的同事先让我负责给一个 Web 应用套个壳,然后上架 AppStore,虽然项目非常简单(有个做 Android 开发的同事说两小时就可以做好,我却做了整整一个星期😭),但是通过这个项目的锻炼,我对整个应用的开发到发布流程,代码规范,应用上架流程都有了比较清楚的了解。做完后我和另一位同事一起去神州数码做了一个月的驻场开发,负责一个智慧社区的项目 Demo 开发,这位同事对我的帮助非常大,人也很 nice,从他身上我学到了不少东西,之后我们一起又负责了另外两个新的项目,合作也非常愉快。

然而,外包公司毕竟是外包公司,一个项目做完马上会接着做另一个项目,公司是不会给员工留下时间去学习钻研新技术的,通常一个项目还没做完或者快做完的时候,新项目合同已经签下来了,接下来就是抽空开会排计划,确定 deadline 和里程碑。在我看来,作为一家软件外包公司,这样的做法确实符合公司的利益,毕竟公司的盈利来源就是软件外包业务,工程师们闲下来一天,公司就少赚一天钱,完全是在靠人力成本竞争进行盈利,与我所想象中的科技公司差距比较大。在做完这大大小小四个项目之后,我也确实觉得自己不能这样下去了,这样下去只会成为一个名副其实的 “码农”。

作为一个有追求的工程师,我其实是很反对被成为 “码农” 的,“码农” 其实只是程序员的自嘲罢了。在很多时候会被认为是从事低端工作,只会 copy 的程序员。在这家外包公司里,我实实在在感受到了 “码农” 的悲哀,自己就像流水线上的工人一样,每天几乎从事着同样的工作,几乎没有太大的挑战。加入公司满一年之后,我觉得自己的实力很难再得到提升,所以和好友相约去魔都发展。

登堂入室的第二年

幸亏有个室友在魔都工作,初到魔都才没有想象中那么艰难,他提前帮我们找好房子,我们来了就直接从火车站到住处安顿下来,之后就开始了投简历找工作。魔都确实机会比较多,我投了两三天的简历,收到七八个面试通知,拿到两个 offer ,最终选择了创业公司宅米。记得当初在拉勾上投简历的时候,由于我的一些原因,我的简历不够细致完善,导致在第一次给宅米投简历的时候被拒掉,而好友的投的简历则收到了面试邀请,因为我对这家公司的第一印象非常好,所以我就重新修改了简历再次投递,果不然当晚就收到了 CEO 孙高峰打来的面试电话,记得当时高峰的语速非常快,我还认为这是哪家公司的 HR 呢 ,后来才知道是 CEO 亲自打的电话。

由于公司位于闵行区紫竹科技园,而我住的地方在宝山,每天来回路上就得花费将近3个小时,时间成本太高,所以我和好友就一起搬到了公司提供的宿舍。来魔都的第一印象是非常干净,不管是空气还是路面都干净的让人心情愉悦。特别是交大闵行校区那边,虽然比较偏僻,公司招人比较困难,但绿化覆盖率超高,水也比较多,空气简直不能再好了。

刚到公司面完试,公司便希望我们尽快搬过去,因为需求比较紧急,我记得我是周六去面试的,第二天就来上班了。在闵行的那段时间里,我们经常是中午11点爬起来去上班,凌晨1,2点回到寝室,每周只休息一天,但是那时候也不觉得累,看着自己亲手从零开始做的项目,从最初的 1.0.0 版上线到一步一步迭代到现在的 3.2.0 ,心里非常开心。

公司的发展非常快,产品变化的也比较频繁,对于移动端来说,改UI,改需求是家常便饭,甚至有时候辛辛苦苦花费几周做出来的东西,上线仅仅几天下版的需求就又改掉了。另外公司的管理比较自由,除了做完产品的需求外,能有很多空余时间自己安排学习,我自己的兴趣也比较广泛:

  • 学会使用 Markdown 写作,开始了尝试使用各种 Markdown 工具的大坑,比如 Sublime 插件、Atom、Mou、Typora、MWeb、Ulysses等等,最终选择了 MWeb
  • 用 VPS 搭了 shadowsocks 和 Ghost 博客;
  • 给博客安了个域名:slarker.me 😄;
  • 觉得 VPS 利用率太低,把博客又折腾到 github page 😓;
  • 刷路由器(如意云Y1,newifi mini,小米路由器 mini,网件 R6300V2),刷安卓手机(Nexus 6);
  • 折腾各种 iOS、Mac 软件;

使用以下工具来提高生活和工作效率:

  • 接口测试:Postman、Charles、Replica(iOS);
  • 写作工具:MWeb、Typora、Day One、Quiver;
  • 代码编辑:Atom、Sublime Text 3;
  • 开发工具:Xcode、Reveal、Dash、VisualDiffer、
  • 计划安排:Google Calendar、奇妙清单、Google Keep;
  • 文件同步:Dropbox、Google Photo、Google Drive;
  • 稍后阅读:Pocket、Instapaper;
  • 科学上网:Surge、GoagentX;

最近看到篇文章说,iOS 开发者没有以前那么好找工作了,我觉得唯一能保持不被淘汰的办法是让自己变得具有不可替代性,更深入的学习 Objective-C 和 swift,或者学习 Android,这样无论市场是否饱和,到哪都能如鱼得水。