IT技术咨询公司是做什么的?
几乎每个成功的IT技术咨询公司,例如:
1.Infosys
2.Accenture
3.Avanade
4.Intride
5.Thoughtworks
都有自己的特点和擅长的领域,以thoughtworks(TW)为例,其业务模式是通过咨询帮助改善企业的IT组织,改进软件开发方法,以软件带动企业业务发展,主要业务可分为:技术咨询和定制化交付。其中定制化交付占了咨询公司收入的大头。
技术咨询
**IT组织优化: **通过敏捷和精益之类的项目和组织实践,提高组织的交付或者创新能力
**技术咨询: **通过系统自检、架构审查与指导、SOA策略为客户提供多方面的实用建议
**测试策略: **帮助客户重新审视和思考其测试策略,通过将测试完整地引入软件开发过程,帮助客户提高软件的质量、软件的可预见性和可靠性
**客户体验: **通过卓越技能驾驭各种常见的技术,帮助客户交付创新力及功能性并举的产品
定制化软件交付
一般是和客户一起完成一些定制化的软件项目交付。
在这类公司内工作,是一种怎样的体验?
主要有哪些工作(员工)分类?
由于这类公司一般都采用扁平化的管理,所以员工的职能更多的是一种在某个时间段内所处的角色。大部分员工都会在不同的角色间转换。
一般的角色设定通常是:
1.根据业务需求设定角色再找到符合这个角色的人选
2.因人设岗,因为个人意愿和资质,为了发挥其作用,专设此角色
对于以上的业务类型,自然的就会有这些角色,例如:
1.敏捷、精益咨询师
2.应用开发工程师
3.运维
4.项目经理
5.测试
6.HR
7.UX
不同工作需要怎样的背景和技能?
这些角色虽然和大部分软件公司差不多,但是TW的一个特点是这些角色并不固定对应某个人,有很多角色甚至没有专门的团队,只是因为你做了这个工作,所以你是这个角色, 比如:
项目经理一般只是团队中一些影响力比较大的同时来做这些工作
运维,在TW又叫做开发自运维,其实还是整个团队自己来运维自己的开发的项目
所以其实是尽量鼓励每一个人去掌握全栈的技术,对软件的整个生命周期负责。
1.全栈当然是每个人的理想,但是之所以在TW是现实可行的是因为:
2.每个人在一个项目上平均会持续有3~6个月时间,下一个项目可能完全是不同的领域
3.每个人的每份工作结对完成,无时无刻不在接受知识传递,你还要锻炼口才不停的说服你的pair
4.每对pair每2~3天换一次工作内容,上下文传递
工作中能接触到怎样的同事和客户?
一个词概括:五花八门。同事:有能拍电影当导演的,公司内有自己的乐队,有各行各业转行过来的,有在公司内搞八卦杂志的,有在公司自己酿酒的。每次新同事介绍,都有各种料去挖掘。虽然限定在IT领域,但是由于现在IT技术渗透范围之广,TW所面对的客户范围之广是我们自己都无法预知的。其中,地产、银行、保险和电信都是大客户。
整体过程中自身会有怎样的提高?
其实这种类型的咨询公司像极了理想中的一个创业孵化器:
- 平时都是一个个独立的项目为单位的团队和工作内容
- 聚集有想法的geek
- 喜欢hack各种奇思异想
- 喜欢挑战,不怕失败
交流的效率
交流的深度:
每天对于自己工作的任何想法和片段都得时时刻刻的去跟别人交流。因为pair,你会很自然的体会到,即使你觉得多么理所当然的事情,别人不一定会就这么想。你的所有自认为的奇思妙想必须先通过一个语言上得论证,说服别人才能最后体现在工作结果中。极大的避免了闭门造车和潜意识里说服别人的方式是提高嗓门而不是讲道理(想想成天高嗓门最后你肯定会学会别的说服方式)。
交流的广度:
由于项目的跨度大,而不同项目的同事就在隔壁桌子,甚至很可能很多别项目的同事就是你上个项目里一起工作过的。很难不在闲聊或者吃饭的时候聊起来别人在忙什么,往往是分别几周,你已经听不懂别人新研究的高大上的东西了。好奇心和显摆心驱使,很多人会要求分享或者分享。由于大家都是比较熟识的同事,所以提问,反馈都可以比较直接。其实知识工作者的生产率大部分时候,不在于工作时间长短,而在于知识获取和积累的效率。在有条件的时候,当面交流还是最有效的知识获取来源。关于交流最直接的体现就是不定期举办的hackday和各种业余项目了。当各种天马行空得想法被提出来,甚至连提出者自己都不知道是不是一个现实的想法的时候,最幸福的事情莫过于总有人出来说:我知道。而这个人还是非常熟悉的同事。
在最近的一次慈善主题的hackday上,在2天时间里面就完成了一些包括硬件、手机app、微电影宣传片、NGO组织接洽的项目。
在我们业余发起的酿酒活动中,很容易的就凑齐从机械制图、开源软硬件、云技术、到酿造专家全套的人才。
以上酿酒设备使用的技术栈有:
- Raspberry pi
- Arduino
- C++
- ruby
- docker
- AWS kinesis
- Logstash
- Elasticsearch
- Kibana
所以在一个足够多元的团队里,由于有足够的差异化,使得交流的本质:能够交换得到的信息非常多。因此集众智总是可以完成一些预期之外的事情。
对失败的态度
在上一家公司的时候,大部分项目是以进度来管理的,而进度又关系到考核。考核又可能致使个人绩效差异非常大。每一层级都有很大的进度压力,所以如果进度不好,没有人会有空人会问你为什么。最终大部分人在接受一个任务的时候并评估的时候,总会逐渐趋于保守而选择有更大的确定性的工作。在TW可以想象每几个月换一个项目,很大的可能是个完全不同的技术栈甚至领域,有时候甚至犹如换行一样的状况,会使一个保守的人多么的诚惶诚恐。
然而TW大部分业务模式是卖人力时间的,项目又都是客户的。大部分客户都是各自领域的先行者,足够成熟去对看待创新过程,以个人角度来讲,没理由有人会喜欢重复做已经非常熟悉的内容。
虽然开始的时候,猛然去接受一个挑战,都会心有忐忑,担心失败。但是任何难事,只要是有心思和时间的积累,总会逐渐有更深刻的认识。在相对宽松的环境下,担心会逐渐被掌握新知的喜悦和攻克难题带来的信心所替代。
TW的业务模式也形成了,在公司内部更值得/炫耀和分享的是知识而不仅仅是产品的成功。