粗粒度的聊聊我的规划

开胃小菜

面试的时候候选人常常会被问到,"为何要从事前端这个职业?",特别是你的履历中以前是作别的岗位甚至是别的行业,而后又转到前端岗位的时候,就更会勾起面试官的好奇,我被问到过这样的问题,也问过别人这样的问题。大部分的回答能够总结为:"兴趣",也有少部分同窗会有以下的答案:"前端比其余岗位好入门"、"前端如今很火,赚钱不少"等等...css

固然若是在其余条件基本一致,HC 又有限的状况下,我会优先选择感兴趣的同窗,由于这部分同窗会拥有更持续的动力继续专研下去 ...html

可是面试官为何会问这样的问题呢?前端

那这就要看你是在第几面被问到这个问题的,头一面可能大部分状况下是知足本身的好奇心,越日后,大部分状况下,面试官可能想听到的就是你对本身职业的规划或者是理解了 ~~ 这时候的答案可能就会丰富多彩了 ~~ 固然大部分状况下可能依旧是 "感兴趣" 😝😝😝 ~~java

聊聊我本身(闲扯)

实习时作现场实施(偏技术运维),转正后 java 开发,再以后作前端至今,正由于这样的"体质",让我无形中具有了"百分百被问为何转前端"这样的被动技能。react

转前端至今将近四年的时间,对前端的认识从最开始的懵懵懂懂到如今发生了很大的变化,对本身的职业规划也愈来愈清晰(迎娶白富美,走向人生巅峰!)。git

在大学期间就对有视觉冲击的东西更感兴趣,以后就是以为写 html + css + js 实现的东西比写 shell, 写 sql, 写 java 更能给本身带来成就感,而后就是在作了 1.5 年的 java 后带着自学不健全的前端知识体系义无反顾的转了前端岗,也是从那时起真正领略到了前端的魅力,接触到了正规的前端工程化,今后没法自拔(尽管与大神相比,本身成长缓慢) ~~github

前两年的职业规划就是没规划(无心识),就是各类健全前端的知识体系,固然这个事情目前依旧在进行,而后就是痴迷工程化,开始以为很神秘,遥不可及,当知识积累到必定状况下,写了一些 "玩具" 性质的工具后,慢慢的也有了一些本身的认知,再后来本身设计了一套前端工程化的方案 pandolajs,旨在为前端同窗提供一种沉浸式的开发体验,这也是我目前以及将来业余时间会一直去维护与实践本身理论的东西。面试

最开始 pandolajs 是想围绕 react 去打造工程化的,可是不少东西都是在公司项目中实践完后,但因为仅是本身一我的利用业余时间维护,其实主要是本身懒,因此从实际项目中抽象出来进行开源,react 工程化的进度就比较慢。算法

后来公司开始搞微信小程序,为了能提供一套高效的小程序开发工做流,因此基于 pandolajs 整理实现了小程序脚手架 pandora-boilerplate-wechat, 感兴趣的能够看看个人另一篇文章 一款小而美的小程序脚手架,让你更流畅的开发小程序 因为在公司实践的时间比较长,因此目前是使用起来也比较流畅,也是目前我以为比较好的一个做品。sql

pandolajs 的实践中让我对工程化有了更深的认知(后续整理),也让我对本身的职业发展有了更清晰的规划,固然也发现了 pandolajs 最初设计中的诸多不足,因此目前这套方案中全部的 packages 都处于 0.x, 最近在参考了其余开源方案后,正在进行 1.0 方案的设计,彻底重构以前的架构(严格来讲,0.x 没啥架构),让 pandolajs 更具扩展性,把以前没有作完全的事情作好,固然也会对 0.x 中的脚手架提供方便的兼容方案。

个人规划

跑远了(广告预热),回来继续聊规划,在实践中,让我对本身的职业规划更加清晰。

我一直信奉这样的信条:“技术是为业务服务的”, 脱离业务的技术是没有前途的,因此 pandolajs 的初衷就是 提升开发效率,以更低的成本,更快的节奏支持业务,一开始我只是想作一条"流水线" 可是如今我想围绕这条 "流水线" 打造一个生态,由于仅仅是一条 "流水线" 根本没法完全的低成本高效率的支撑业务,可是这两个事情有彻底不是一个量级的,"流水线" 可能经验丰富的的工程师就能完成,可是一个生态,就须要有一颗 "强大" 的心脏(内核),至少要有搞扩展性,即完善的二次开发的 API, 就目前市场上的一些方案,就是提供插件能力,或者中间件能力,要实现合理的设计,就不只仅是丰富的经验了,更须要有更专业的设计能力,更完善的知识体系。

要达到上述的 Level, 我要作的第一步就是创建更完善,更底层的知识体系,因此将来两年的规划就是:

  1. 深刻学习编译原理
  2. 增强数据结构与算法能力

说白了不在拘泥于上层 DSL 的学习,尽量多的去修炼本身的"内功"。新建 daily 这个 github 仓库中更新个人学习计划,周日进行本周的总结与下周的计划。

不论是工程化仍是生态圈,目的都是 低成本,快节奏。低成本就是要为业务的运营提供自给自足的平台,换句话说就是让本身失业,快节奏就是丰富平台中的素材(组件,功能模块,api 等等)。

要实现上述目标,仅仅靠使用已有的上层应用(高级语言,框架 ...)是不够的,咱们必须具有发明上层应用的能力,编译原理提供了可能性和灵感,深刻学习能让其成为可能。

复杂底层的实现,没有深厚的数据结构与算法功底没法实现高效可用的系统,这个自不用多说。

要想实现上述的目标,并参与其建设,上述能力不得不成为本身信手拈来的技能 ~~

相关文章
相关标签/搜索