大公司与小公司的差异

大公司与小公司的差异

1.背景信息

我是一名普通的程序员,2015年毕业于广东海洋大学

我的工作历程生涯

  • 九天软件,2015年9月至2017年2月
  • 阿里巴巴-uc,2017年3月至今

恰逢进入阿里巴巴快两周年,谈谈自己对于大公司、小公司的理解吧

2.小公司

第一份工作,加入了一家创业公司,很幸运,我是除了公司创始人之外的第一个技术员工

公司的主营业务:提供集cti、crm、电商与一体的电销系统

在该公司的一年半时间里,系统从0到上线,经历过几次重大的波折

2.1.业务困境

  • 在前面的半年多时间里,我们花了很多系统去做crm系统,但是却遇到了一个致命的问题,我们用了普通crm的模式去开发电销crm系统
  • 公司内缺乏相关的业务人员,系统按照程序员假设的方向在演进
  • 接入第一个客户时,才发现系统与客户原先的旧系统差异性巨大(上线时间紧迫)

2.2.技术困境

  • 由于客户的数据规模在:200W左右,一些核心功能的查询性能底,无法满足实时性
  • 使用了一些第三方的技术,但是由于缺乏有效测试与架构能力,导致系统不稳定,比如redis,rabbit mq,mongo等
  • 数据迁移时间长,不能无缝升级系统,比如总是通宵上线系统
  • 服务部署选型失败,使用了window来作为服务器
  • mysql引擎选型失败,使用了myisam,导致事物失效
  • 缺乏有效的自动化部署工具,部署成本高
  • 缺乏有经验的大牛,走的弯路多

2.3.环境变化带来的困境

  • 大环境变化时,公司损失巨大,一些合作伙伴的资金无法回笼
  • 资金压力,使得我们不得不裁员
  • 人心不稳,大家恐惧公司解散

2.3.小公司的收获

在小公司中,由于活多枪少,很多事情都得一人去做

  • 比如我是一个java程序员,由于没有前端工程师,摇身一变,自己从0搭建了项目的前端开发框架
  • 缺乏产品,自己边开发,边做交互
  • 没有DBA,sql性能问题只能自己去研究,比如如果突破mysql在百W,千W数据规模下的查询

当有足够的实际场景的支撑,其实很多问题都变得不是问题,在解决问题的过程中,其实就是不断成长的过程。在九天这一年半时间里,是我第一份工作,但是很幸运,也是一份让我将大学所学的知识,都能够很好的在实践中得到足够的锻炼

2.4.小公司的困境

  • 技术突破慢
  • 工作背景差
  • 收入不稳定,离买房好远好远

3.大公司

在九天,在产品上线后,经过思考,我参加了阿里巴巴-uc部门的面试,经过一番面试后,很顺利的拿到了uc的offer

经过进两年时间的工作,浅谈下在uc工作的感受

3.1.技术成长

来到了新的团队后,发现技术差异性很大

  • 语言的丰富度(java,python,scala,php,react,angular,vue)
  • 数据规模更大
  • 更多的项目
  • 多人协助开发,运营、产品、研发、测试

3.2.丰富的基础组件

  • hsf
  • acl
  • aone
  • mail
  • 在线文档
  • ...

虽然只是使用集团的一些基础组件,但是能够大大丰富视野

3.3.更厉害的圈子

在小公司,由于资金有限,招聘的技术人员也是鱼龙混杂

比如在小公司时,感觉自己技术杠杠的,但是来到uc后,才发现几乎最弱的就是自己...

认识的同事越来越多后,感觉朋友圈变化非常明显

3.4.更完善的福利保障

这个不用多说,uc提供的服务,让我赞叹

  • 全额公积金,社保
  • 解决了广州户口问题
  • 一日三餐
  • 加班打车报销
  • ...

4.总结

两种规模的公司,都让我有了不同的收获

现在的我,已经能够从容的面对工作所带来的挑战

或许每个阶段,都会有不一样的认识与收获,好好努力吧,少年

你可能感兴趣的:(大公司与小公司的差异)