[软件公司管理相关]软件公司怎样确定技术路线?

2013-07-10 11:09:27      访问:

【内容导读】 创业公司的技术路线并非是技术问题,而是一些管理问题,选择不同的技术路线会有很大的差别,技术路线不会决定创业公司的成败,济南软件公司提出有效的管理方式结合适合的技术路线才是真正成功的核心。
创业公司的技术路线选择并不是一个技术问题。如果是一个纯粹的技术问题,那么很可能会一直争论不休,最后的结果就像某个笑话里面说的,某公司一直到倒闭技术路线还没统一。做为山东省内极专业的商业、企业软件提供商之一的济南软件公司为您建议。
    创业公司往往都面临着不同程度的资金和资源短缺,经不起反复修改技术路线带来的资源浪费,需要管理者或者技术带头人能够较早地确定一个适合的技术路线。因为技术路线决定了岗位如何设置、人员如何招聘、开发周期、开发模式等。而更多时候,人员招聘可能是最核心的问题。那么创业公司该如何选择技术路线呢?
给非技术出身创业者的建议
     以前做技术咨询时,经常会遇到一些非技术出身的创业者,他们往往对好的技术人员非常渴求。但对如何找到好的技术人员,如何吸引技术人员加入,他们却束手无策。
    对于非技术出身的创业者,尽量使用开源系统、现成的解决方案。虽然技术人员往往对Discuz!、UcHome甚至WordPress等现成的系统颇有微词,但对于没有技术背景的创业者,这些系统是最好的切入点。
    有些非常成功的团队,创始人完全不懂技术,但对产品、运营、营销非常在行,他们的网站全部采用开源系统,没有任何的改动,只是找了设计师对样式做了修改。网站的流量、用户满意度都非常不错。因为没有任何先行的开发,所以网站可以很快正式上线,而且大多数程序的开源系统,也都有较强的自定义能力,仔细琢磨下就可以玩出很多花样。
    这样的团队往往没有技术人员,或者只有一两个很初级的技术人员,因此,在网站成功发展后,往往会遇到一些技术瓶颈:例如在流量猛增后,技术人员不知道如何化解;产品发展了,开源软件的基础扩展能力不能满足需求以后,需要二次开发或者需要重新开发时,现有技术人员的能力无法跟上。
这时就需要考虑引入一个好的技术带头人,建立自己的技术路线。通常也会有一番波折,但这也是种甜蜜的烦恼,因为不发展到一定程度,根本不需要考虑。发展到这样的程度,公司的现金储备和知名度都有了很大的提升,招人也就会容易一些。
给技术出身的创业者的建议
    首先,一切企业管理的出发点和归宿都是“人”。什么样的公司吸引什么样的人才,所找的人才又会影响公司企业文化的形成。技术路线的选择,一定要结合获取人才的难易和开发模式的组织情况来思考。
激进的技术路线
    很多人喜欢激进的技术路线,比如用Erlang、Go等语言做项目,而公司全部员工几乎都是初学者。又或者有人在iOS第一代SDK出现时就投身App Store。
    有时,有些功能或产品只有激进的技术路线才能解决,较早使用先进技术可以获得技术优势和壁垒,在一般网站都使用SQL Like语句做全文搜索时,如果你率先使用Lucene/Sphinx等开源搜索引擎,那么就会在性能和效果上有非常明显的优势。技术发展非常快,但普及非常慢。在2001年开发出Lucene第一个版本后不久,国内的技术人员就开始写文章和学习笔记介绍它,但到了2008年,国内很多中型网站的全文搜索仍在使用SQL Like语句,很多技术人员明知这样耗费服务器资源很严重,甚至会拖垮服务器,但也不会改用Lucene。
    有时,激进的技术路线可以帮助你在新兴市场占领先机。前两年苹果App Store刚刚出现,软件比较缺乏,所以只要产品质量尚可就可以获得很多用户,从而获得不菲的收入。现在开发者想做出被市场认可的产品非常难,而那些进入早的产品则可以靠早期积累下的用户稳定可靠地发展。
    激进的技术路线的另一个好处是,可以作为人才过滤器。如果公司使用的技术刚出现或者刚开始流行,那么愿意尝试甚至可以用好这种技术的人,往往是善于学习、不怕麻烦的。这是技术团队里面最喜欢的一种人。
    但激进的技术路线不是谁都可以玩得转的。如果想采用激进的技术路线,往往需要技术带头人是所选技术的专家,可以在技术方面辅导团队成员。同时不能让先进技术成为技术带头人的独门绝技,这样的团队是不健康的。
沉稳的技术路线
    对大多数公司来说,真正的竞争优势是产品和服务,而不是采用了什么样的先进技术平台。在这样的公司里面,技术团队的任务不是提供核心竞争力,而是给公司的业务部门提供坚实可靠的技术基础,那些不能带来产品和服务体验升级的技术亮点并不重要。
    对这样的团队来说,建议采用沉稳的技术路线。简单地说,就是采用技术带头人或者团队成员都熟悉的技术,一切从实用出发。
    首先,招人变得相对容易。到目前为止iOS程序员的价格仍旧是居高不下,且非常难以招到高质量的。与之相对,C#程序员、PHP程序员、Java程序员就相对便宜和好招多了。同时,可以选择的现成技术解决方案也多了,就PHP、.NET、Java等语言来说,开源的论坛、CMS系统都非常多。
    对语言和平台来说,技术越来越不重要,更重要的是社区和支持。技术人员应该改变思路,不管什么语言和平台,在合适的人手里面都可以释放出巨大的力量。
    以Java为例,之前是一门新兴语言,存在的最大问题是各种第三方库的匮乏。但这些年发展下来,以Apache基金会、IBM等为代表的机构,积累了大量的开源库,如Lucene家族等。
    再以PHP为例,PHP早期就是以快速开发、简单易用而闻名的,在大规模计算和性能上并不占有优势,特别是脚本的运行方式带来了一些对象生命周期以及性能的问题。但作为PHP用户社区的成员,LiveJournal创造了Memcache解决了缓存生命周期,Facebook创建了HipHop for PHP大大提高了性能。
所以我们不仅可以在理论上说,没有坏的平台,只有坏的架构师,也可以从实践上说,现在几乎每个主流开发平台,都有一些世界级的优秀网站背书。而且在互联网时代,其他公司的经验很容易借鉴。
    因此,采用技术带头人或者团队成员都熟悉的技术路线,积极了解社区动态,大多数公司就可以应对技术上面遇到的问题。对于乐于学习的团队而言,现在是最好的时代。做为济南软件公司也是以创业公司的角度来建议,软件公司部仅单靠技术路线还要有好的管理和方向。