今天,现在我可以自称全栈开发人员。刚加入项目时,我专注于iOS开发,后来也开始做Android开发。其他团队成员则负责网页和后端开发。
说实话,我一开始对现有的后端就不太满意。API存在一些问题:
- 命名方式不一致
例如,使用这样的格式 user: { 用户哈希, 用户名, 等等 }
而不是 user: { hash, name, 等等 }
。
- HTTP 方法的限制
只使用了GET
和POST
,没有支持PUT
、PATCH
或DELETE
。因此产生的端点有POST /usercreate
、POST /userupdate
和POST /userdelete
。
- 设计拙劣的模型,
不必要的选项太多了,media: { id: null, url: null, thumbnail: null }
可以简化成 media: null
。
- 响应慢的 API
在创建或更新端点时未返回更新后的对象,更新后需要再次调用 GET /model
来获取更新后的对象。
除此之外,系统还包括了众多奇怪的微服务,多个基础URL,一个奇怪的Neptune数据库,以及完成任何任务的流程过于复杂。扩展系统和增加新功能都很困难。在我看来,对于这样一个相对简单的项目而言,2000美元的月均AWS成本是一笔不小的开销。
时间一晃,我继续以自由职业者的身份帮手现有的移动应用和网站,偶尔在后端开发的争论中感到困惑。
过了一会,我开始问自己,如果我是后端开发者,我会怎样做不同的事情。最终,我决定尝试完全从头开始建立一个全新的后端项目,完全不兼容现有的项目。只是顺从我的直觉。我自担风险,无偿去做这件事,仅仅是为了探索我将如何入手。
为了测试后端功能,我也开始着手开发网页前端。虽然测试后端API是我主要的目的,但这个网页应用不知不觉地变成了一个功能齐全的网站。差不多四个月后,在我看来,后端和前端都相当好用了。不过,因为我还有其他项目和责任要处理,我就把它们暂时搁置了。
又过了差不多4个月,我检查了AWS的使用情况,发现公司每个月还在花大约2000美元。虽然那不是我的钱,但我总觉得这样在浪费资源。我提议使用我的方案,但提议被拒绝了。客户可能对它的稳定性有所担忧,而且显然,它不兼容现有的数据、移动客户端等。
有时候我也会比较固执。我不愿意接受自己花费的时间在一个不会被使用的东西上,所以我没有放弃我的后端,而是开发了新的移动应用来搭配它。
到了这个时候,我需要发布所有的东西。我于是开始做以下事情:
- 注册了域名——cloomba.com
- 部署了后端和网站
- 提交了iOS和Android应用并获得了批准
我把它当成一项成就,并邀请朋友们和家人来试试这些。
该项目是一个社交网络和活动管理平台。用户可以创建社区或活动,邀请他人加入,并可以发布帖子,评论,点赞,反应或聊天等。社区和活动的管理员或所有者可以为成员提供不同类型的信息,查看分析,还有许多其他功能的想法。
不言而喻,整个项目都是作为一个白标产品来构建的。几乎所有部分都可以根据需求进行配置和重新品牌化。我希望有人能重用我的努力。
有一天,我又找机会和CEO见面了,给公司的一个客户演示我们的产品。这一次,我收到了更多的积极反馈。大家都对项目的灵活性、简洁性以及之前所缺乏的额外功能印象深刻。他们甚至叫我“天才” 😅。虽然他们对稳定性有些担忧,他们还是要求在我的解决方案上署他们的名,并迁移他们的社区、用户和内容,内容。
幸运的是,一切都进行得很顺利。平台上也已经上线了新的活动,我收到了真实用户的反馈,还解决了几个实际问题;一切顺利,真是太好了;)
然后,我和CEO决定可以停用那些未使用的AWS服务,我就是这么做的。我停用了所有未使用的AWS服务,除了S3存储桶。
从12月4日开始,我陆续关闭了一些服务,因此,月底的账单里可能还会有几笔费用需要支付。
虽然从最顶端降到零,但整个过程是积极的。
我相信每个人都很高兴:我的客户获得了一个价格更实惠的平台,从而节省了资金,他们的客户则得到了一个更易于使用且功能更强大的解决方案,而我则获得了一些宝贵的经验和知识,以及一个可扩展且可重复利用的产品。
你可能想知道我部署项目的地方以及我每个月需要支付多少。当然,费用仍然是正的,但目前大约是每月20美元。我用Railway,可以托管后端、前端、数据库、定时任务、内容管理系统等,所有都在一个地方搞定。
不要忘了访问cloomba.com网站,下载App,并给我你的反馈。你可以在Cloomba上搞定所有这些事,无需其他东西。 :) 如果你想用它来发展你的业务,或者搭建你自己的社交网络或活动管理平台,你也可以这么干!
共同学习,写下你的评论
评论加载中...
作者其他优质文章