初级程序员
仅能完成简单模块和项目的开发工作,难以胜任复杂模块的开发。通常是入行不久, 1 年及以下工作经验的同学。
能力要求
-
熟悉前端基础知识如 HTML、JS、CSS 。
-
能够使用一门 MVVM 框架进行简单的业务开发。
-
遇到复杂的组件和模块,会找现有的轮子使用。
-
会使用百度、google 等检索工具搜索问题。
中级程序员(阿里 p5)
在必要的辅导或标准流程支持下,能独立负责一个子模块或者一个项目的具体任务,对及时性和准确性负责。通常是 2-3 年工作经验的同学。
能力要求
-
除了前端基础知识外,熟悉计算机、网络等专业基础知识。
-
熟练掌握工作中使用的技术栈开发业务。(除了 MVVM 框架外,还能了解 webpack 的配置)。
-
能了解一个需求从开发-上线整个生命周期,并对各个环节负责。
-
具备基本的逻辑分析、问题分解、归纳总结等能力。
-
了解基本的数据结构和算法,写代码较熟练。
-
知道从靠谱的渠道去查找问题,在找不到合适轮子的时候,会造一些简单的轮子辅助业务开发。
程序员的进化之路
初级 -> 中级
通常在初级这个阶段,是进步空间最大的阶段,这个阶段是不存在天花板的。
编码
编码是初级阶段最需要经常做的事情,古话说孰能生巧,写代码也是同样的道理。
-
写什么的样代码
-
在公司要多做业务,尝试不同的业务,目标是让自己先成为一个熟练工。下班后也可以折腾点小项目做,可以选择自己感兴趣的内容,尝试自己实现一遍。
-
如何写代码
-
学会模仿,参考大牛的编码风格,照葫芦画瓢。如果公司有代码规范,跟随着公司的代码规范走,如果没有,参考业界规范,并用工具(如 eslint)约束自己。遇到一些不会写的,哪怕找到可以参考的代码,跟着抄一遍也行。
工作
大部分时间都在工作,那么如何合理的利用好 8 小时工作时间呢。
-
熟悉业务 不要仅仅埋头写代码,也需要对业务了解,认真参与需求评审环节,明确自己所做的任务。
-
熟悉工作流程
-
要熟悉从需求-开发-联调-测试-上线的每个工作环节,认真按照规范来执行,对上线要有敬畏心。
-
提升效率
-
工作的时候,尽量不要被打断,可以安排一个免打扰时段,比如下午的 2点-4点,只编码而不去处理其它事情。减少在群里 灌水和斗图的时间。
-
加班
-
可以接受合理的加班(比如为了赶某一个需求加班一阵子),不接受没有任何补偿和调休的日常加班(996),因为日常 加班会压缩你学习和生活的时间。