大家好,我是阿桃,一个想成为被点赞关注的程序员。
工控行业、物联网行业、机器人行业软件开发可联系我
前言
分享一下一年半之前写的一篇对于小公司如何进行项目交付的文章,现在虽然会看得更深一些,但是工作两年的角度看待项目交付对以后带新人也会有帮助的吧。
正文
从毕业起在一家小公司不知不觉已经工作了两年,从开始的懵懵懂懂逐渐的对产品交付过程有了一些了解,最近负责了一个项目的开发让我感到在小公司要做好一个项目真的很难,也深知是自己目前的水平还不够,以下仅仅是根据自己目前的知识背景所提出的见解,可能有很多是错的但这是从我自身角度得出的结论希望能对读者有所启发。
对于我负责的项目从启动到交付的过程包括确定产品方向、产品定义、用户体验设计、基本的项目管理及开发、测试、发布,忘了说一点,我们公司一个项目的开发团队就几个人,这次项目也是只有4个人,其中包括我们每个人还有其它任务在,多任务并行对于一个项目开发而言也是一种风险。
前期准备
不像大公司有产品部门、设计团队、用户体验师等,从一开始的产品方向、产品定义、用户体验设计都是用研发负责的,对于这些我可能还是门外行,基本的前期准备我也是参考《用户体验要素》后凭借我们研发几个人的主观臆测决定的,由于这个项目中竞争对手的产品已经比较成熟在市场已经经过多轮的验证,我们从《用户体验要素》中定义的五个层次对竞争对手做了详细的分析,为了得出我们的产品样貌包括得出亮点功能。在这个阶段我们花费了比较多的时间,我深怕做出来的产品不能获得客户的认可。
项目管理及开发
在这个阶段会引入适当的项目管理方法以及开发,正如《大道至简》中提到的不管是瀑布式还是敏捷式开发过程都是根据适当的场景选择的适当的开发方式,不同公司还会有不同的变形。对于我们而言显然敏捷更适合,因为所有的前期准备都是我们的主观臆测,需要尽快完成给客户的迭代版本获取反馈验证我们的主观臆测是否正确。
我们公司很多流程都不规范,一开始没敢引入太多的流程,老实说,在我引入站会、单元测试、评审等制度时就已经和大家做了非常多的沟通才达到共识得以实施,可能对于一些读者看来这不太可能但这是真实发生的。我们的研发人员在使用面向对象语言设计时对于设计模式是没有了解过,当然他们懂设计只是没有给这些设计起了相应的名称而已,当然也有一些设计模式他们没有用到的但软件巨匠们已经总结过并取了相应的名字,我们应该去了解它们以完成更好的设计。
在项目管理的实施过程中我深刻体会到对于一个项目负责人来说威信力的重要性,你必须具备让他们信服的技术,如果没有过硬的技术高傲的程序员是不会信你的。
小结
对于测试和发布目前没有什么比较想表述的想法,可能后面会参考《谷歌和亚马逊如何做产品》书中提到的措施进行更改实施,可能我们公司研发的水平真的是比较薄弱包括我自己,最近公司来了两个大牛,我老板的创业以前公司的同事,希望可以跟他们请教一下对于我们公司而言怎样做才能完成一次好的项目交付,我感觉在一家小公司负责一个项目做好它真的是一件很难的事情,时刻不忘工匠之心,晚安。
文章每周持续更新,原创虽短,确不容易,欢迎大家点赞关注,一起交流技术一起提升成长。