只接受发布货源信息,不可发布违法信息,一旦发现永久封号,欢迎向我们举报!
1064879863
16货源网 > 餐饮行业新闻资讯 > 软件开发 >  创业者如何做好软件开发风险管理?


创业者如何做好软件开发风险管理?

发布时间:2019-05-27 05:00:27  来源:网友自行发布(如侵权请联系本站立刻删除)  浏览:   【】【】【
以下文章由程序员客栈工作人员供稿创业者在创业过程中,肯定碰过几次程序员人间蒸发导致技术开发难以接手的案例。我也听说过不少类似的烂摊子。通常,创业者本身不懂技术或是对技术一知半解的状况,就更容易被程序员
创业者如何做好软件开发风险管理?
以下文章由程序员客栈工作人员供稿

创业者在创业过程中,肯定碰过几次程序员人间蒸发导致技术开发难以接手的案例。我也听说过不少类似的烂摊子。通常,创业者本身不懂技术或是对技术一知半解的状况,就更容易被程序员唬得一愣一愣的。别以为这种事只有遇到外包才会发生,我也看过技术合伙人学会隐身术后就人间蒸发的惨痛案例。

因此,我都建议每个非技术背景的朋友,都要学些一些开发基础知识。这样当程序员出问题的时候,就不致于发生不知道代码、资料库不知在何处的窘境。为了把风险降到最低,以下来谈谈创业者在与程序员合作时需要注意的几个重点。

防范风险前,先了解工程师对公司的期许

防范风险前,先了解工程师对公司的期许理想的情况下,我们都不希望让一个优秀的程序员离开团队,希望程序员能与公司一同成长、长久共事。所以我们可以先了解对于大部分程序员来说,对公司的期许是什么。

一般来说,我们都知道营运端的人需要技术端的人做出平台来让公司运转,而风险就在于技术端的人没办法如期完成工作,更严重是有的无法交出一个像样的平台,甚至人间蒸发。所以这也是为什么敏捷开发的理念,将产品开发的周期减短,也是减轻风险的一种方式。

但是反过来,大家不知道有没有想过,对技术端的人来说,风险在哪里?这边举一个我最常用的例子,如果一个程序员在阿里巴巴写一行代码跟在创业公司写一行代码,谁的价值比较高?答案显而易见,当然是阿里巴巴。因为使用者的量体大小,造成软体平台的价值有所差异。所以对程序员来说,如果他有更好的机会发挥更大的作用,同样的事情对应的营运端期许越高,本来就是他对于营运端的期许,发挥不如预期自然也成为风险。

一家公司成功的关键之一,就是降低人才的流动率,让每个人的技能与经验能够不断的累积而成长,也能完成对自己的期待。然而往往事与愿违,或许对于耿直的程序员来说,有更好的选择,也因此管理技术的风险才会显得如此的重要。

技术管理的风险在何处?如何将问题降到最低?

技术容易发生问题的地方,根据我们过去的经验,简单可分为几种:

问题一:

开发团队因故无法完成或交付任务。

这种状况其实还可以细分为完成一半还是全没完成,以及程序员还有办法联络到还是无法联络到。因此在做管理的当下,一定要记得掌握一些基本的原则。

预防方法:

  • 代码一定要用Git 管理,并且定期请工程师Commit 代码,而且一定要写Commit Log。如果是做到一半的开发,至少会大概知道程序员写到哪。
  • 数据库定期备份,虽然程序员有时候会做自动备份,但是有时候翻脸不认人的时候,还是有数据存在自己电脑最实在。
  • 所有的服务器帐号密码一定要有列表,如果交接后,请全数变更。这样比较不怕程序员消失,就无法进入服务器进行管理与备份。
  • 最关键也最重要的就是要有技术文件,但是很多人其实并不了解要做哪些文件才算齐全,不过至少有张图让你了解你们用了几台Server,大概系统的架构长怎样,API规划的文件是怎样,这些基本的理解,最好还是要有一些文件去做纪录和呈述。

问题二

数据库发生问题或是不翼而飞:前阵子发生的血淋淋案例就是Gitlab 的工程师不小心删除服务器的数据库,这些状况都让不少代码与数据付之一炬。
预防方法:
  • 数据库备份其实也是一门学问,除了现在有很多云端服务会提供自动备份硬盘,建议还是可以定期一个月手动异地备份一次。
  • 进一步请工程师使用Docker 进行管理,Docker 除了单纯的程式与资料备份外,能够更快地还原整体开发环境。
  • 转移Schema 前一定要进行测试,很多数据的毁损与遗失,往往发生在schema 改变的当下,也因此,每次转移前的备份,决定是否要停机转移等等,都是需要谨慎思考的问题。

我认为作为一家创业公司的创始人,最好能够自己稍作了解,或是跟着走一趟,毕竟数据销毁的事,对很多IT 公司来说,应该就是命脉了。

问题三:

开发时间过久才发现大家想的不一样。

这问题有两种,一种是工程师的能力与原本评估有落差,另一点则是沟通不善。沟通不到位较为简单处理。但以评估落差来说,对于找外包或是再找其他工程师的方案,其实各有不同的恼人问题,对外包来说,麻烦的是如果头款已经支付,很难做到一半停下来,而换其他工程师的话,熟悉代码可能要好久,这都是普遍可以见到的状况。

预防方法:

  • 如果是沟通不良的问题,团队可以用两到三周的时间作为一个循环,让工程团队定期做一个简单的Demo,每一次的工作都不宜开出一个太大的项目组,有别于以往长期项目组的思维,凡事要做到尽善尽美的思维一定要改掉。反过来说,每一个项目开发组慢慢建立,从主要功能到辅助功能分批完成,可以有阶段性的产出并且经历测试,这点非常重要。
  • 针对选择招聘程序员或是外包团队,很多人会问说怎么可以确认工程师的水平?当然可以做reference check 或是code review,也许有些帮助。

很多人可能会想说,如果我们公司有良好的文化,有一大堆零食,有很好的福利,聘一个很厉害的工程师来,应该就不会遇到上述的这些问题了吧。但事实上是,即使连Google这么梦幻的公司,他们要写的每一行代码之前,开发者都必须先交出文件(Design Guide),去阐述待开发组的目的、功能、引用哪些Library等等,才能够进行开发。良好的文件管理与测试习惯,绝对会是风险管理的最大帮手。

永远要对最坏的状况有所准备

这篇文章提到的内容,对很多技术管理者来说,可能是基本中的基本,不过对于新手创业家来说,却是容易被忽略和受伤害的一环,有一些好的idea,却遇到一些不在预期内的风险,最后造成了不好的结果,这是相当可惜的事。因此,对于创业家来说,了解技术的风险,就像了解财务的风险一样,都是需要学习的功课。


程序员客栈招聘 远程工作项目经理和产品经理

免费软件开发咨询,请联系客栈工作人员 大鹏 微信chengxuyuan8988 注明来自“知乎”

责任编辑:
热门阅读排行
© 16货源网 1064879863