如果单从兴趣来看,其实我对Linux内核,Android中间件的兴趣要高于WEB,何况还有这么多年的经验积累,何必从头探索一个新的技术方向呢?
    这里面原因是很多的,最核心的大概是以下4个点:
    1、当我看到Linux引入DTS解决板级配置硬编码,看到Android的Makefile写得如此灵活,看到git在管理大型工程上的优势 ,看到Linux的音频驱动框架写得如此优雅,看到Cortex创新性的硬件架构,甚至于看到我自己花了几个月在音频通讯算法取得一点小成就,都会醉心不已。我总是羡慕那些引入良好设计的天才们,衷心希望能一天天向他们靠近。
    可是事与愿违,虽然我越来越熟悉如何做出符合公司要求的产品,对于产品的理解也越来越好,但是技术上非但没有进步,反而一直在退步。大量的维护工作和重复开发耗尽了我几乎全部精力,如果你在这个行业,那么应该更能体会到,操作系统这一层及以下的工作,由于会导致性能问题没法像应用层那样直观地引用比较先进的软件设计模式,代码没写好更容易导致重复开发和后期的大量维护。
    实际上我认为我们的软件开发模式仍然处在远古时代(难以想像我在5年前已经开始用git管理我的所有代码,而直到离职时却还需要在工作中用vss配合别人工作),有一天我想通了这个问题:这其实是由公司的业务决定的,尽管是IT公司,但是由于产品技术复杂度太低,解决这些业务问题对能力要求实在太低,以致于对技术提升并没有多少帮助,也很难产生良好的技术氛围。
    在我毕业的时候,我希望可以靠兴趣工作顺便赚钱,实际上我也这么做了,而在这两年我却越来越焦虑,我发现自己正一步步变成为了赚钱而工作。那么换一家公司吧?找一家让我可以安心研究内核和拿高薪的技术型公司,在福州这地方其概率并不比当一个自由职业者高多少,可控性更低,于是就先尽量做自由职业者了;
    2、当一个自由职业者,就需要能够独立提供完整的服务,如果其他人不配合或配合不给力我就干不成事那我当不成自由职业者,只有做应用是最满足这个条件的。
    与之相比,嵌入式开发的要害恰恰在于离市场太远,就算有技术,没有产线、硬件、结构、应用的一系列配合,很难做成一件事,我唯一想到能独立完成的就是找一家培训机构,是把自己的嵌入式开发技术教给别人作为起点,而正如上篇所提到的,正好有WEB项目进来,就走上了WEB路线。
    3、而选择WEB应用而不是手机应用,是我对WEB开发本来就有兴趣,用它做过几个小网站;第二方面我十分厌倦不同平台要用不同的语言不同的开发包的模式,重复学习成本太高。PC跨平台要Qt,Gtk,而Android要Java,而iOS要ObjectC,时间一定会被语言、库、框架的熟悉给耗尽;第三方面是这几年WEB开发,特别是WEB前端的发展一年比一年猛,这主要得益于移动互联网的迅猛发展(2016年github stars数最多项目几乎清一色是WEB相关)。感兴趣的东西正在风口上,此时不进,更待何时?
    4、我认为嵌入式开发在HARD模式,而WEB开发则在Easy模式,至多Medium模式,从难到易,为什么不尝试下呢?
    于是,在后面几个月里,我走上了一条全新的技术路线——成了WEB开发的全栈工程师。

