五人团队,居然自研国产工业软件
今晚和一位老朋友见面了,他给我演示了正在做的某个领域的工业软件,说实话挺震撼的。我先介绍一下这位朋友背景,某 985 软件工程专业,毕业后一直从事软件开发工作,之前在体制内做工程行业的软件开发,因为觉得做的事情没有价值,一直在内耗,离职了,相信很多从体制离开的朋友都是这个原因。很多时候,你没有问题,是你当前所在环境的大方向有问题,对于一个有所追求的人来说,在一个错误的方向上,怎么可能不内耗,不迷茫,除非你选择躺平。
因为有些项目资源,出来后自己弄了一个小团队,加上他一共 5 个人,做自研工业软件,对的你没看错,5个人,自研工业软件。我去交流的时候,正好是他们代码会议的评审,这也给了我一个近距离接触团队内部的机会,每一行代码,都是从底层开始写的,代码主题涉及到了“OCC、QT、几何拉伸、网格划分、有限元”等。这里骑士简单的介绍一下这几个名词:
OCC:世界著名开源几何引擎,国内很多自研软件采用此底层;
QT:C++界面语言,用于编写交互界面;
几何拉伸:三维建模时,常用的一个将二维变成三维的操作;
网格划分:在有限元计算之前,需要先进行网格划分,网格划分的粗细,以及不同地方的密度,决定了数值计算的的质量;
有限元:基于网格的一种连续的力学计算方法。
被审核代码的有工作经验丰富的,基本上没啥问题,也有刚毕业的非计算机科班的学生,当然,被批评的也是这位刚毕业的学生。我跟他说,你不要太严格了,毕竟他才毕业,但对于新人来说,当你面对巨大差距时,你总要学会承担压力,然后野蛮生长。对于读者来说你很难想象一个刚毕业的非软件科班的人在做这样一件极具有挑战性的事情,但是这样的事情在真实的发生。
在与他们交流的过程中,我了解到:这个软件,从底层开始搭建三维建模平台,在建模平台基础功能上,还做了三维网格划分,之所以要划分三维网格,是为了后面的有限元计算。软件虽小,五脏俱全,从建模、到网格划分、到有限元计算全部串联了起来。其实只要把其中任意一个板块做好,做深,就已经是一个了不起的软件了。有的朋友会问了,五个人,可以做这么多吗?这里骑士用和他的对话,和大家说一下。骑士:你之前没有这块的经验,怎么一下子这些都会了,要知道OCC、几何拉伸、网格划分,有限元都不属于计算机科班的知识范畴了。他:对于网格划分,有限元,团队引入了这块背景的人,几何建模打算后面让你帮忙找建模经验丰富的人过来作为产品经理来提出精细化建模的开发需求,OCC开发这块国内基本上没有这块的参考资料,很多资料要查英文资料,我是边做边学习的,这个过程中,我也积累了一些经验了,后面我还打算写一本这块的开发书籍,已经写了一百多页了。他已经是一个程序高手了,为了做出没有做过的东西,还在不停的学习新东西。对于一个资深程序员来说,英文的学习资料,以及边做边学,是他不断进步的方式。
会议开完,回去的路上,他给我讲了他的规划,就是先把这个项目做了,后续在这个平台基础上,承接更多的项目。然后我给他说:商业模式上,可以采取两条思路,一个是做定制化开发,一个是为其他公司提供底层平台。这两个商业思路,是数字化企业ToB模式中常见的两种操作。他听后点了点头,笑了笑给我说,你猜这个项目多少钱?然后我看了他的表情,我就知道肯定不低,猜了一个500万,他说400万。可以这样理解,一个五人团队,两年时间,自研了一个国产工业软件,创造了400万的价值。当然,通过这个项目,他们打磨出了自己底层建模、网格划分、有限元板块,后续其他项目,就可以在这个基础上很快的开发起来。
看着他们真正的从底层代码一行一行的研发,想到了现在国内一些大公司,套壳做了一些自研工业软件,然后连界面都没怎么改(亲,用点心吧!!!),还获得了一些业内的投资和大奖,对于此我只能说这个世界很多时候就是一个草台班子。那些有能力,敢于挑战自我的人,终究会找到合适自己的道路,就像这位朋友一样,向你们这群优秀的人致敬!
2024.11.18 骑士于夜晚写于家中