去大公司的各种考虑

我在过去的10年里面,待过一家大公司(百度),一家成功创业的公司(友盟)和一家正在创业的公司(castbox)。现在我有点想回大公司,部分原因是觉得在小公司如果发展出现瓶颈业务增长乏力的时候,则没有办法持续地锻炼和提高自己的技术水平。

想去大公司的期待是,可以在比较通用的技术上(搜索,广告,数据库内核,AI)结合业务,不断地锻炼和提高自己的技术水平,期待在某个方面上成为技术专家。当然我理解的技术专家,并不是只能写某一方面的代码,大部分时间浪费在开会这种事情上,而是可以做一线的实践者。当然工资方面肯定要有妥协的,我这方面是有心理准备的。

上周五和shuber聊了一下他在头条NLP组做的事情,以及在那里的问题,让我想起了大公司的一些通病。我打算这几天在重读一下之前收集过的文章,列举一下在大公司可能遇到的问题,这样心理准备会更加充分些。

去大公司很大程度上是选择好的团队。除了好的团队之外,公司本身也有一些特点是吸引人的:

  1. 名声。如果从这个公司撤了,那么这段经历是否有Value. 比如Google,微软等这些外企。
  2. 薪资水平。这个反应了公司对人才的重视程度。
  3. 管理制度。是否真的是work-life balance, 以及请假和休假安排等。我相信这方面G,微软可能是不错的。

除去这些公司common personality之外,接着就需要考虑团队了:

  1. 业务发展水平以及在行业排名。比如百度的搜索,头条的推荐系统,阿里的广告系统等等。
  2. 团队内部是否有几个牛人,这些牛人你是愿意向他们学习的,比如头条的杨震原。
  3. 选择可以持续钻研的业务和技术。
  4. 团队建设和氛围。比如大家是否乐于分享,是否平时可以在一起活动什么的。
  5. 上面一点也关系到manager的水平,如果manager水平你不太认同的话,那么事情也不太好。

这里顺便粘贴一下大师(nullgate)

工作经验真的很重要

  1. 尤其是经历过足够多的失败
  2. 三年、五年、八年真的是门槛
  3. 选择合适的公司和领导是非常重要的

是不是一定要做管理的问题

  1. 在很多公司,尤其是管理混乱的公司,你必须做管理才能涨薪水
  2. 一个公司渣的表现,就在于将干活最利索的人都提拔为主管或经理
  3. 但是一个公司更渣的表现,就在于技术总监甚至 CTO 在一线刻苦工作
  4. 如果你不能理解其他的工程师,就不可能做好管理
  5. 在很多外企做 principal 工程师薪水比在小破公司做 director 收入高

纯技术路线的问题

  1. 研究屠龙之技的问题在于只有很少的公司可以去
  2. 只有很少的公司只用 java,或者 c++ 或者 javascript
  3. 如果你想做 Architect/CTO 必须要懂很多不同的异构系统(不是语言)
  4. 有很多技术公司的 CTO 实际上是 COO,要去讲故事拉投资什么的
  5. 不懂产品和商业模式的技术专家只有大公司才能供养