培养开发团队的“软实力”

Posted on Thu 24 December 2009 in it • Tagged with 研发管理, 职业规划

《程序员》10年1月期会有个关于开发者的五项软实力的策划,现在大家可以去参与调查(需要登录csdn)。

这个提法很不错,对开发者技术能力之外的隐性能力做了定性的分类,我们可以看看:

软实力即软技能,来之于英文单词“Soft Skill”。软件开发者在工作中都会采用一定的经验和方法,这些经验和方法的运用,体现了开发者的实力。相对于硬性技术,沟通、协作、团队领导、问题解决等方面的行为能力与表现就是开发者的软实力。它涵盖的范围非常广泛,日益受到人们的重视。软实力,往往易被IT从业者所忽略,但实际是至关重要的。它决定了人们事业的成就和职业发展的高度,包括一个人职业升迁和发展的前景等。

  • 大局观: 全局视野、统筹协调力
  • 管理能力:包括自我管理和团队管理能力
  • 沟通协作能力
  • 学习和思考能力
  • 职业素养

对软件开发团队来说,最关键的是交付能力,团队整体的沟通协作、问题解决能力在其中起到了决定性的作用。这些在日常管理中很难量化考核的指标,往往会决定一个项目甚至一个产品的成败。那么这些能力也可以称做是开发团队的软实力吧,我觉得应该可以包括一下能力:

  • 推进力:有目标做到那叫执行力强;为自己和团队找到目标那是推进力。由无到有,这是神的能力
  • 执行力:分配给团队的任务 ...

Continue reading

【译文】产品发掘

Posted on Tue 08 December 2009 in it • Tagged with svpg, 产品, 产品发掘

1. 读后感

几乎所有公 司都没有按照我所描述的产品发现过程来做一个原型系统,他们使用了全部开发团队资源,按照正式发布周期建设和测试,然后部署到生产环境中。这就是为什么许 多公司通常需要在一到两年,3个以上的版本发布后,才能拿到一些可用和有用的东西。他们使用整个开发团队构建了一个非常非常昂贵的原型,然后利用不知情真 实用户来做测试对象。

多么可怕的场景,做为一个普通用户,不知道被多少公司当成了试验品。但其实这是一个两败俱伤的结局,为什么不想办法避免呢?

2. 翻译

产品发掘

标签:产品发掘,产品管理

你以前见过这种情况吗?你的老板有了一个很棒的点子,作为产品经理的你,被要求写出产品定义。你被告知,项目组将在4周后做完当前项目,因此这意味着你可以做你想做的事情,只要在4周内完成产品定义即可。

没问题,你说(毕竟,有时候你只有几天时间,因此四周听起来不错)。你甚至可以使用我一直强调的所有的最佳实践。你开始做机会评估(产品发掘过程的第一 步,note by twoTwo),了解这个点子要解决用户的什么问题,然后你需要花大时间和真正的用户交流,并确定了一套初步的要求;第二个星期,你开始做互动原型设计 ...


Continue reading

基于Spring的分布式技术架构

Posted on Tue 01 December 2009 in it • Tagged with Architecture, cluster, remoting, Spring

从检索到的资料来看,基于Spring的分布式技术架构已经很成熟了,虽然现在因为资源问题,调研暂停了,但这个技术方向是没问题的,完全可以在实践中来构建。

  1. Web Services with Spring 2.5 and Apache CXF 2.0
  2. Remoting and web services using Spring
  3. spring下分布式事件通知服务框架
  4. spring分布式事务(jotm)
  5. 使用分布式缓存来群集Spring远程服务
  6. spring-remoting-cluster: Google的开源框架,有时间研究研究

Continue reading

软件强制升级要慎重

Posted on Tue 24 November 2009 in it • Tagged with MSN, 产品, 版本升级

看了一篇文章,MSN用户突然"被升级" 微软因强制升级遭网友炮轰,发现微软的升级策略和我们公司的挺像的:分为强制和非强制;按照用户属性可以采用不同的升级策略。

从这篇文章和后面的评论上看,还是有大批用户不喜欢强制升级的,除了感觉强买强卖之外,多数的用户是因为新版本要下载一陀东西(130多M),升级过程缓慢造成的,另外单纯跟风儿的也有不少。

嗯,强制升级的版本是14.0.8089.726,发现本机已经是这个版本了。


