显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

汉斯的博客

碰到难解迷惑之处,与其用脑思考,不如用心去导航!

 
 
 
 
 
 

项目管理能力提升四要素

2014-12-11 13:59:26 阅读15 评论0 112014/12 Dec11

企业在应对快速发展的经营活动时有两个管理将起到关键性作用,一个是战略管理,一个是项目管理。战略管理立足于企业的长远和宏观,考虑的是核心竞争能力,而项目管理是实现战略并支持企业快速健康发展的手段和保障。

认识项目管理

美国项目管理协会主席保罗说:“在当今社会,一切都是项目,一切也将成为项目。”项目,是在一段时间内为完成某一独特的产品或提供独特的服务所进行的一次性努力的过程。只要有目标和过程,就可以成为一个项目。譬如:设计开发某一产品功能、房屋装修改造、结婚的婚礼筹备等都能称为项目。

项目管理,就是在项目活动中运用知识、技能、工具和技术,以便达到项目要求,其目的是满足和超越项目干系人对项目的需求和期望。项目管理从本质上来说,就是面向目标的,所有的方法、行动都是为了达成目标而服务的。

互联网公司的项目实践

早期或初创的互联网公司,产品经理和技术开发几乎承担着多种角色的工作。产品经理除了产品方案设计以外,还做交互设计、产品测试以及项目执行的整体协调推进工作。技术开发人员除了做程序编码实现以外,还做系统测试以及测试完成后的上线部署。

实际上,从标准规范的人员角色分工来讲,交互设计是交互设计师的工作范畴;系统测试属于测试工程师的工作范畴;上线部署属于运维工程师的工作范畴;项目执行的整体协调推进,也属于项目管理的工作范畴。当那些早期或初创的互联网公司的业务规模越来越大、项目越来越多时,一个人兼任多种角色,就会感到力不从心,必将影响项目进度和节奏。

以中国互联网行业里知名的A公司为例,A公司的W事

作者  | 2014-12-11 13:59:26 | 阅读(15) |评论(0) | 阅读全文>>

技术人自学的项目管理方法

2014-12-11 13:51:46 阅读17 评论0 112014/12 Dec11

一、 干系人分析应该怎么做

不少刚从技术人员提升成为项目经理的员工经常面对项目中无穷无尽的沟通和注意事项感到筋疲力尽,以前也有同事对我说,“老大,我是不是不太适合项目经理这个岗位,现在感觉还不如做开发人员的时候开心。”我当时除了勉励他,教他一些项目管理的方法,支持他并给你提供更好的资源,也为他做了一些项目上针对性的分析,现在看来,初次当上项目经理的同事,即使经过项目经理的简单培训,仍然对项目管理抓不住重点。

今天第一课,项目干系人分析,是所有项目经理的必修之道,好比练功,这是基础中的基础,马步站桩虽然不及拳脚好看,可这是夯实你项目成功最重要的一步,而且在整个项目管理过程中,还要经常回顾和分析,就好像陈氏太极大师陈王廷,每天还坚持站桩。而这个干系人分析在教科书上说得太理论化,今天我就用实例来说说干系人分析应该怎么做。

项目干系人,软考中参考书籍上有解释:项目干系人又称为项目相关利益者,是指积极参与项目、或其利益会受到项目执行或完成情况影响的个人或组织。项目干系人对项目的目的和结果施加影响。项目管理团队必须识别项目干系人,确定他们的需求和期望,尽最大可能地管理与需求相关的影响,以获得项目的成功。

上面是书面解释,实际过程我举个活生生的例子:某公司A的系统集成项目,客户信息中心主任与该公司的关系很好,而这家公司A通过努力也顺利的中标,并开始组建项目小组,分配资源,准备实施,公司派了一位技术经验丰富的工程师小张作为本项目的项目经理,因为这个项目需要同时与客户、软件厂家、硬件厂家、公司技术支持人员(不属于此项目小组)进行沟通,按公司

作者  | 2014-12-11 13:51:46 | 阅读(17) |评论(0) | 阅读全文>>

转:项目实战笔记

2014-12-11 13:27:04 阅读19 评论0 112014/12 Dec11

本文为转载:

项目实战笔记之一:高效会议的组织方法

关于开会大家应该都不陌生,而且应该有不少人被过度频繁的会议“伤过”,甚至”谈会色变“ 。当一个组织的人员较多,结构复杂时这个问题会更加突出。如果开发人员/测试人员参加会议过多,会导致工作打断严重,直接影响到团队工作效率。如果管理人员参加会议过多,就会导致管理人员离开所负责的管辖范围时间较长,不能及时响应事情,从而导致团队整体管理效率变低,典型表现是很多事情没有及时处理、开始积压。

