《走出软件作坊》读后感

此书(走出软件作坊(IT人升职必备) – 图书 – 当当网)在网上的名气实在有点响,本没有想法要去看,发现长逛的几个社区里大家的评价都还挺高的,就决定要瞟一眼,也了解了解别人是如何走上CTO之路的,以及他描述的究竟是一条怎样走出软件作坊的道路。

不搜不知道,居然还有个专门的论坛。。“欢迎访问《走出软件作坊》官方论坛

读完整本书后的感受就是,虽然作者一直在强调自己是三五条枪的软件作坊,搞不起什么CMMI、RUP之类的重型方法,也难以模拟国外流行的敏捷模式,所以要走自己的道路。但其实呢,作者无非是更好的平衡了企业当下的需求,和对CMMI、RUP、敏捷的追求而已,因为他所遵循的道路始终是抓住当下企业面临的最大问题,以规范化、可度量化、责任到人等方式来处理。但此书的局限在于,它并非适合所有行业或是所有的IT从业人,和作者一样处于管理软件行业的从业者可以更直接或是更简单地从书中吸收知识,而其他人则不得不多加思考,领略作者解决问题过程中的思路,才能灵活应对自己所面对的难题,而不是生搬硬套。

@自序

  1. “毕竟我只在企业管理软件开发公司工作过,而且只工作了十年,只服务了两家公司,所以我的见识恐怕难免狭隘,欠缺普遍性。”

@1. 组织结构篇

  1. “老板给你的资源,永远小于你干事的资源”
  2. “要成为CTO,就必须具备以下四种素质和能力:1. 商业眼光;2. 管理才能;3. 技术眼光;4. 产品结构。”
  3. “我的方法都是为了解决实际问题,为了老板赚钱更快、更省成本、更容易,员工更省力,客户更满意,而且每个方法都是在本企业能力和成本范围内能执行落地的解决方案。” # 脚踏实地地解决当下的具体问题,才是可选良策,再大的理想也要从身边小事做起。
  4. “如何创造好的氛围,我讲讲我作为职业经理人管理人的一些心得:1. 抓大放小,搭台让人唱戏;2. 师傅带徒弟;3. 朝九晚五,禁止加班;4. 搞好环境、整好形象;5. 立即奖励,马上兑现。”
  5. “以下是我引入好的人才的几个心得:1. 第一当数责任心;2. 人的年龄和工作经验要拉开距离;3. 技术第二,EQ第一;4. 专业发展,流程协作;5. 互相交流,制定下一阶段的目标。”
  6. 公司的文化是你在日常细节工作中潜移默化感受到的。” # 大张旗鼓地宣扬某种企业文化,非常有挂羊头卖狗肉的嫌疑。
  7. “依我看,作为中国软件群体最大组成部分的小软件公司,需要的不是UML/RUP/CMM这些重型方法,不是前几年大家关注的小组开发方法,也不是敏捷编程这样的结对方法,我们都无法有这样的资源实现这样的方法。” # 个人觉得这个观点值得商榷。
  8. “研发经理驾驭的四套马车”
  9. “每个人都身兼数职,而且都对自身的提高非常有好处,而不是给他身上堆砌毫不关联的工作内容。每一项职责都能互相互补,整体提高他的岗位专业性。”
  10. “我在设计方面使用了PPT+WORD+脑图+Excel的描述方法。 …… 此外,我们还使用了需求管理工具来管理来自各个方面的需求;使用了Bug管理工具管理需求;使用了任务管理工具管理任务。 …… 在版本控制方面,我们使用了版本控制工具来控制设计文档和源代码的版本。我们还使用了自动每日构建工具,每天晚上整体编译。 …… 不过,我们倒是使用了一些压力测试工具,模拟同时并发访问,同时插入数据,同时取数,模拟网速限制。 …… 还使用了Setup打包安装工具 …… 我们还自己写了一个版本自动更新工具 …… 没有驱动力的事情我们从来不干。” # 其实作者已经做了很多的事情去规范企业软件开发过程的各个方面。
  11. “我抓住了项目经理的两大重点:1. 业务需求;2. 项目计划、项目报告、项目异常解决、项目推进、人员调度。”
  12. “很多人缺乏创新能力,所以无法成为总监。”
  13. 技术是为商品服务的,能不用就尽量不用,技术是藏在商品里的。” # 不能给客户带来价值的技术,客户没有理由购买,至少对企业生存是没有什么帮助的。