Continue reading

Virtualization, Jira, Scrum, Interview Exam

Posted on Wed 18 November 2009 in it • Tagged with EA, JIRA, Scrum, Virtualization

应用程序虚拟化不谈(Java和.Net),平台虚拟化技术如今已经发展到可以落地的阶段了。
对于平台虚拟化,可以定义为使用特定软件(Virtual Machine Monitor/Hypervisor)隐藏特定计算平台的实际物理特性,为用户提供抽象的、统一的、模拟的计算环境(称为虚拟机)。虚拟机中运行的操作系统被称为客户机操作系统(Guest OS),运行虚拟机监控器的操作系统被称为主机操作系统(Host OS)。
如今系统部也开始了基于Xen® hypervisor的前期调研。

Jira能在公司推广,至少有华仔80%的作用,如今产品、运营和研发三大部门已经打通了流程,相关的培训和指导工作也在开展,培训文档看来全由华仔包办了,在指导上我会投入精力的,过程中也可以添几条FAQ。

昨天产品部的平仔给我们研发做Scrum培训,又听了一遍。产品部门有这样的同事,对研发来说是很幸福的。

晚上下班和华仔一路,说到一个开发经理新出的面试题,赞不绝口。题目是这样的,给出以下需求的最简实现方案: 工作餐AA制,每天有人统一付账,其他人可能当时给,可能事后给,需要一个系统进行记录 ...


Continue reading

【文摘】陈尚义谈程序员职业化

Posted on Sun 08 November 2009 in it • Tagged with 职业规划

看了陈尚义写的软件工程师的十个“不职业”行为,觉得非常好,和大家分享一下。如果在自己身上有一些文中提到的不够职业的地方,希望能想一想,是否可以有所改进,这样对自己,对和自己相处的同事都有好处。

再仔细看了一下,其实有几点不仅适用于程序员,出入职场不管从事什么职业的新人们,也可以参考一下。

1. 对外交付半成品

我们的态度反映在我们的工作上,职业化的人士从不从自己手上交出不合格的工作产品。那些不职业的软件工程师满足于把工作做成半成品,等着让别人来纠正他们的错误。

开 发者总是不好好做单元测试,没有确认自己的代码符合不符合要求,就盲目自信地认为没有问题,提交给别人供集成和测试。殊不知,没有经过单元测试的代码,往 往在集成和系统测试阶段发现大量的问题,要修复这些问题需要付出更大的代价,这个代价比你自己发现并修复要大得多,给组织造成了巨大损失。

2. 不遵守标准和规范

职业化的重要特征是遵守行 业标准,不能肆意按照自己的想象来发挥。每个行业都有自己的技术规范,软件行业也同样如此,如IEEE发布的国际软件工程标准等;各个软件开发组织也有相 应的代码规范、文档模板、代码审查清单等;有一定管理水平的软件开发组织还有相应的过程文件。

这 些都是软件工程师在软件开发过程需要遵守的规定。特别强调的是,自人们认识到软件危机以来 ...


Continue reading

【读后感】好产品设计原则

Posted on Mon 02 November 2009 in it • Tagged with svpg, 产品, 产品发掘

1. 读后感

每个好产品都不是侥幸成功的,作者分享了他认为总是正确的10条原则。看起来是一切以用户为中心的具体实践。

而且和作者的其他文章交相呼应,看起来很舒服,例如:

  1. 要有概念模型
  2. 好的设计要经常检验,而且能经得起检验
  3. 要有产品原型
  4. 产品设计的精髓:用最少的产品功能满足用户的需求

1.1. 10条设计原则

1.1.1. 重视用户体验设计

用户体验的设计比产品开发重要,也比开发困难。

//呵呵,我也有这个感觉。

1.1.2. 要有概念模型

工程师通常都不是好的用户体验设计师,他们喜欢从技术角度考虑一个事情如何实施,但用户会考虑用起来怎么样

//角色不同嘛,这本来就是两个层面的东西。

1.1.3. 动静接合的用户体验设计

用户体验设计包括交互设计和视觉设计两部分。

//动静接合才能表达清楚需求,团队才会明白需要怎样实现。

1.1.4. 功能和用户体验是一体的

产品的功能需求和用户体验是纠结在一起的。

//呵呵,又是一个常识性的知识。

1.1 ...


Continue reading

【译文】工程师转行产品经理的六大挑战