IT自由职业者的第一个月(下)——为什么放弃5年嵌入式驱动开发转到WEB开发?的更多相关文章

  1. IT自由职业者的第一个月(上)——何去何从

         2016年8月11号,我终于走完所有流程,拿到了离职证明,5年的嵌入式驱动开发工程师的职业生涯就此结束.走离职流程期间,陆续有同事和朋友问我,离职后去哪儿,我都是告诉他们:“还没想好,离了再 ...

  2. 机器学习英雄访谈录之 DL 自由职业者:Tuatini Godard

    目录 机器学习英雄访谈录之 DL 自由职业者:Tuatini Godard 正文 对我的启发 机器学习英雄访谈录之 DL 自由职业者:Tuatini Godard Sanyam Bhutani 是 M ...

  3. Matrix67|自由职业者,数学爱好者

    Matrix67|自由职业者,数学爱好者 介绍一下你自己和所做的工作. 我叫顾森,网名 Matrix67,长住北京的重庆人,目前没有固定的职业.一会儿当当码农,一会儿做做编辑,一会儿教教数学,一会儿写 ...

  4. Denny Zhang:一辈子做一个自由职业者

    程序猿訪谈录供稿 Denny是一个旅居美国的自由职业者,这是一份让人羡慕的职业,选择这个职业意味着他已经实现某种程度上的经济自由,能够最大限度的做自己喜欢的事情,对他来说,选择自由职业作为自己终生的事 ...

  5. 多测师讲解第一个月 _综合面试题_高级讲师肖sir

    第一个月综合面试题 1.  冒烟测试是什么意思?  对主要的用例测试 2.你们公司的项目流程是什么? 3.你们公司的bug分几个级别?  4个 4.你对外键是怎么理解的? 你会使用外键吗?给一个表添加 ...

  6. (linux shell)第一章--小试牛刀(下)

    文章来源: (linux shell)第一章--小试牛刀(下) 1.6 数组和关联数组 1.6.1 预备知识 Bash同一时候支持普通数组和关联数组.普通数组仅仅能使用整数作为数组索引,而关联数组能够 ...

  7. python基础练习题(题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少)

    day13 --------------------------------------------------------------- 实例021:猴子偷桃 题目 猴子吃桃问题:猴子第一天摘下若干 ...

  8. 调查显示数据分析已取代Web开发成为第一用例

    一项关于Python的开发者调查显示,编程语言现在主要用于数据分析,取代了之前的第一个用例Web开发. 去年秋天,由Python软件基金会和开发人员工具供应商JetBrains进行,2018 Pyth ...

  9. CentOS 6.6下 BCM4312 802.11b/g无线网卡驱动安装

    1.目前www.broadcom.com网站上最新版本为hybrid-v35,但此版本与2.6.32不匹配,无法识别验证密码,搜索网上说是要求升级内核,后根据http://www.dadclab.co ...

随机推荐

  1. django静态文件路径配置

    在settings.py中加入 STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static') ] 即可在html中引用该目录下的静态文件 <!DOCT ...

  2. 原生态js展开收缩

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. [Maven实战-许晓斌]-[第二章]-2.2基于UNIX系统安装maven

    >> >> >>3  

  4. 各大SRC中的CSRF技巧

    本文作者:i春秋签约作家——Max. 一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/ses ...

  5. nginx负载均衡配合keepalived服务案例实战

    本实验用4台 centos6 虚拟机,2台做负载均衡,2台做web服务器,都先装上nginx lb01:192.168.0.235  --主负载均衡器 lb02:192.168.0.236  --备负 ...

  6. P2057 [SHOI2007]善意的投票 最小割

    $ \color{#0066ff}{ 题目描述 }$ 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉.对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神.虽然每个人都有自己的主见,但是为了照 ...

  7. elasticsearch-sql插件

    elasticsearch DSL语法有些时候比较难懂换成SQL好处理一些,网上找到一个插件 https://github.com/NLPchina/elasticsearch-sql 安装elast ...

  8. App功能测试的注意点

    好几个月没有写博客记录学习心得了,这次回老家深夜闲来无事写一篇记录下这段时间的面试心得,这次面试过程很多面试官都问APP的有关测试,下面我就自己的认识和工作中的经验来谈谈自己对APP测试的认识: 1. ...

  9. 51nod1238. 最小公倍数之和 V3(数论)

    题目链接 https://www.51nod.com/Challenge/Problem.html#!#problemId=1238 题解 本来想做个杜教筛板子题结果用另一种方法过了...... 所谓 ...

  10. LOJ565. 「LibreOJ Round #10」mathematican 的二进制(NTT)

    题目链接 https://loj.ac/problem/565 题解 首先,若进行所有操作之后成功执行的操作数为 \(m\),最终得到的数为 \(w\),那么发生改变的二进制位的数量之和(即代价之和) ...