@2. 过程管理篇

  1. “写代码的8项建议:1. 重点把控输入数据的校验;2. 以后的需求再往上加,都写成函数;3. 以后再加功能,尽量不要做成联动触发的;4. 以后写代码,分离特殊处理业务和正常处理业务的功能代码;5. 对不常用的功能做一些隐藏处理,将其放到一个不起眼的位置;6. 写代码时,避免全局变量和大流水代码;7. 修改需求或Bug的时候,要按照模块来集中修改,而不要挑好改的先改了,不好改的就最后改;8. 多写视图,多写存储过程。”
  2. “不是客户需求在变,而是你对客户的需求理解在不断加深。”
  3. “第一回合,以开发部门老老实实修改需求为结束。 …… 第二回合,开发V.S.实施,平手。 …… 第三回合,开发胜出。”
  4. “我走访客户,主要目的有三:1. 改善一下老板和实施人员对开发部的认知;2. 改善一下开发人员和实施人员的冲突;3. 了解客户现状,想方法如何去引导与影响客户。”
  5. 新产品必须与公司的实力和战略相结合。” # 不能一口吃成个胖子,需要量力而行。
  6. “保守中的创新:先剖析行业标杆老大的产品;只比客户前进半步;整合出一份吸收优点的特性列表。”
  7. “获得公司内部最多人的支持是一件非常重要的事情。 …… 首先要获得自己下属的认同;然后是获得老板的赞同;最后是获得客户的支持。 …… 得道者多助,失道者寡助。上下左右逢源,你才能成功。” # 万不可孤军奋战,众叛亲离。
  8. “所以我们做产品规划的时候,必须要思考新产品与老产品的关系,最好形成整合互补关系,而不是代替的关系,更不能形成互不相干的关系。”
  9. “对于销售来说,演示的时候稳定、易用、好看、速度快就是关键。 …… 对于实施来说,最重要的就是软件稳定。 …… 对于培训来说,软件易用最关键。 …… 对于技术支持来说,软件稳定是第一位的。 …… 对于支持来说,软件自动升级也非常重要。 …… 对于后续版本开发维护人员来说,代码容易看懂,代码好修改才是最关键的。 …… 对于测试人员来讲,软件必须具有可测试性。 …… 对于文案人员来说,软件必须能让文案人员编写文档。” # 小小的PPT演示就可以看到不同利益方的不同需求和期待,一切都需要通盘考虑,整体协调安排。
  10. 客户其实只想解决问题而已,什么技术都无所谓,只要能解决了,解决方法越简单越好。”
  11. “解决问题,这是你自己面临的问题,你不去自己想办法,没有人会给你解决这个问题。能救你自己的只能是你自己。”
  12. 大规模的开发,必然需要的是一般素质的人员。” # 这是一个极其重要的现实问题,寻找解决方案的根本出发点。人员要培养,但能力不会在一夜之间产生飞跃,所以必须考虑在这样的环境条件下如何开展工作。
  13. “没有了实质的进度,也就没有了实质的项目预算管理。那到底能不能赚钱,真成了一个鬼才知道的问题。”
  14. “我们并不是为了正规才编写文档的,我们写的每一个文档都有作用。”
  15. 我们从来不为没有利益回报的东西多付出。” # 非常实在。
  16. “尽量限制使用新技术,不会让新产品、新团队、新技术这三个‘新’都同时出现,风险太大了,而且坚决不使用新技术作为基础技术。”
  17. “代码的几个关键点:1. 代码风格统一,从命名含义,到大小写,到缩进,都一致。每个源代码文件都一致,确实出于一人之手;2. 我的代码居然能看出业务流程;3. 我的程序都是小函数组成的,都有明确报错。”
  18. “售前、项目管理、实施适用的演示方法:1. 首先要字号够大;2. PPT就是个你演讲的思路大纲;3. 字体要统一;4. 一些名词要统一;5. 不要用色太多;6. 图表太复杂;7. 讲得太多了;8. 你再把你的步骤调整一下;9. 眼睛不要死盯一个角;10. 我建议你手中拿一支激光笔,这样你就有个可握着的东西,会让你心里踏实下来;11. 讲话要大声,响亮;12. 不清楚的事情千万不要乱说,不要说谎。” # 这是我最喜欢的一部分,讲得非常详细,而且言之有理。
  19. “PPT之外的许许多多细节:1. 你一定要清楚你住的宾馆到客户会场的交通路线、车行时间;2. 这次的听众是谁?3. 准备好你的录音笔、激光笔,以便在演讲的时候录音,反复锻炼自己的演讲;4. 如果听众要求你现场演示,也最好不要做;5. 检查好你的U盘;6. 还要把你的笔记本电脑清理干净;7. 提前到了会议现场,先看好电源插座,看看你的电脑够不够得着?8. 有多少人参会,就需要提前复印多少份听众材料,而且一旦复印,你就不要再改动你的PPT了;9. 观察会场光线怎么样,暗了就需要开灯,强了就需要拉窗帘;10. 有些领导特注意这些细节,往往都是99%都给了,就1%没有给,但恰恰就是那1%起决定作用;11. 不要评价竞争对手,不要打击竞争对手。” # 我最喜欢的第二部分,作者的经验之谈。
  20. “如果要增加互动问答,一定要是选择题,而不要是思考题。”
  21. “如果确实想尝试交互游戏,一定要设计一个规矩很简单的游戏”
  22. “现场培训演讲:培训前必须和到会者交换名片,并且签到。 …… 开会前,把自己的手机调整为静音,振动都不行,以防分心。每个人都要戴手表,以控制时间。开会的时候,把手表放到桌面边,这样不用看手腕就能瞄一眼时间。 …… 一定要了解听众需求。”
  23. “演讲过程中要注意以下几点:1. 不要把全部的功能都向客户展示;2. 不了解行业,不要打比喻;3. 不要和管理层谈行业;4. 不要和IT层谈IT;5. 我们最了解的就是我们的软件。”
  24. “试点实施:走出第一步,一定要把型塑好,千万不要特殊事情特殊处理,否则开发部很容易变成一个小社会,开发、实施、支持全都管,再也回不到正常的流程上来了。” # 规矩不能乱。
  25. “客服支持:于是,电话下场,QQ出场。 …… 客服人员在压力下自己创新,成立了QQ群。 …… 于是,BBS搭建起来了。 …… 这个案例库现在真是非常宝贵。 …… 这个重量级的工具就是客服工单系统。 …… 工单系统还和呼叫中心绑定在一起。 …… 工单系统和呼叫中心绑定在一起后,还能实现工单的智能分配。 …… 有了量化的工作考核指标,客服人员就有了高级客服顾问、中级客服顾问和客服顾问三个等级,工资不同。” # 典型的不断反省,持续改进的过程。

