从卓越工程角度看微软中国开发团队的成长
开发团队的成长离不开优秀的人才,简捷有效的流程和高效率工具这三个卓越工程系统中的重要因素。本文作者从这三个因素分析了微软中国开发团队是如何“从优秀到卓越”的。
- .NET,
作者 Ian Roughley译者 沙晓兰 发布于 2008年2月28日 上午5时39分
Steven Haines平时经常撰写关于Java新技术的文章在开发员工作中提供帮助,然而这个星期,他把注意力转到了帮助你 找到下一份工作的技术上来。
尽管美国可能并不处于技术方面的萧条,但至少处在股市大跌的阶段。股市从2008年年初就开始一直在下滑,公司收购率正不断得上 升。今年,Oracle已经收购了BEA,Sun收购了MySQL,在我写这份报告的时候,微软正试图收购雅虎。很多人在这些收购中存活下来,但必然有一 部分人没有顺利渡过难关。无论你所工作的是什么企业,也无论你的职务是多么得保险,关注目前企业招聘关注的技术仍然很有必要,或许有一天你不得不需要重新 寻找一份新工作。
另外也要指出的是,这里提供的信息并不完全。Steven说:
在开始前,我首先申明:我所作的研究不是科学研究,没有对所有的工作职务做调查,也没有通过联系招聘员来了解究竟什么是最稀缺的技术。我所做的,只是通过 Dice和Monster统计一些关键字和这些关键字被点击得次数。大部分结构来源于Dice,因为在Monster上,我没能找到Dice那样清楚地搜 索接口(Dice很不错的一点是它拥有一个"技术"参数,这对最后结果的归类很有帮助)。在Dice上搜索到超过8000个Java职位得结果,足以反映 当前的Java市场。并且,根据你所居住的地理位置,得到的结果可能会有所不同。
另外,本章并不是对未来趋势的报道,而是对目前职业所需技能的一个掠影。
我们将要呈现的结果主要是这几个方面:核心技术、应用服务器、web框架和持久化技术。除此以外,原文中还列出了其他一些更细更专的类别。
|
关键字/技术 |
点击数 |
|
J2EE |
7520 |
|
Java |
6389 |
|
JSP |
2228 |
|
Java/J2EE |
1733 |
|
EJB |
1271 |
|
JDBC |
1079 |
|
JMS |
926 |
|
Servlet |
409 |
|
J2ME |
146 |
第一类别-核心技术的统计表,只是给大家展现一下当前的主要形势。极大的可能是很多关键字/技术(尤其是Java/J2EE)出现很多职位的技术要求中。作者肯定了这个事实,同时指出:
如果仔细查看Java编程的相关范畴的话,你会发现Java企业应用和Web技术占据了大部分职位。10-15%的职位描述中提到了JMS,而仅仅2%左右的职位提到了J2ME。
|
关键字/技术 |
点击数 |
|
WebSphere |
2155 |
|
WebLogic |
1561 + 624 (BEA) |
|
Tomcat |
1587 |
|
JBoss |
882 |
|
Jetty |
22 |
|
Glassfish |
17 |
考虑到市场份额的下降,应用服务器方向的现状相应就不会太令人惊讶。WebSphere以超过25%的表现占据首位,紧接其后的 是WebLogic,略微不到25%(包括在使用搜索关键字“WebLogic”和“BEA”是的重复职位),然后是分别占20%的Tomcat和占 11%的JBoss。
在过去的几年中,由于Spring逐渐变得热门,结果有点让我吃惊。为了能够对未来趋势作出更好的分析,于是我寻求了http://www.indeed.com的 帮助,得到这鳌居首位的四个应用服务器的发展趋向图表。这让我得出这样的结论:尽管WebSphere和WebLogic目前还占据领先位置,但是他们的 受欢迎程度在不停的下降。同时,Tomcat和JBoss的普及率在逐渐上升,因此,学习这几个应用服务器技术在将来可能会给你带来更多的机会。
| websphere, weblogic, tomcat, jboss Job Trends | websphere jobs - weblogic jobs - tomcat jobs - jboss jobs |
作者也注意到了Tomcat占有率的上升,他提到:
对我来说,最有趣的可能是,在Dice上发布的Java职位中,几乎有20%同时在它们的职位描述中提到了Tomcat。这正说 明很多公司正在尽量躲避Java EE栈,而选择标准web技术(Servlets/JSP/JSF)或者其他可选的类似于Spring那样的框架。
为了肯定他的观察结果以及EJB应用服务器与servlet容器的趋势的比较结果,我将EJB和Spring发展趋势的比较也用图表来表示。正如大部分开发者可能期望的那样,Spring的使用率一直在上升。
|
关键字/技术 |
点击数 |
|
Struts |
1745 |
|
Spring MVC |
290 |
|
Velocity (and Java) |
133 |
|
Tapestry |
85 |
|
WebWork |
31 |
|
Grails (Groovy) |
18 |
|
Wicket |
14 |
|
Stripes (+ J2EE) |
8 |
|
Cocoon |
3 |
|
Turbine (and Java) |
0 |
|
RIFE |
0 |
关于什么是最好的Web框架这个问题可能是Java社区最沉重最受争议的话题:就像讨论政治或宗教问题那样。但是数据是不会说谎 的:很多人都说Struts已是一摊死灰,事实却不是这样的。Dice上所有关于Java的工作中,几乎有22%的工作在它们的职位描述中列出了 Struts,这几乎是其最有力的竞争者的六倍。如果你是做Java web开发的话,如果你想要得到最高的市场适应力能分的话,那么你最好还是了解一下Struts,尽管可能其它技术本身要来的更优秀或能够更好地解决你的 问题。
作者提出的论点是有道理的,但是,随着Struts2的发布,问题还在于公司是否会决定升级他们的Struts到2.0版本,或者说他们也可能会因 此决定这是他们转移到另外的Java Web框架或彻底替换使用另一个web框架的时机。当然,由于无数的应用程序早已采用该框架完成代码编写,因为市场对Struts开发人员的需求不会立即 下降。
从Indeed再次审视发展趋势(不包括Struts),从Indeed得到的结果和作者的表格似乎有一些微小的出入。各种框架的使用都呈上升趋势,Spring MVC显示了其重要的平滑上升的状态。
| spring mvc, tapestry, grails, wicket, stripes, velocity Job Trends | spring mvc jobs - tapestry jobs - grails jobs - wicket jobs - stripes jobs - velocity jobs |
|
关键字/技术 |
点击数 |
|
Hibernate |
1750 |
|
iBatis |
99 |
|
Toplink |
80 |
|
EJB3 |
37 |
这儿,Hibernate毫无意外地在持久化技术领域占强大的领先地位。图表显示的趋势(除了Hibernate以外的所有持久化技术,以及采用JPA代替EJB3)却让我们看到一些令人惊讶的结果。JPA不仅开始有能力和Hibernate一较高下(尽管Hibernate确实实现了JPA规格,因而造成两者有所重复),而且它在iBatis的使用中也呈稳定增长趋势。
总之,作者提出了几个非常好的观点:
在你开发你的企业应用时,你应该熟悉怎样在WebSphere、WebLogic、JBoss和Tomcat中部署和管理它们。 你可以不花费一分钱下载所有这些应用服务器(商业版本拥有开发许可,可以利用它们帮助你学习)。不要因为你知道怎样编写企业应用就以为所有的应用服务器都 一样。你也不想声称熟悉一样其实并不熟悉的应用服务器,然后在工作中痛苦地挣扎摸索其如何工作。那么,还是现在花一点时间先把它学会吧。
他也提到说:
对于技术,你的时间最好花在Struts、Spring、Hibernate、AJAX框架和JavaServer Faces的学习上。学习这些技术不是什么小事情,而需要做好合理的学习计划,挑选基本好书,然后使用每一项技术编写一个范例。简单来说,如果你可以把这 些技术添加到你的简历上,那么你找工作的时候应该不会有什么问题了。
查看原文:How To Survive in a Turbulent Job Market
开发团队的成长离不开优秀的人才,简捷有效的流程和高效率工具这三个卓越工程系统中的重要因素。本文作者从这三个因素分析了微软中国开发团队是如何“从优秀到卓越”的。
本文是Productive Java with Ruby系列文章的第一篇,我将从单元测试这个话题开始,让Java的开发人员能够在实际工作中利用Ruby提高工作效率。
InfoQ中文站有幸与阿里软件的首席架构师赵进在一起探讨了SaaS的相关话题,包括SOA和ASP与SaaS的异同、云计算、SaaS的前景、它的关键技术、技术瓶颈等等。
在这篇文章中,Adrien Louis和Marc Dutoo在一个典型的ESB场景中讨论了编配和路由的区别和优缺点。他们讨论了几种连接服务的方法,从使用如自定义路由这样的低级别方法,到使用如工作流和编配这样面向业务的高级别方式,并总结说不存在“一边倒”的解决方案。
本文是根据7月26日InfoQ中文站在杭州举行的QClub活动(第三期)后半程小组讨论总结而成。主要内容包括如何在SOA系统中实现服务编排,如何保证分布式系统中的一致性和可用性,以及如何在实施SOA的过程中控制接口的粒度等。
人们很容易想当然的以为虚拟化技术仅仅应用于服务器。而在现实中,虚拟化这一苏醒的概念正被运用于各个层面,其中包括网络,存储以及应用基础架构。在这篇导论中,InfoQ将深入每个方面,详尽向您描述虚拟化技术的运用以及其优点与不足。
在这篇案例研究中,InfoQ对Adobe AIR和Amazon的简单存储服务(Simple Storage Service ,S3)在NASDAQ市场回放程序(NASDAQ Market Replay)中的应用进行了详细的分析。
没有回复
回复