La angustia del desarrollo tecnológico de una pequeña empresa

fondo

Para resumir, me uní a una pequeña empresa de nueva creación en junio de 2022. El jefe no sabe mucho sobre tecnología o administración. Confiando en su entusiasmo, conocimiento de la industria del transporte físico y ciega confianza en sí mismo, comenzó precipitadamente su negocio. Sin embargo, fue difícil operar en la etapa posterior y finalmente se separó.

No me di cuenta en ese momento y me uní precipitadamente. La empresa detrás de esto estaba luchando y ni siquiera pagó el salario de los últimos meses.

En ese momento, la solicitud del jefe era hacer todo lo posible para reducir los costos de mano de obra y desarrollar la aplicación (Android+IOS) lo antes posible. El jefe necesitaba comenzar a operar lo antes posible.

selección de tecnología inicial

En ese momento, agregué un desarrollo front-end puro recién graduado y una interfaz de usuario previamente reclutada, sin siquiera personal y pruebas.

Combinando las necesidades de la empresa con su propia experiencia técnica (principalmente experiencia en front-end y nodejs), opte por utilizar las siguientes soluciones:

  1. uni-appEl desarrollo realizado con su uso Appes compatible con múltiples terminales, pudiendo reservarse también para el futuro desarrollo de pequeños programas.
  2. Use egg.js+ MySQLpara desarrollar el backend, la velocidad de desarrollo será más rápida, la industria es relativamente pequeña y es poco probable que encuentre algunos problemas importantes de rendimiento, es suficiente por el momento y será conveniente hacer la transición más adelante midway.js;
  3. El uso antd-vuede los antecedentes de desarrollo y operación considera principalmente uni-appla unificación con la pila de tecnología y ahorra costos de conversión;

Es decir, elegí usar egg.js+++ en la etapa inicial para desarrollar dos aplicaciones y un fondo de operación para resolver rápidamente el problema MySQLde 0 a 1.uni-appantd-vue

Sobre la elección de soluciones tecnológicas de desarrollo de aplicaciones

Hay muchas soluciones de desarrollo de aplicaciones, como pure native, flutter, uniapp, react-native/taro, etc. Aquí, elegiremos según la situación.

  1. Las soluciones de desarrollo nativo puro de IOS y Android requieren nuevos empleados, desarrollo simultáneo en ambos extremos y pruebas separadas en ambos extremos. Este costo de capital y tiempo es inaceptable para el jefe;
  2. Flutter, esto es aprender desde cero o reclutar personas, en comparación con la solución nativa pura, es mejor, pero no es la mejor opción;
  3. react-native/taro与uni-app是比较类似的选择,不过考虑到熟练程度、难易程度以及开发效率,最终还是选择了uni-app。

为什么选择egg.js做后端

很多时候方案的选择并不能只从技术方面考虑,当是只能选择成本最低的,当时的情况是egg.js完全能满足。

  1. 使用一些成熟的后端开发方案,如Java、、php、go之类的应该是比较好的技术方案,但对于老板来说不是好的经济方案;
  2. egg.js开发比较简单、快捷,个人也比较熟悉,对于新成员的学习成本也很低,对于JS有一定水平的也能很快掌握egg.js后端的开发

中间的各种折腾

前期开发还算顺利,在规定的时间内,完成了开发、测试、上线。但是,老板并没有如前面说的,很快运营,很快就盈利,运营的开展非常缓慢。中间还经历了各种折腾的事情。

  1. 老板运营遇到困难,就到处找一些专家(基本跟我们这事情没半毛钱关系的专家),不断的提一些业务和ui上的意见,不断的修改;
  2. 期间新来的产品还要全部推翻原有设计,重新开发;
  3. 还有个兼职的领导非要说要招聘原生开发和Java开发重新进行开发,问为什么,也说不出什么所以然,也是道听途说。

反正就是不断提出要修改产品、设计、和代码。中间经过不断的讨论,摆出自己的意见,好在最终技术方案没修改,前期的工作成果还在。后边加了一些新的需求:系统升级1.1、ui升级2.0、开发小程序版本、开发新的配套系统(小程序版本)以及开发相关的后台、添加即时通信服务、以及各种小的功能开发与升级;

中间老板要加快进度了就让招人,然后又无缘无故的要开人,就让人很无奈。最大的运营问题,始终没什么进展,明显的问题并不在产品这块,但是在这里不断的折腾这群开发,也真是难受。

明明你已经很努力的协调各种事情、站在公司的角度考虑、努力写代码,却仍然无济于事。

后期技术方案的调整

  1. 后期调整了App的打包方案;
  2. 在新的配套系统中,使用midway.js来开发新的业务,这都是基于前面的egg.js的团队掌握程度,为了后续的开发规范,做此升级;
  3. 内网管理公用npm包,开发业务组件库;
  4. 规范代码、规范开发流程;

人员招聘,团队的管理

人员招聘

如下是对于当时的人员招聘的一些感受:

  1. 小公司的人员招聘是相对比较难的,特别是还给不了多少钱的;
  2. 好在我们选择的技术方案,只要对于JS掌握的比较好就可以了,前后端都要开发一点,也方便人员工作调整,避免开发资源的浪费。

团队管理

对于小团队的管理的一些个人理解:

  1. 小公司刚起步,就应该实事求是,以业务为导向;
  2. 小公司最好采取全栈的开发方式,避免任务的不协调,造成开发资源的浪费;
  3. 设置推荐的代码规范,参照大家日常的代码习惯来制定,目标就是让大家的代码相对规范;
  4. 要求按照规范的流程设计与开发、避免一些流程的问题造成管理的混乱和公司的损失;
    1. 如按照常规的业务开发流程,产品评估 => 任务分配 => 技术评估 => 开发 => 测试 => cr => 上线 => 线上问题跟踪处理;
  5. 行之有效可量化的考核规范,如开发任务的截止日期完成、核心流程开发文档的书写、是否有线上bug、严谨手动修改数据库等;
  6. 鼓励分享,相互学习,一段工作经历总要有所提升,有所收获才是有意义的;
  7. 及时沟通反馈、团队成员的个人想法、掌握开发进度、工作难点等;

最后总结及选择创业公司避坑建议!important

  1. 选择创业公司,一定要确认老板是一个靠谱的人,别是一个总是画饼的油腻老司机,或者一个优柔寡断,没有主见的人,这样的情况下,大概率事情是干不成的;
    1. 老板靠谱,即使当前的项目搞不成,也可能未来在别的地方做出一番事情;
  2. 初了上边这个,最核心的就是,怎么样赚钱,现在这种融资环境,如果自己不能赚钱,大概率是活不下去的@自己;
  3. 抓住核心矛盾,解决主要问题,业务永远是最重要的。至于说选择的开发技术、代码规范等等这些都可以往后放;
  4. 对上要及时反馈自己的工作进度,保持好沟通,老板总是站在更高一层考虑问题,肯定会有一些不一样的想法,别总自以为什么什么的;
  5. 每段经历最好都能有所收获,人生的每一步都有意义。

以上只是个人见解,请指教,个人blog

Supongo que te gusta

Origin juejin.im/post/7257085326471512119
Recomendado
Clasificación