@4. 职业发展篇

  1. “新人入职手册:每个企业和组织都有其内部的制度和规则。 …… 但由于部门内部长期协作、经理的个人管理风格和部门间的利益力量博弈,所以形成了部门内说不清道不明的规则。 …… 我的管理风格一向都是以问题找答案。”
  2. “员工职业发展思考:一个平时不主动努力,不勤于思考钻研的人,工作中也会如此。一个说话思路都不清晰、没有重点的人,写出程序也会是一片混乱。他看什么样层次的书籍和报刊杂志,就能知道他的眼界有多宽,发展有多少后劲。如果他做的毕业设计很独特,很有思考力,我就会比较赞许。因为他是在用心思考和努力,而不是混毕业设计。” # 窥一斑而知全豹,还是kaopulity的人靠得住。

@5. 心路成长篇

  1. “是什么造就了他们的成长呢? …… 我把这种根源归结为责任。 …… 我能做的就是尽量展现自己的工作效果,让老板看到我的全面价值。 …… 什么是价值?我个人是这么看的:‘为客户带来好处和收入,为公司带来好处和收入。’ …… 米卢有句话:‘态度决定一切’。” # 我非常喜欢米卢的这句话,《自慢》里面其实也强调非常多次,要有正确的态度。
  2. “想做事,胸怀要大,要踏实,要低调。” # 三点:1. 视野、理想、目标要宏大;2. 要有切实的执行力;3. 要谦逊,不可得意忘形。有远大的理想,又能脚踏实地地前进,还有谦逊学习的态度,成功岂不是指日可待?
  3. “责任感,就能产生领导力,就不畏挑战。态度、胸怀就能决定是否有团队能让你领导,是否有人追随你自然形成团队。”
  4. “机会,不是掉下来落到你的头上砸到你的头的。 …… 从手头做起。 …… 皆在一个‘心’字。”
  5. “我的读书技巧:第一,我经常梳理自己的知识体系,技术的,管理的,业务的;第二,我读书就和猕猴吃食一样,先看书的目录,然后发现自己感兴趣的章节,直接找自己关注的问题答案;第三,从小到大,我都保持着读书的爱好,一本好书在手,经常饭不吃觉不睡。” # 活到老学到老,学习真的是没有尽头,人得不断地提高自己,优秀的人永不满足。
  6. “这样不行就那样做,反正总是不放弃努力,哪怕一丁点的改进我都愿意每天去提升一点 …… 我的这些土办法都是这样点点滴滴在解决日常问题时积累下来的。” # 挺有点Scrum里面Inspect and Adapt的味道,尝试、回顾、调整的循环。
  7. “分享给大家几句话:1. 能救你的只有你自己;2. 没有不可能;3. 这个世界没有机会,机会永远是别人的。”

About Kaveri, Yi XU

Agile Coach & Consutlant
This entry was posted in 兴趣. Bookmark the permalink.

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s