我现在是一名独立开发者,1979年,今年已经42了。 自2001年参加工作以来一直从事软件开发行业,到今年已有20年了。软件开发中的各种职位:程序员、项目组长、项目经理、部门经理、技术总监、公司副总,甚至甲方CIO都任职过;软件开发中的各个工种:开发、测试、实施顾问、销售也工作过。 2013年突然意识到我的打工之路已经走到了尽头,所以下来自己写软件产品,到现在已经写了6-7个软件产品,收入比我打工的时候赚的多些,但是跟国内大厂动辄百万年薪还是没法比。不过咱也有自知之明:
以我目前的年龄和对打工的态度,如果再去投简历就是石沉大海、自取其辱,所以我基本上也死了那份心了。当然除了上面的几点劣势,我这种也有自己的优势:
有人看到这里,会问?不是说C#和Java吗,说这么多的你自己干嘛呢? 我说这些,是给后面的内容做铺垫。因为国内很多码农,过了40岁都会面临像我现在一样的问题:
如果到了40岁再来考虑这些,可能就有点晚了。我之前也回答过类似的问题,有网友看了说很羡慕,但是你们可曾想过:我是在35岁的时候意识到了这个问题,经过2年时间的摸索与积累选择了正确的道路,基本达到了收支平衡;又经过了2年时间的完善改进让整个系统实现了半自动化,我可以从繁重的客户咨询、授权等无脑操作中解脱出来,有时间有精力优化系统;再经过2年的时间优化与改造,让它变得更加容易维护;后面可能还需要几年的时间,才能让我的系统变得更省力,更具拓展性。所以方向性的事情都需要提前谋划与布局,你现在的决定会影响你5年后甚至10年后的生活。 所以我觉得任何一个过了30岁的码农,都应该提前布局,利用空暇时间自己单干,给自己的未来多创造一份可能。 自己单干有两种路径:一是做项目,二是做产品。
我个人建议是先从小项目做起,看看有没有把项目产品化的可能,逐渐积累自己的经验,最终还是要做产品。 然而如果你想做自己一个软件产品,你会发现,Java的生态优势立刻就没了。 之前我有发表过一篇文章,单纯就说C#与Java历史和当下的环境和后面一个粗浅的判断,说得比较浅,引起了很多Java粉们的吐槽,无外乎就说Java的生态如何的好,是C#无法比拟的。在当下,确实Java比较容易找工作,因为企业应用用Java比较多。比如航天信息的税控系统就是Java开发的,说实话,太烂了,如果不是必须用,立马会卸了它。 但是如果你跳出企业应用,来到个人市场,你会发现个人用Java几乎很难生存。 当你想做一款付费软件产品时你会发现,真正能让用户产生付费意愿的只有两种:一是生产力工具,二是游戏。其他像我们常用的那些社交、购物、聊天、拍照等等的,都不是个人开发者能够玩得起的。 所谓生产力工具,就是提高工作效率,这是PC端的天下,PC端的大屏和键鼠是手机端那种戳来戳去的方式无可比拟的。而PC端windows系统占据了90%的市场份额,C#开发的Winform程序又好又快,Java在windows下运行动辄就占几百M的内存,真的就是垃圾。 游戏毫无疑问现在是Unity的天下,unity用的也是c#。 剩下的一点空间可以留给Java粉们来发挥,我个人是不大看好。 你可以继续替Java站岗,在Java生态下吹嘘它有多么的伟大,但一旦脱离了那个环境,你会发现自己是那么的弱小,原来你认为的强大都是别人的,它从来都不属于你。 当你像我一样大龄,需要独自解决个人生活问题的时候,C#是可以给你续命的。比如说我现在想做一个自动选股软件,采集数据、技术分析、图形显示、模拟盈亏等等,考虑到性能和开发效率,肯定首选C#而不是Java。个人工具C#实用,这就是它的优势。 如果你想成为一名独立开发者,开发自己的软件产品,关注我可以了解到更多的干货。 |
|