最初寻找编程工作的时候,我并没有意识到在一家非软件公司的IT部门工作和在一家软件公司的研发或者产品开发部门工作有什么不同。
对于我来说,都是工作而已。我会看看公司的口碑,使用的技术或者额外津贴,试着权衡一下会不会有很多机会。事实上,这两种工作截然不同,人们很可能会在其中的某一个快乐并更成功。
IT部门的编程工作
在IT部门的屋檐下工作,你的职责便是公司的内部网络、其他部门使用的应用程序还有公司网站和应用程序。这听起来可能平淡无奇,但在某些层面上来说,这些工作都是极具挑战。你可能会遇到比在一家小型软件公司更大的挑战。其实,这取决于公司的不同态度(自己开发还是外部购买),你可能会有机会来做更多不同的项目。
别人会把你们看成是一个“消费”部门——也就是说你们不为公司赚钱,只是“消费”。这样,工作的重点总是会转移到如何节约开支。用来衡量成功与否的标准就是你节约了多少钱(相比体力劳动或购买现成的解决方案等)。偶尔,你可能有机会帮助公司赚钱,比如建立一个电子商务网站。
当评定工资和额外津贴的时候,负责预算的人可能没有编程背景,他会尽可能把预算压低。同时,他们很可能会把人看成可替换的资源。
研发部门的编程工作
最初,如果在研发部或产品部工作,团队似乎更加振奋。因为你们正在开发的产品就是公司的支柱。如果你选择一家生产优秀产品的公司,一切会更好。但是另一方面,当你在一家已有成熟产品的公司工作时,他们通常已经开发了产品,并正处于维护阶段。即使他们开发新的产品和功能,那可能也只是大多数老员工的事情。一开始,你也只能是修正Bug,做做技术支持……也许会很长时间。
人们会把你看成是公司的支柱。如果承诺你的效率会更高,产品质量会更高,并且最终带来更多的销量和收入的话,那么你要求更高的薪水、奖金,或者额外津贴就会更容易。
部门主管(可能整个公司主管)通常都有一些编程背景。所以,这就很容易和主管们沟通和解释采用最佳实践方法、雇佣最好的人才和灵活开发环境的好处。
你已经工作在IT部门或者是产品开发团队了吗?你的经历和我的描述是否相符?相比之下,你更喜欢哪个呢?