Posted on Sun 01 November 2009 in it • Tagged with svpg, 产品, 职业规划

1. 读后感

在这篇文章里,作者介绍了工程师转行成为产品经理面临的六大挑战。另外,让工程师们受到鼓舞的是,这种转行是很有优势的,且可行性很高。因为作者身边就有好多成功的例子。

2. 原文翻译

在上一篇讲述架构师角色的文章中提到了工程师在产品发现过程中的作用,作者解释了伟大的产品是在产品经理、用户体验设计师、架构师和工程师精诚合作下产生的。

我经常被问及,工程师是如何转型成为产品经理的。

有时是发生在工程师参与产品发现过程中,他感受到了自己对产品的影响,而不仅仅是开发实现;而有时他希望加入产品管理是因为他沮丧的意识到,如果没有一个好产品,工程师团队再好也是白搭。

不管怎样,我知道的很多非常棒的产品经理都是从工程师转行过来的。在这篇文章里将要指出工程师转行产品经理面临的最大挑战。

工程师拥有的最大优势在于,他们非常清楚现在哪些事情可以做。如果他们能把这个能力和对用户的认知接合来开发出新的技能,你将会得到一个很棒的产品经理,那么伟大的产品也有可能产生了。

2.1. 从用户的角度了解产品

第一点也是最重要的一点,你要知道你一点儿也不了解你的最终用户。如果你花时间在用户身上,你很快会意识到这点的。你需要醒悟,只有你喜欢这个产品,解决如何使用它的问题,你的用户才可能会喜欢这个产品,去想如何使用。

2.2. 和用户共鸣

第二点,也和第一点相关,你要发展和最终用户之间的共鸣。你需要认识到 ...


Continue reading

【译文】架构师角色

Posted on Wed 28 October 2009 in it • Tagged with svpg, 产品, 产品发掘, 职业规划

1. 读后感

两年前的我不懂产品,现在的我在学习怎么做产品,希望两年后我可以指导别人做产品。

本文有点儿长,多亏了有Google Translator Toolkit,才坚持下来。后续吸取经验教训:1. 要坚持;2. 尽量挑篇幅短的翻。

拉回来说读后感,通过作者的论述,读者能够了解到架构师的职能、产生过程、如何参与产品过程等信息。对软件工程师职业规划有所帮助,也能为架构师理解自己工作有一点点作用。

2. 翻译

架构师角色--架构师在产品发掘、产品执行中的重要作用

产品经理的工作首先是发现一个有价值(对公司)、简单可用(对用户)并且具有可行性(对开发团队)的产品。如果做不到这一点,产品经理就是在浪费其他团队成员的时间和公司的钱。但是,这并不意味着产品经理必须自己发现这种产品。

一般来说,在产品经理旁边还有其他两个角色。在其他文章中,我曾经写到过用户体验设计师(又名交互设计师)的关键左右。在这篇文章中,我想谈谈如何以及为什么需要在这一过程中包含开发团队。

首先注意术语。当我在本文中说“架构师 ...


Continue reading

【译文】产品规划七宗罪

Posted on Tue 20 October 2009 in it • Tagged with svpg, 产品, 产品规划

The Seven Deadly Sins of Product Planning

1. 原文

来源: http://www.svpg.com/the-seven-deadly-sins-of-product-planning/

Posted by Marty Cagan on March 9, 2009

Tags:product portfolio planning, product discovery

直译就是产品规划七宗罪。主要讲公司应该如何避免研发团队资源消耗在无用的项目上。挺有教育意义的,意译一下和大家分享。

2. 我的读后感

不论产品经理采用什么产品计划过程,关键点都是要挑出其中的好点子来实施,但项目组往往都要花更多的时间在一些无意义的工作上。

如果产品经理没有找出那些对公司是有价值的、对用户来说是有用的,对项目组来说是可行的点子。我们最好尽快终止项目。

2.1. 造成这种情况的7大原因

2.1.1. Inertia ...


Continue reading

Moin升级和信息系统选型

Posted on Wed 23 September 2009 in it • Tagged with EA, JIRA, moinmoin

昨天晚上10点接到华仔的电话,说moin从1.6升级到1.8.5不是很顺利。一共有两个槛儿:
1. 之前系统部升级失败,但已经更新了数据文件,从而无法自动更新用户密码了(原来的SHA加密升级成SSHA了)
2. 决定上LDAP认证,但redhat上装python-ldap遇到了无法解决的依赖关系。
两个问题,第一个属于既成事实,只有硬走第二条路了。