当然会议是需要的,主要是我们要总结出一套高效的方法。下面分享一些总结,有兴趣的同事可以一起探讨。

第一,确认会议类型及目的。我认为在我们公司的研发体系里以会议目的划分,会议大体可以分为以下6种:

1. 团队建设:激励团队,培养员工的团队意识,让每个参与人员了解共同的目标,树立全局观念,无形中能够帮助团队减少协调成本。 例如:版本项目周会

2. 报告绩效:向上级管理层汇告版本当前绩效情况,并且根据需要可以获得适当的资源支持,例如:RDM的项目分析会议

3. 平级沟通:针对问题通过会议讨论形成解决方法或是达成处理协议. 例如:开发和测试周会,跨部门合作会议

4. 信息传达:将信息传达出来,让相关人得到信息并理解信息,以方便进行下一阶段的工作。例如:新流程培训会议,经验分享会议

5. 创意开发:针对某一个问题的解决方案或是某个方向的创新主题进行讨

6. 评审会议:技术方案/需求文档评审,疑难问题讨论等

确定好会议类型及目标之后才能选定出需要讨论哪些内容,汇报哪些信息,以何种方式组织。这里举个示例:

作者  | 2014-12-11 13:27:04 | 阅读(19) |评论(0) | 阅读全文>>

HttpClient4.3 Fluent API

2014-11-23 20:05:54 阅读33 评论0 232014/11 Nov23

HttpClient原来的API非常复杂,而且还要记着关闭InputStream,Http4.3终于提供了Fluent API, 代码在后面给出。

Request.Get(url).execute().returnContent().asString();

通过翻代码,可以看到它线程安全,所有请求会使用一个公共的连接池,总共200连接,每个destination最多100个连接。而且内容会立刻全部读出然后关闭inputsream,不需要再用代码去关闭。

如果你想设置自己的连接池,或者设置超时,则需要先设置好httpClient,然后传入。

Executor executor = Executor.newInstance(httpClient); String resultString = executor.execute(Request.Get(url)).returnContent().asString();import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import

作者  | 2014-11-23 20:05:54 | 阅读(33) |评论(0) | 阅读全文>>

缓存集群 - 漏桶算法 Rate Limiter

2014-11-23 19:58:38 阅读19 评论0 232014/11 Nov23

 1. OverView

做限流(Rate Limiting/Throttling)的时候,除了简单的控制并发,如果要准确的控制TPS,简单的做法是维护一个单位时间内的Counter,如判断单位时间已经过去,则将Counter重置零。此做法被认为没有很好的处理单位时间的边界,比如在前一秒的最后一毫秒里和下一秒的第一毫秒都触发了最大的请求数,将目光移动一下,就看到在两毫秒内发生了两倍的TPS。

因此更平滑的算法如Leaky Bucket--漏桶算法,又或者将原来单位时间内单一的Counter拆分为单位时间内的多个Buckets并滑动计算。

2. Leaky Bucket 与 Token Bucket 算法2.1 算法描述

漏木桶算法简单的想象有一个木桶,有新请求就是不断的倒水进来,然后桶底下有个洞,按照固定的速率把水漏走,如果水进来的速度比漏走的快,桶可能就会满了,然后就拒绝请求。

可见这里有两个变量,一个是桶的大小,支持流量突发增多时可以存多少的水(burst),另一个是水桶漏洞的大小(rate),可以简单的让burst等于rate,也可以让burst更大接收更多突发请求,伪代码如下:

double rate; // leak rate in calls/s double burst; //

作者  | 2014-11-23 19:58:38 | 阅读(19) |评论(0) | 阅读全文>>

微信公众号平台接入JDK6和JDK7及JDK8加解密失败处理(Java)

根据自己jdk版本编译,如jdk7或者jdk6 ,此时部署后提示报错:java.security.InvalidKeyException:illegal Key Size

jdk7:

