终于在5月来临前结束了上一份工作。回望过去,刚好满一年。

一年前,眼前一切都安好了,想再次投入到软件公司去做开发。面试多间以后,最后选择了本地数一数二的,而且声称做Java的公司。现在想来,进去也太过于轻松了。

首先是HR招人会有奖金,其次是公司的经营方式--可以理解为人力外包。就是找一些会写代码的程序员,拉到客户那边帮客户做开发。公司赚取客户报价与员工工资之间的差价。这种开发模式,除非客户那边有比较强的技术,并且只需要增加临时的开发人员来完成项目,否则对客户是非常不利的。最简单一点是项目开发过后,就找不到人去维护。实际项目中,也有出现某些代码想修正或者升级,问谁,谁都不知道。

基于这种经营方式,就会导致人员流动性很大。当然,公司只要从客户那边拿到钱,就不用管人员的问题了。更厉害的是,开发工具采用了图形化开发。就是像配置工作流一样去配置业务逻辑。简单直观,开发快,而且不公开技术实现。新人立马就能上手,就算离职也不会学到真正的技术。

这样来看,一个声称是做技术的公司,其实就没有什么核心技术了。进去工作的程序员,也得不到太多的提升。再加上利用晚上不算工资、没有补贴的加班来压缩成本,人就会越做越累。正如某领导所说的,能留下来的都是精英。我的理解,他们都是心态非常好,抗压能力超强的精英。

当然,老板和领导们都应该看到这些问题了(或者看到其它方面),于是踏上了产品研发的道路。我一进去就是投入到新产品的研发,一做就是大半年。然后我们拿着这个半成品,就去给客户做项目开发了。

现在看来,该产品也一样空洞。主要的原因还是缺乏一个技术总监去主导、把控和验收。最后随着产品开发的结束,开发人员的离去(调去其它项目或者离职),产品未能达到预期效果。最TMD的是,有一些东拼西凑的模块,隐含重大问题。例如在Windows上部署Weblogic来运行,核心Jar包会报包名与类名冲突的问题。这样连部署到客户的服务器都成为难题。

啰嗦了一堆问题后,还是总结一下收获吧。

重新投入到软件开发的环境中,感觉还是很好的。一个开发团队里,有问题可以大家一起讨论解决。下班后还能天马行空地讨论各种各样的问题。

不得不说的是,技术老大传授了一些不错的经验。

对于技术的选择,要用自己熟悉的,而不是选择那些吹嘘有多强的新方案。自己熟悉的,遇到问题都好解决。而且成熟稳定的方案会少很多问题,就算有问题,解决方法也比新方案容易找到。

要通过增强代码可复用性来提高开发效率,而不是复制修改代码。其实这个程序员都明白的,但是在开发过程中总是没有做到。

针对问题去解决问题。就是根据问题的提示去找原因,然后解决。

面试的时候,要把话题带到自己熟悉的领域,说出面试官不懂的、不敢反驳的话题。

展望未来,将有更多需要努力和学习的地方。Come on, go ahead!

标签: none

添加新评论