今天早上我们俩前后脚到单位,华仔很兴奋的告诉我,1.8.5升级成功了,昨天干到11点多,终于辗转腾挪把依赖关系给解决了。赞一个。
1.6往上升级,还有一个槛儿,就是用户组的正则表达变了,引起的问题是acl权限认证失效,应该改成下面这样:
page_group_regex = ur"(?P(?PS+)Group)"

升级的初衷是希望解决pptx后缀的附件下载被认作zip格式,但这个问题在1.8.5还依然存在,还是得继续看看。

moin1.8支持rss发布了,这个功能很有用。


公司的产品和运营都用Jira做信息系统了,研发是继续使用自己开发的系统还是切换到Jira,现在成了一个问题。

其实也没那么难决策,从以下几个方面比较一下就一目了然了:

1 ...


Continue reading

PKI Tutorials

Posted on Fri 11 September 2009 in it • Tagged with PKI

这篇公钥基础设施PKI简介作为入门材料还不错,而想搞清X.509和PKI标准的关系,可以看这个

看了Wikipedia上对Public key infrastructure的介绍,觉得Peter Gutmann写的PKI tutorial看着比较清爽,有时间有兴趣的可以下了这个pdf文档看一下。他文章的标题叫“Everything you Never Wanted to Know about PKI but were Forced to Find Out ”,可以继续进阶。

首先必须要明白PKI的定义和组成

定义上看,PKI是一个由公开密钥密码技术、数字证书、证书发放机构(CA)和关于公开密钥的安全策略等组成的安全解决方案(infrastructure说明这个解决方案非常需要硬件的支持)。
技术组成上看,主要包括四个部分 ...


Continue reading

JMeter小收获

Posted on Sat 05 September 2009 in it • Tagged with JMeter, 性能测试

应测试部之邀,准备一次JMeter JavaSample开发培训。
离上次看文档相隔了一年半,发现收获不小,窃喜并记录。
1. 用JMeter通过Tomcat5.x监控Server性能
http://jakarta.apache.org/jmeter/usermanual/build-monitor-test-plan.html
2. 通过跑Sleep Test来了解JMeter的支持能力
发现有一些Listener在大并发下太影响性能了,最好别添加。
3. 通过Ant调JMeter
http://www.programmerplanet.org/pages/projects/jmeter-ant-task.php
http://www.infoq.com/news/2008/04/JMeter-Ant-CI
4. 要说说JMeter的优点了
1)从08年初到现在,版本从2.3.1升到2.3.4。说明发展得已经比较稳定了 ...


Continue reading

喜闻李开复离开google

Posted on Fri 04 September 2009 in it • Tagged with google

这应该是google中国策略的一个转折点。是真正贴近还是放弃中国市场,让我们拭目以待!

转几个链接:
李开复离开google:开复走了,彦宏哭了

李开复今日离职 Google中国四年需反思


Continue reading

Debian VS Redhat

Posted on Wed 26 August 2009 in it • Tagged with EA

本来想写点儿东西,从技术和管理角度,在系统级别、应用级别论证一下Debian优于Redhat。但手里的资料还是比较少,写这样的东西太主观了。就先开一篇文字,罗列一下我目前能够比较的点吧。

相同点:
1. 内核都是基于Linux Kernel,做应用服务器,用什么linux基本没有差异
2. 软件丰富度差不多,开源软件包支持度一样: GNU/FSF/Apache....debian目前官方的软件包25113个(见http://www.debian.org/)
3. 同样庞大的用户群

差异性:

  • 系统安装:最简安装VS全副武装



  • 软件包管理:deb包管理(通过互联网上的软件仓库安装、升级卸载软件甚至操作系统)VS RPM(人工处理依赖关系)

Debian的包管理十分方便, 这将节省大量的维护和管理的时间。

  • 系统升级(安全补丁):及时性和付费情况

Redhat的自动升级服务是要交费的,对于企业服务器版本的费用则更高。如果不买,则要到处去找包,去解决相互的依赖;
Debian支持操作系统平滑升级,他们的社区在随时关注各种安全问题,在最快的时间内发布香港的安全补丁 ...


Continue reading