微信开发者文档提供了下载JCE无限制权限策略文件UnlimitedJCEPolicyJDK7.zip(JDK7的下载地址:

http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt。如果安装了JRE,将两个jar文件放到%JRE_HOME% \lib\security目录下覆盖原来的文件,如果安装了JDK,将两个jar文件放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件。

jdk6 :

需要下载相应的 UnlimitedJCEPolicyJDK6.zip,此文件在 此处 

作者  | 2014-11-17 16:40:56 | 阅读(30) |评论(0) | 阅读全文>>

freemarker的eclipse 语法高亮插件

2014-11-13 16:02:18 阅读34 评论0 132014/11 Nov13

目前在写微信webapp应用,使用到了切换模板技术,以及一些分页模块化技术,使用到了freemarker,使用了这个插件,在eclipse里面比较方便。性能一般,稳定性倒可以。2.3.

使用下面的地址更新,先找到对应的eclipse版本,自己去updatesite

http://download.jboss.org/jbosstools/updates/development/

目前最新版是luna。

http://download.jboss.org/jbosstools/updates/development/luna/

有图有真相。

作者  | 2014-11-13 16:02:18 | 阅读(34) |评论(0) | 阅读全文>>

总结用户信息的处理

2014-11-4 12:47:03 阅读34 评论0 42014/11 Nov4

1、淘宝的session框架,应用无状态

       俗话说,一个系统的伸缩性的好坏取决于应用的状态如何管理。为什么这么说呢?咱们试想一下,假如我们在session中保存了大量与客户端的状态信息的话,那么当保存状态信息的server宕机的时候,我们怎么办?通常来说,我们都是通过集群来解决这个问题,而通常 所说的集群,不仅有负载均衡,更重要的是要有失效恢复failover,比如tomcat采 用的集群节点广播复制,jboss采 用的配对复制等session状 态复制策略,但是集群中的状态恢复也有其缺点,那就是严重影响了系统的伸缩性,系统不能通过增加更多的机器来达到良好的水平伸缩,因为集群节点间 session的 通信会随着节点的增多而开销增大,因此要想做到应用本身的伸缩性,我们需要保证应用的无状态性,这样集群中的各个节点来说都是相同的,从而是的系统更好的 水平伸缩。

OK,上面说了无状态的重要性,那么具体如何实现无状态呢?此时一个session框架就会发挥作用了。幸运的是淘 宝已经具有了此类框架。淘宝的session框架采用的是client cookie实现,主要将状态 保存到了cookie里 面,这样就使得应用节点本身不需要保存任何状态信息,这样在系统用户变多的时候,就可以通过增加更多的应用节点来达到水平扩展的目的.但 是采用客户端cookie的 方式来保存状态也会遇到限制,比如每个cookie一般不能超过4K的大小,同时很多浏览器都限制一个站点最 多保存20个cookie.淘 宝cookie框

作者  | 2014-11-4 12:47:03 | 阅读(34) |评论(0) | 阅读全文>>

相关架构(java) 业务与程序的优化与性能提升

2014-11-4 12:46:48 阅读37 评论0 42014/11 Nov4

1、db的交互,次数降低

2、sql优化,拆分,分解sql,在code处进行拼装,比如延迟加载某关联业务

3、内部方法调用频率,区分service与manager

4、业务逻辑优化,避免多次调用同一处业务

5、把参数校验前置到client,提升server性能

6、在client端增加边界缓存,读写分离,产生read、write、admin

7、巧用jms,datachange机制

8、慎用补偿机制,定时任务与状态机

作者  | 2014-11-4 12:46:48 | 阅读(37) |评论(0) | 阅读全文>>

阿里负责人揭秘面试潜规则

2014-9-26 14:22:06 阅读95 评论0 262014/09 Sept26

阿里巴巴校招负责人揭秘面试中那些你应该知道的“潜规则”

最近负责了公司招聘,发现校园招聘这种事情,真是一个奇葩的工作。能做好校园招聘的人,一定是一个矛盾体。

这个人一定是思维缜密,因为流程在这里特别重要,宣讲会、笔试、面试,需要不能出乱子;这个人还需要有创新意识,做好了宣讲会、笔试面试,也就是中规中矩,没啥特色,如果不弄点有新意的东东出来,也很难找到最优秀的人才。

有人说,这个不矛盾啊。看上去不矛盾,实际上挺矛盾的。因为如果这个人思维缜密,还有很好的创新意识,太难找了。

看了很多大学生过来面试,感触颇多。感触的是,人和人真的很不一样。今天就给大家分享一下我的见闻和感想,不设框架,随便聊聊。

考察三个方面

无论是哪一种面试,主要就看三个方面:现在能力如何,未来潜力如何,人品如何。第一个因素是最重要的,因为后面两个因素有太多的人为判断因素,无法量化。所谓的面试准备,“现在能力如何”很难有大的改变,后面两个因素是可以短时间做一些准备的。

之前有一个很典型的case,有个小伙子能力很强,笔试和初试评价都很高,最后终试的时候,评价特别低,就是因为其被判断为潜力不够。没有钻研精神,对新技术不感兴趣,不愿意深入思考,不主动学习……

毕业学校

总有学生会问类似的问题:你们公司是不是特别看重学历和毕业院校,是不是只招211,985高校的学生?我第一次听见这些问题还好,后来经常听见类似问题。

我发现一个规律:问这些问题的人,一定不是985或者211高校的学生,而且问这些问题的人,内心又有着无限的自卑,总是觉得别人会看不起自己。

作者  | 2014-9-26 14:22:06 | 阅读(95) |评论(0) | 阅读全文>>

前端工程师应该具备的三种思维

2014-9-10 21:24:21 阅读73 评论0 102014/09 Sept10

如果你是一个天才工程师(马上可以离开),可以独立完成一个很多事情,你可以是一个怪咖,因为我相信没有一个人不会不佩服你。但现实归现实,多数人都不是天才,而我们在职场上也不是单打独斗,我们需要团队合作,需要协调和配合,需要考虑除了代码以外的更多事情。

前端工程师,也不仅仅只是负责接资料,捞数据,做个回应。当然只做这些也并没有不对,但我们需要和后端工程师沟通,我们也需要和设计沟通,也需要和 PM 沟通,怎么做才是对这三方都比较有好处?

逻辑思维

在开始写某一段代码的时候,想一下它会用在哪里,会重复用吗? 它以后会不会变,如果会变,那可以怎样变?一般网页结构的变化,虽然有很多但是也有一个根据,这个根据就是可以预先估计好的。没有一个案子,是不会「不改」的,很多时候你都是要一边做一边改,甚至可能会来个乾坤大挪移。当真的需要发生变动和修改的时候,你有什么对策?这些都是需要想好,并且建立在一个逻辑上。

通常专业的设计师,设计一个网页的元素都是同质性很高,等比或对比的,所以代码按理也是可以重复用的。所以为何你要学会用 CSS preprocessor (Sass,stylus,less),写一个 Mixin 或一个变量,一开始用你会觉得很麻烦,但是用了你就回不去了,不但提高你的效率还提高了你的准确率。

工程师的世界就如武林,大家都各自修炼,每天都有新的祕籍,大家都很好奇跑去修炼一下,希望有天成为武林高手。这也是提升你见识和专业的潜动力,如果你没有好奇心,看的和懂得东西太少,逻辑自然不会跟上时代。要保持不断的学习,来磨练自己的逻辑思维。

作者  | 2014-9-10 21:24:21 | 阅读(73) |评论(0) | 阅读全文>>

如何提高Web服务端并发效率的异步编程技术?

2014-9-7 19:54:17 阅读74 评论0 72014/09 Sept7

【编者按】在Java里开发多线程最强有力的实践就是做服务端的并发处理,本文作者阐述了实施多线程的具体实践方法,要真的掌握某种技术你就必须要知其所以然。笔者转发至此,希望对Web开发者有所帮助。

全文如下:

作为一名Web工程师都希望自己做的Web应用能被越来越多的人使用,如果我们所做的Web应用随着用户的增多而宕机了,那么越来越多的人就会变得越来越少了,为了让我们的Web应用能有更多人使用,我们就得提升Web应用服务端的并发能力。那么我们如何做到这点了,根据现有的并发技术我们会有如下选择:

给服务端请求开启线程

第一个做法:为了每个客户端发送给服务端的请求都开启一个线程,等请求处理完毕后该线程就被销毁掉,这种做法很直观,但是在现代的Web服务器里这种做法已经很少使用了,原因是新建一个线程,销毁一个线程的开销(开销是指占用计算机系统资源例如:CPU、内存等)是很大的,它时常会大于实际处理请求本身的开销,因此这种方式不能充分利用计算机资源,提升并发的效率是有效的,要是还碰到线程安全的问题,使用到线程的锁机制,数据同步技术,并发提升就会受到更大的限制;除此之外,来一个请求就开启一个线程,对线程数量没有任何控制,这就会很容易导致计算机资源被用尽,对于Web服务端的稳定性产生很大的威胁。

提高服务端并发量

第二个做法:鉴于上面的问题,我们就产生了第二种提高服务端并发量的方法,首先我们不再是一个客户端请求过来就开启一个新线程,请求处理完毕就销毁线程,而是使用一种池技术即线程池技术,线程池技术就是事先创建一批

作者  | 2014-9-7 19:54:17 | 阅读(74) |评论(0) | 阅读全文>>

四个级别的 “自由” 程序员

2014-8-21 9:01:20 阅读103 评论0 212014/08 Aug21

摘要:大多数程序员为企业工作,被捆绑在岗位上,但拥有稳定的收入与福利。如果向往自由,有些程序员会成为SOHO一族,有些则是自主研发产品。而财务自由则是程序员们最高的自由等级,那时,编程更像是一门艺术。

这段时间,作为程序员的我一直在思考关于工作中“自由程度”的问题,终于我得出了一个结论,把它分成了四个级别。

这四个级别与技术无关。通常来说,只要努力追求,我们都可以成功“晋级”。

第一级:上班族

大部分程序员都是从这一级别开始的,甚至大部分程序员会一直停在这个层级。该级别的程序员没有太多自由,只能做那些必须做的工作,而且被“捆绑”在固定位置上。为别人打工也不全是坏处,你可以有稳定的收入和福利,但这一切都是用你大部分自由时间换取的。

第二级:自由开发者

提起“自由工作者”,大家的想法是:可以做自己想做的项目、可以跟不同人打交道、可以到不同的地方工作……

然而自由开发者并不如我们想象的美好。首先,如果你只有大客户,那和上班没区别。其次,就算你有很多不同的客户,你的工作量和压力会远远大于上班族。当然,从收入上来说的确比上班强。

第三级:自主研发产品

当发现自由开发者的生活不如想象中那么美好时,我又开始幻想:如果能研发出一种产品或者一种服务卖给别人,这样就算不工作也有钱赚。

于是我开发了几个地图应用来挣钱。现在我没有固定的老板和客户,就算几个月不工作也不担心没钱赚,基本上可以达到自由。但有个问题,这时的你得自己决定开发的产品或者服务,所以得学会调查市

作者  | 2014-8-21 9:01:20 | 阅读(103) |评论(0) | 阅读全文>>

新浪微博 微彩票 第二轮改造规划

2014-8-15 9:29:48 阅读105 评论0 152014/08 Aug15

1、架构规划

2、前、后端规划

3、规范标准(命名、访问路径、请求、相应规划)

4、性能规划

5、兼容性规划(web与触屏版兼容性)

6、code review规划

7、...

打造全新的项目组团队,力争让每一个参与了该项目改造的人员都能有所提高。

作者  | 2014-8-15 9:29:48 | 阅读(105) |评论(0) | 阅读全文>>

编程认知:多思考、多编码、多测试

2014-7-17 21:41:11 阅读106 评论0 172014/07 July17

摘要:每位程序员有自己独有的编程方式,原文作者Ben Teese在他的程序员生涯中,悟出对编码流程的一些见解:多思考、多编码、多测试。打造软件的过程是一个不断学习的过程,一个好的策略是遵循计划-执行-反思来进行的。

在我的程序员生涯中,悟出了以下的一个程序编码流程;期间也接触了很多其它的理论和想法,但是我还是觉得这是最适合我的。

大致的样式是这样的:

多思考(Think a bit)多编码(Code a bit)多测试(Test a bit)再来一遍(Go to Step 1)

第一步:多思考

有多少朋友会觉得,噼噼啪啪键盘节奏的快慢代表了程序生产力的高低?如果你也是这样想的,我希望你能在遇到问题时,先放一放,静心想一想。

如果思考的时候,觉得无从下手,不妨先问问自己:究竟要做什么? 一旦安静下来,这个问题的答案将会使我们辨清方向或者重新考虑问题的处理方法。

下一步,我会建议思考这个问题:自己是否把简单问题复杂化了? 尝试用最简单的办法来解决问题是每个程序员应该为之努力的目标。但当我们掌握了足够多的学识时,用如此简单的方法来解决问题是否大材小用了?如果这样想,或许最后找上我们的却是一堆堆越来越复杂的问题。尝试转一下思路,用简单的办法解决问题会导致最坏结果是什么呢?是比不能解决问题更差吗?学会跳出牛角尖,这一点很重要。

因此,在遇到问题时,不妨多问问自己以上几个问题。而当进行到一个瓶颈位置,进退维谷时,我会考虑进入下一步。

第二步:多做

我觉

作者  | 2014-7-17 21:41:11 | 阅读(106) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 
 
 

广东省 深圳市 处女座

 发消息  写留言

 
对互联网系统与应用架构、中间件架构、大型分布式系统架构、系统性能优化(特别是互联网性能优化)等有深入研究。微信等第三方开发商
 
近期心愿完成一些第三方软件开发,再为创业机缘做进一步的积累、沉淀。
POPO  daihaixiang@163.com
QQ54339729
MSNcnhaixiang@hotmail.com
博客等级加载中...
今日访问加载中...
总访问量加载中...
最后登录加载中...
 
 
 
 
 

天气

 
 
模块内容加载中...
 
 
 
 
 
 
 
心情随笔列表加载中...
 
 
 
 
 
 我要留言
 
 
 
留言列表加载中...
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 
 
博友列表加载中...
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 
 
列表加载中...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2014

创建博客 登录  
 加关注